2 votos

Propuesta de código de Antoine Savine y swaptions

Estoy leyendo el libro de Antoine Savine "Modern Computational Finance: AAD and Parallel Simulation" y explorando su propuesta de código al mismo tiempo.

Básicamente para él los productos (él no habla de payoffs porque quiere mantenerlo simple) tienen líneas de definición y líneas de tiempo : él se encuentra exclusivamente en un entorno de fijación de precios con Monte Carlo y la línea de tiempo de un producto indica los momentos en los que las variables de mercado necesarias para evaluar el producto y simuladas en el modelo de fijación de precios deben ser simuladas, y la línea de definición indica lo que se debe simular, aproximadamente.

Él menciona que su configuración podría ajustarse fácilmente para cubrir productos de tasas puras, como swaptions, pero no logro entenderlo y ver cómo hacerlo. Él tiene un modelo Black-Scholes de acciones y me gustaría usarlo, aunque sea estúpido, para difundir tasas de interés a corto plazo y fijar el precio de un swaption de esta manera, pero no veo cómo hacerlo.

Su arquitectura general está aquí: https://github.com/asavine/CompFinance/blob/master/mcBase.h

mientras que las implementaciones concretas están aquí:

https://github.com/asavine/CompFinance/blob/master/mcMdlBS.h (Modelo Black-Scholes)

https://github.com/asavine/CompFinance/blob/master/mcPrd.h (opción europea)

Cualquier ayuda será muy apreciada.

1voto

NSGod Puntos 1137

Basé partes de mi tesis de maestría en un motor de simulación inspirado en el presentado en el libro de Antoine. Si deseas utilizar la clase de European call y Black Scholes, básicamente estás considerando el intercambio subyacente del swaption como lo que él llama "forwards", que tiene una dinámica estocástica bajo el modelo de Black Scholes (en oposición a cualquiera de las tasas). Básicamente estás "forzando" tu enfoque en las Clases.

Alternativamente, podrías extender el código de varias maneras. Por ejemplo, usando una estructura similar a RateDef para tasas de intercambio (forward) y creando otro producto donde modifiques la función de pago para que sea la de un swaption.

En mi tesis, utilizamos este enfoque con el modelo Vasicek. Echa un vistazo al Código Python aquí para la simulación y trata también de navegar al modelo Vasicek y al producto Swaption que se importan en el script:

https://github.com/KennoCapital/CenterfoldCapital/blob/main/application/experiments/vasicek/unit_tests/vasicek_mc_european_swaption.

También debería tenerse en cuenta que cuando Antoine escribe "fácilmente ampliable" debes tener en cuenta que Antoine está entre algunos de los mejores quants del mundo.

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