6 votos

Fórmula de bisección modificada para derivar la volatilidad implícita de una opción americana que paga dividendos

Estoy tratando de averiguar la fórmula para calcular la volatilidad implícita de una opción americana sobre una acción que paga dividendos (pagos discretos o rendimiento anualizado).

En la página 171 de Haug

El siguiente código se proporciona para el algoritmo de bisección, junto con el comentario: " Con pequeñas modificaciones, la función también puede utilizarse para encontrar la volatilidad implícita de las opciones americanas y exóticas ". Sin embargo, no he podido encontrar más información en el libro (o en Internet), que proporcione instrucciones sobre la(s) modificación(es) necesaria(s).

Incluyo el código de la función a continuación, espero que alguien pueda sugerir las modificaciones necesarias:

function BisectionAlgorithm(CallPutFlag As String, S As Double, X as Double, T As Double,
                            r As Double, b as Double, cm As Double) As Double
   Dim vLow as Double, vHigh As Double, vi as Double
   Dim cLow As Double, cHigh As Double, epsilon as Double, tempval As Double

   vLow=0.01
   vHigh=1
   epsilon=0.000001
   cLow = GBlackScholes(CallPutFlag,S,X,T,r,b,vLow)
   cHigh = GBlackScholes(CallPutFlag,S,X,T,r,b,vHigh)
   vi=vLow+(cm-cLow)*(vHigh-vLow)/(cHigh-cLow)
   tempval=GBlackScholes(CallPutFlag,S,X,T,r,b,vi)

   While Abs(cm-tempval) > epsilon
       if tempval < cm Then
           vLow=vi
       Else
           vHigh=vi
       End If

       cLow = GBlackScholes(CallPutFlag,S,X,T,r,b,vLow)
       cHigh = GBlackScholes(CallPutFlag,S,X,T,r,b,vHigh)
       vi=vLow+(cm-cLow)*(vHigh-vLow)/(cHigh-cLow)
       tempval=GBlackScholes(CallPutFlag,S,X,T,r,b,vi)
   Wend

   BisectionAlgorithm=vi
End Function

4voto

syntheticbrain Puntos 549

El algoritmo es el mismo, sólo que hay que utilizar el pricer apropiado (americano/exótico) en lugar del black-scholes.

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