La valuación de opciones usando un modelo determina el precio de instrumentos derivados dado determinados parámetros, el problema inverso trata de ajustar el modelo a los datos del mercado, siendo un problema más complicado y frecuentemente para modelos sofisticados del tipo mal planteado (ill-posed). Dicho proceso de ajuste, conocido como calibración del modelo, se puede implementar mediante el uso de técnicas de optimización dirigidas a identificar el conjunto de parámetros del modelo para el que sus precios son consistentes con los precios de mercado.
Este trabajo muestra los fundamentos teóricos y la descripción de la implementación de la calibración del modelo Heston de volatilidad estocástica utilizando un método de metaheurísticas conocido como evolución diferencial.
Calibración del Modelo Heston usando Evolución Diferencial
1. Calibración del Modelo Heston
Solución a un Problema de Optimización usando Evolución
Diferencial
Análisis Cuantitativo del Riesgo
Optimización
David Solís
2. Resumen
La valuación de opciones usando un modelo determina el precio de
instrumentos derivados dado determinados parámetros, el problema inverso
trata de ajustar el modelo a los datos del mercado, siendo un problema más
complicado y frecuentemente para modelos sofisticados del tipo mal planteado
(ill-posed). Dicho proceso de ajuste, conocido como calibración del modelo,
se puede implementar mediante el uso de técnicas de optimización dirigidas a
identificar el conjunto de parámetros del modelo para el que sus precios son
consistentes con los precios de mercado. Cuanto mejor sea la calibración que
se puede lograr, mayor será la validez predictiva del modelo y mayor será su
valor como una herramienta para la administración de riesgos y la optimización
de portafolios.
Este trabajo muestra los fundamentos teóricos y la descripción de la
implementación de la calibración del modelo Heston de volatilidad estocástica
utilizando un método de metaheurísticas conocido como evolución diferencial.
3. Contexto 1
Descripción del Problema 2
Formulación Matemática 3
Método de Solución 4
Resultados 5
Referencias 7
Conclusiones 6
4. 4
Problemas y Complejidad
‣ P: consiste de todos aquellos problemas que pueden
ser resueltos en una máquina determinista secuencial
en un período de tiempo polinómico en proporción a
los datos de entrada.
‣ Certificado: una propuesta de solución a un
problema.
‣ NP: consiste de todos aquellos problemas cuyos
certificados pueden ser verificados en tiempo
polinómico a partir de ser alimentadas con la
información apropiada, o en forma equivalente, cuyo
certificado puede ser hallado en tiempo polinómico
en una máquina no determinista.
‣ NP-completo: subconjunto de los problemas en NP
tal que todo problema en NP se puede reducir en
cada uno de los problemas de NP-completo.
‣ NP-complejo: conjunto de los problemas que
contiene los problemas H tales que todo problema L
en NP puede ser transformado polinomialmente en H.
5. 4
Problemas y Complejidad
‣ P: consiste de todos aquellos problemas que pueden
ser resueltos en una máquina determinista secuencial
en un período de tiempo polinómico en proporción a
los datos de entrada.
‣ Certificado: una propuesta de solución a un
problema.
‣ NP: consiste de todos aquellos problemas cuyos
certificados pueden ser verificados en tiempo
polinómico a partir de ser alimentadas con la
información apropiada, o en forma equivalente, cuyo
certificado puede ser hallado en tiempo polinómico
en una máquina no determinista.
‣ NP-completo: subconjunto de los problemas en NP
tal que todo problema en NP se puede reducir en
cada uno de los problemas de NP-completo.
‣ NP-complejo: conjunto de los problemas que
contiene los problemas H tales que todo problema L
en NP puede ser transformado polinomialmente en H.
NP-complejo
NP
NP-completo
P
Mayor información: http://www.claymath.org/millennium-problems/p-vs-np-problem
6. 4
Problemas y Complejidad
‣ P: consiste de todos aquellos problemas que pueden
ser resueltos en una máquina determinista secuencial
en un período de tiempo polinómico en proporción a
los datos de entrada.
‣ Certificado: una propuesta de solución a un
problema.
‣ NP: consiste de todos aquellos problemas cuyos
certificados pueden ser verificados en tiempo
polinómico a partir de ser alimentadas con la
información apropiada, o en forma equivalente, cuyo
certificado puede ser hallado en tiempo polinómico
en una máquina no determinista.
‣ NP-completo: subconjunto de los problemas en NP
tal que todo problema en NP se puede reducir en
cada uno de los problemas de NP-completo.
‣ NP-complejo: conjunto de los problemas que
contiene los problemas H tales que todo problema L
en NP puede ser transformado polinomialmente en H.
NP-complejo
NP
NP-completo
P
Mayor información: http://www.claymath.org/millennium-problems/p-vs-np-problem
Los problemas P son aquellos para los
que existe un algoritmo polinómico que
los resuelve.
Los NP son aquellos para los que existe
un algoritmo polinómico que verifica una
solución. Hay problemas NP que pueden
pasar a P si se encuentra un algoritmo
polinómico que los resuelva (P ⊆ NP).
Los de clase NP-completo son aquellos
de tipo NP que se considera que no
existe un algoritmo polinómico que los
resuelva aunque no se haya podido
demostrar.
Los NP-complejos son aquellos tan
difíciles como los NP-completos.
7. Problemas Bien y Mal Planteados
5
‣ En 1923 Jacques Hadamard definió
los criterios para los problemas bien
planteados (well-posed):
1. E l p r o b l e m a t i e n e s o l u c i ó n
(existencia).
2. La solución debe ser única (unicidad).
3. La solución debe ser estable a
pequeñas variaciones a los datos
(estabilidad).
‣ Un problema mal planteado (ill-
posed) es aquel que no cumple
alguno de estos principios.
‣ Por lo general, los problemas
inversos son mal planteados.
8. Problemas Bien y Mal Planteados
5
‣ En 1923 Jacques Hadamard definió
los criterios para los problemas bien
planteados (well-posed):
1. E l p r o b l e m a t i e n e s o l u c i ó n
(existencia).
2. La solución debe ser única (unicidad).
3. La solución debe ser estable a
pequeñas variaciones a los datos
(estabilidad).
‣ Un problema mal planteado (ill-
posed) es aquel que no cumple
alguno de estos principios.
‣ Por lo general, los problemas
inversos son mal planteados.
Conocer la huella que una determinada especie
de dragón es fácil, pero inferir las especies de
dragón asociadas a la huella (problema inverso)
es más difícil, y viola el tercer criterio.
Fuente: http://www.kjdaun.uwaterloo.ca/research/inverse.html
Ejemplo de: Bohren, C. F., & Huffman, D. R. (2008). Absorption and
scattering of light by small particles. John Wiley & Sons.
12. Modelo Heston
7
!
0.2%
0.4%
0.6%
0.8%
1.0%
1.2%
1.4%
1.6%
1.8%
0%
5%
10%
15%
20%
25%
30%
35%
40%
45%
50%
0.0 1.0 2.0 3.0 4.0 5.0 6.0
Precio
Varianza
Tiempo
Si la condición 2κθ > σ2 se mantiene,
e n t o n c e s l a t e n d e n c i a e s
suficientemente grande para el
proceso de la varianza para
garantizar valores positivos que no
llegan a cero. Esta condición se
conoce como la condición de Feller,
definida por:
• Si q ≥ 0, entonces v = 0 es
inalcanzable por el proceso de
varianza Vt
• Si q < 0, entonces v = 0 es
alcanzable por el proceso de
varianza Vt
Condición de Feller
28. Contexto 1
Descripción del Problema 2
Formulación Matemática 3
Método de Solución 4
Resultados 5
Referencias 7
Conclusiones 6
29. 13
Calibración
El proceso de calibración minimiza la distancia entre los precios del modelo y
los precios del mercado. Esta distancia puede ser vista como una medida de
error, entre las más comunes:
N es igual al número de precios de las opciones cotizadas.
x=(x1, …,xn)T denota el vector de los parametros del modelo.
36. 15
Estimación de Parámetros
Calibración Modelo Heston
Precios de Mercado
Problema inverso mal planteado
•No tiene solución o tiene múltiples soluciones
•La solución es muy sensible a las condiciones del
sistema
•Hay “ruido” en los precios de mercado
Modelo Heston
37. Contexto 1
Descripción del Problema 2
Formulación Matemática 3
Método de Solución 4
Resultados 5
Referencias 7
Conclusiones 6
39. 18
Comportamiento de la Función Objetivo
Funciónobjetivo
Funciónobjetivo
Volatilidad de la volatilidad
Volatilidad
de
la
volatilidad
Velocidad de reversión a la media
Velocidad de reversión a la media
σ y κ variables, el resto de los parámetros con valores fijos.
40. Contexto 1
Descripción del Problema 2
Formulación Matemática 3
Método de Solución 4
Resultados 5
Referencias 7
Conclusiones 6
41. 20
Taxonomia de Optimización - Una perspectiva
Fuente: http://www.neos-guide.org/content/optimization-taxonomy
Con énfasis en los subcampos de
optimización determinista.
42. 20
Taxonomia de Optimización - Una perspectiva
Fuente: http://www.neos-guide.org/content/optimization-taxonomy
Con énfasis en los subcampos de
optimización determinista.
43. 21
Taxonomia de Optimización - Otra perspectiva
Fuente: http://oraresearch.com/2015/03/geometry-and-beyond-optimization-taxonomy-and-methods
De acuerdo a la parte algorítmica de
solución de los métodos.
44. 21
Taxonomia de Optimización - Otra perspectiva
Fuente: http://oraresearch.com/2015/03/geometry-and-beyond-optimization-taxonomy-and-methods
De acuerdo a la parte algorítmica de
solución de los métodos.
45. 22
Metaheurísticas
‣ Algunos problemas de optimización son complejos y difíciles
de resolver
• No se pueden resolver de forma exacta en un tiempo razonable (NP y
NP-completos).
• La alternativa es el uso de métodos aproximados.
‣ Tipos de métodos aproximados
• Heurísticas: Una estrategia de solución por ensayo y error para producir
soluciones aceptables para un problema complejo en un tiempo
razonablemente práctico.
• Metaheurísticas: Meta significa “más allá”. Las tendencias recientes
tienden a nombrar todos los algoritmos estocásticos con búsqueda local
como metaheurística. La asignación al azar proporciona una buena
manera para moverse de búsqueda local a búsqueda global. Casi todos
los algoritmos metaheurísticos tienen la intención de ser adecuados para
optimización global.
48. 24
Evolución Diferencial
‣ Algoritmo de optimización estocástico basado en
poblaciones.
‣ Diseñado por Rainer Storn y Kenneth Price en 1996.
‣ Desarrollado para optimizar parámetros reales y funciones de
valores reales.
‣ La formulación general es:
49. 25
Evolución Diferencial - Justificación
‣ La optimización global es necesaria en diversos campos tales
como: ingeniería, estadística y finanzas.
‣ Sin embargo muchos problemas tienen funciones objetivo que
no son diferenciables, ni continuas, no lineales, con ruido,
multidimensional o tienen varios mínimos locales, varias
restricciones o estocasticidad.
‣ Estos problemas son difíciles o imposibles de resolver
analíticamente o incluso por algoritmos generales.
‣ No se pueden resolver de forma exacta en un tiempo
razonable.
‣ La Evolución Diferencial puede utilizarse para encontrar
soluciones aproximadas para estos problemas.
50. 26
Evolución Diferencial - Justificación
‣ La optimización global es necesaria en diversos campos tales
como: ingeniería, estadística y finanzas.
‣ Sin embargo muchos problemas tienen funciones objetivo que
no son diferenciables, ni continuas, no lineales, con ruido,
multidimensional o tienen varios mínimos locales, varias
restricciones o estocasticidad.
‣ Estos problemas son difíciles o imposibles de resolver
analíticamente o incluso por algoritmos generales.
‣ No se pueden resolver de forma exacta en un tiempo
razonable.
‣ La Evolución Diferencial puede utilizarse para encontrar
soluciones aproximadas para estos problemas.
53. 29
Evolución Diferencial - Componentes
‣ Representación de soluciones (individuos)
• Cromosomas para representar las características de cada solución:
fenotipo y genotipo.
• Fenotipo es el conjunto de características físicas y psíquicas de un
individuo. Es la decodificación del cromosoma, es decir, los valores
obtenidos al pasar de la representación por un conjunto de valores
para aplicarse a una función objetivo
• Genotipo es el código genético que contiene la información para que
se desarrolle el fenotipo. Es la codificación (transformación) de los
parámetros que representan a una solución del problema a resolverse.
‣ Población
• Se inicia con una población inicial de individuos (conjunto de
soluciones factibles) donde cada uno de ellos representa una posible
solución al problema (solución factible).
54. 30
Evolución Diferencial - Componentes
‣ Función de aptitud (función objetivo)
• Evalúa la calidad o capacidad de adaptación que puede tener un individuo para
resolver el problema en cuestión, distinguiendo los mejores y los peores individuos
de la población. Se aplica a nivel fenotipo.
‣ Parámetros de control
• Valores para los parámetros (medidas de ajuste) propios del método
(probabilidades de cruza y mutación, número de individuos, número máximo de
generaciones, etc.).
‣ Mecanismos de selección de padres. Basado en el valor de aptitud
de los individuos
• Selección aleatoria.
• Selección proporcional.
• Selección por torneo.
• Selección por jerarquías.
55. 31
Evolución Diferencial - Componentes
‣ Operadores de variación. Crear diversidad en la población
explorando nuevas zonas del espacio de búsqueda
• Cruza. Se aplica a mas de un padre para obtener uno o más hijos
mediante el intercambio de información.
• Mutación. Se aplica sobre un padre y se obtiene un hijo modificando
una pequeña parte al individuo padre.
‣ Mecanismos de reemplazo
• Selección generacional. Los hijos sustituyen a los padres.
• Selección determinística. Sólo los mejores sobreviven.
• Selección probabilística. Utiliza elementos aleatorios para permitir que
individuos menos aptos puedan sobrevivir para la siguiente generación.
• Selección de estado uniforme. Los hijos reemplazan a sus padres
siempre y cuando sean mejores que ellos.
56. Evolución Diferencial - Ejemplo
32
Inicialización
La población inicial se genera a través de un muestreo de
la función objetivo.
1
2
3
4
57. Evolución Diferencial - Ejemplo
33
Cruza
Se eligen aleatoriamente 3 individuos como padres. Con
los primeros dos se crea un vector perturbado con la
diferencia.
1
2
3
4
58. Evolución Diferencial - Ejemplo
34
Mutación
Se crea un hijo con los 3 padres elegidos en el paso
anterior. Este hijo es producto de la suma del padre
principal más el vector ponderado de la diferencia de los
otros dos.
1
2
3
4
59. Evolución Diferencial - Ejemplo
35
Selección
El nuevo padre reemplaza al individuo de la población
correspondiente en la iteración sólo si es mejor que él.
1
2
3
4
61. 37
Evolución Diferencial - Temas por resolver
‣ ¿Cómo asegurar que los 3 padres y el vector actual de la
iteración sean diferentes?
‣ ¿Qué sucede si un vector tiene varios parámetros?
‣ ¿Cómo se lleva a cabo la inicialización de los parámetros para
un problema con restricciones?
‣ ¿Cómo se lleva a cabo la cruza de estos parámetros para
generar el nuevo padre?
‣ ¿Se puede optimizar la selección de la nueva generación?
67. 40
Evolución Diferencial - Aspectos Prácticos
‣ np = 10 D
‣ Si la solución no converge
• Iniciar con F=0.5 y después incrementar F o NP
• F ∈ [0.4, 1] es un rango eficiente
‣ Para obtener una solución rápida: Cr=0.9 o Cr=1
‣ La condición de convergencia se establece por un número
máximo de iteraciones y/o un umbral de tolerancia en la
medida de error.
69. 41
Calibración Heston - Implementación
Tolerancia
Límites de
los
parámetros
Función de aptitud
seleccionada
70. 41
Calibración Heston - Implementación
Tolerancia
Límites de
los
parámetros
Función de aptitud
seleccionada
deopt es la implementación de Evolución Diferencial
de uno de los creadores del algoritmo.
Se encuentra en:
•http://www1.icsi.berkeley.edu/~storn/code.html
•http://extras.springer.com/2005/978-3-540-20950-8/
71. Contexto 1
Descripción del Problema 2
Formulación Matemática 3
Método de Solución 4
Resultados 5
Referencias 7
Conclusiones 6
72. 43
Escenario de Prueba
Se generaron 27 precios de opciones Call europeas para 9
precios de ejercicio y 3 tiempos de vencimiento:
con los siguientes parámetros:
73. 43
Escenario de Prueba
Se generaron 27 precios de opciones Call europeas para 9
precios de ejercicio y 3 tiempos de vencimiento:
con los siguientes parámetros:
El propósito es que el proceso de
Calibración logre “recuperar” el
valor de los parámetros del modelo
Heston.
74. 44
Escenario de Prueba
Estos fueron los precios generados, para nuestro escenario
representan los precios de mercado.
80. Contexto 1
Descripción del Problema 2
Formulación Matemática 3
Método de Solución 4
Resultados 5
Referencias 7
Conclusiones 6
81. Computational science is now the third paradigm of
science, complementing theory and experiment.
- Ken Wilson (Cornell University), Nobel Laureate
All models are inaccurate, but some are useful.
- George Box, Statistician
All algorithms perform equally well on average over
all possible functions.
- No-free-lunch theorems (Wolpert & Macready)
82. 49
Conclusiones
‣ La solución implementada “recuperó” los parámetros
originales del modelo Heston con los que se calcularon los
precios de mercado.
‣ La solución se ejecutó en un tiempo razonable con una muy
buena tolerancia de error.
‣ Se necesita compararlo contra un algoritmo clásico (SQP) y
otro algoritmo metaheurístico.
‣ Las características del algoritmo de Evolución Diferencial son:
• Simple y fácil de usar.
• Robusto.
• Puede usarse para aproximar la solución para otro algoritmo.
• Posibilidad de implementarlo para uso de cómputo paralelo.
83. Contexto 1
Descripción del Problema 2
Formulación Matemática 3
Método de Solución 4
Resultados 5
Referencias 7
Conclusiones 6