2 votos

Bloomberg DLIB BLAN en Python

El título describe la pregunta. A continuación se ofrecen más detalles. Le agradecería que me informara de cómo trabaja la industria en este ámbito.

Soy un usuario intensivo de Bloomberg excel API, incluyendo WAPI y DTK (fórmula como bstructure y bprice). Recientemente estoy trabajando en backtesting que se basa en un strike solver. (OVME strike solver característica no está disponible a través de WAPI así que tengo que escribir un solver en python) Este proceso de recursión que tira de los precios de las opciones (a través de DTK) es más fácil de hacer en python que excel.

Teniendo esto en cuenta, ¿alguien ha utilizado DTK/DLIB BLAN en python antes? ¿Ofrece Bloomberg una API para DLIB BLAN? En caso afirmativo, ¿es a través del paquete Bloomberg BLPAPI (y tenemos que escribir un wrapper)?

Le agradecemos sus comentarios.

2voto

BC. Puntos 9229

Es una pregunta clásica de la F1. Es software propietario y BBG ofrece un servicio de ayuda dedicado.

DTK no está disponible de forma gratuita a través de BLPAPI. Conectar DLIB a una API requiere un servicio premium llamado Mars API (que funcionará a través de DAPI, pero también BPIPE y similares, dependiendo de tus necesidades). Le sugiero que se ponga en contacto con su representante de ventas y le pregunte acerca de esta característica si usted está dispuesto a pagar (este servicio es bastante caro, ya que es una solución empresarial).

Puede echar un vistazo a algunos fragmentos de código si busca DOCS MARS API en el terminal. DOCS 2097583 es para la API MARS en general (arquitectura, canales de distribución, ...)

La API MARS utiliza las mismas librerías que BLPAPI a la hora de configurar elementos y realizar peticiones, sólo que DLIB (BLAN) tiene MUCHOS más parámetros de manejo y anulaciones en comparación con la BLPAPI estándar. DOCS 2096689 es para la API MARS con DLIB específicamente.

Cuando dice que necesita un solucionador de huelgas, ¿para qué productos exactamente? Me resulta difícil creer que BLAN pueda ayudarle en este caso, ya que, por lo que yo sé, BLAN escrito a mano no tiene capacidad de resolución. Además, sacar precios de opciones con BLAN será sustancialmente más sencillo con DTK (ya es un envoltorio) porque no hay envoltorios disponibles para la API de Mars (no está ampliamente disponible como las solicitudes de escritorio BLAPI estándar que son "gratuitas" para todos los usuarios de BBG).

No estoy seguro sobre OVME pero la infraestructura debería ser similar a OVML. En el caso de OVML, se puede solicitar una anulación de la fecha de ejercicio y de vencimiento (creo que la posibilidad de utilizar esta opción y los posibles costes dependen de algunos criterios, pero F1 F1 o su representante de ventas también deberían poder ayudarle al respecto). A continuación, puede utilizar cualquier operación guardada, cambiar la fecha de vencimiento y el precio de ejercicio como desee, e iterar de esa manera hasta alcanzar el valor de opción deseado. Esto no sólo será más fácil de implementar, sino también sustancialmente más rápido y más fiable en comparación con DLIB que se basa en Monte Carlo. A continuación se muestra un ejemplo (tenga en cuenta que NO funcionará si no tiene el privilegio override concedido).

El campo para la fecha de caducidad se denomina OP002 - OPT_EXPIRE_DT.

enter image description here

Editar DLIB BLAN es esencialmente OCAML. Puede utilizar bucles while.

let sum = ref 0; 
let cnt = ref 1; 
while !cnt <= 10 do 
  let i = !cnt; 
  sum := !sum + i; 
  cnt := i + 1; 
done; 
!sum

Debería funcionar, por ejemplo.

BLPAPI tiene una documentación muy detallada sobre WAPI. Sin embargo, reitero que usted podría simplemente utilizar el override OV en lugar de DLIB. También funciona directamente con las envolturas BLAPI existentes en la web (es una simple fórmula BDP con anulaciones). Todo lo que necesita es un ticker ficticio (operación OV guardada) para cada subyacente y producto (call, digital, etc.). Después puedes sobreescribir fechas y strike para recuperar el valor correspondiente. Por ejemplo así.

=BDP("Ticker","OPT_THEOR_VALUE", "OPT_STRIKE_PX=3930.0800", "OPT_VALUATION_DT=20220520", "OPT_EXPIRE_DT=20220811")

donde Ticker se refiere a "OVME_ID Index" o "OVME_ID Equity". Puedes actualizarlo cuando se lo indiques a la API. Es mucho más rápido que una solución equivalente de BLAN (y casi seguro que también más precisa).

Finanhelp.com

FinanHelp es una comunidad para personas con conocimientos de economía y finanzas, o quiere aprender. Puedes hacer tus propias preguntas o resolver las de los demás.

Powered by:

X