que necesitará un poco de configuración. Para mayor comodidad, ya menos que se obtiene conflictos de nombre, importar todo lo mejor:
from QuantLib import *
a continuación, crear la opción, que necesita un ejercicio y una recompensa:
exercise = EuropeanExercise(Date(3,August,2011))
payoff = PlainVanillaPayoff(Option.Call, 100.0)
option = EuropeanOption(payoff,exercise)
(tenga en cuenta que necesitará una fecha de ejercicio, no un tiempo hasta el vencimiento.)
Ahora, independientemente de si desea ponerle precio o adquirir su volatilidad implícita, tendrá que configurar un proceso de Black-Scholes. Hay un poco de maquinaria involucrada, ya que no se puede simplemente pasar un valor, por ejemplo, de la tasa libre de riesgo: necesitará una curva completa, por lo que creará una plana y la colocará en un asa. Lo mismo ocurre con el rendimiento de dividendos y el volumen; el valor subyacente va en una cotización. (No estoy explicando lo que todos los objetos son;. Comentar si lo necesita)
S = QuoteHandle(SimpleQuote(100.0))
r = YieldTermStructureHandle(FlatForward(0, TARGET(), 0.03, Actual360()))
q = YieldTermStructureHandle(FlatForward(0, TARGET(), 0.01, Actual360()))
sigma = BlackVolTermStructureHandle(BlackConstantVol(0, TARGET(), 0.20, Actual360()))
process = BlackScholesMertonProcess(S,q,r,sigma)
(. La volatilidad en realidad no se utilizan para el cálculo vol-implícita, pero necesito uno de todos modos)
Ahora, por la volatilidad implícita de que vas a llamar:
option.impliedVolatility(11.10, process)
y para la fijación de precios:
engine = AnalyticEuropeanEngine(process)
option.setPricingEngine(engine)
option.NPV()
migh t use otras funciones (ajuste las tasas en una cotización para que pueda cambiarlas más adelante, etc.), pero esto debería ayudarlo a comenzar.
Ha intentado algo como 'from quantlib import EuropeanOptionImpliedVolatility', y luego llamarlo con los mismos argumentos. Ver http://quantlib.referata.com/wiki/Python_QuantLib_tutorial (parece ser la suma total de su documentación) –
@Thomas K: Puedo hacer esto: 'desde QuantLib importe EuropeanOption' Esperaba una explicación sobre cómo establecer un motor de fijación de precios para un método dado de cálculo de vol. R toma un enfoque de fachada, Python sigue el camino de poder y complejidad original de cpp Quantlib, por lo tanto, mi pregunta. –