Domanda

Sto usando QUANTILL per eseguire calcoli sui dati storici.

Dopo aver impostato il quadro richiesto (curve ecc.), quando chiamo option.ImpliedVolatility() ottengo la seguente eccezione lanciata (per le opzioni scadute):

  File "/usr/local/lib/python2.6/dist-packages/QuantLib/QuantLib.py", line 3683, in impliedVolatility
    def impliedVolatility(self, *args): return _QuantLib.VanillaOption_impliedVolatility(self, *args)
RuntimeError: option expired
.

A Snippet delle linee di codice per la configurazione delle curve richieste, ecc. È mostrata sotto:

        dividend_yield = YieldTermStructureHandle(FlatForward(0, TARGET(), div_yield, Actual365Fixed()))
        risk_free_rate = YieldTermStructureHandle(FlatForward(0, TARGET(), rf_rate, Actual365Fixed()))
        volatility = BlackVolTermStructureHandle(BlackConstantVol(0, TARGET(), annualized_histvol, Actual360()))
.

I Fortemente Sospetto che la macro TARGET() abbia utilizzato i valori predefiniti sulla data di sistema corrente.

Come posso impostare la libreria per utilizzare una data storica specifica?

È stato utile?

Soluzione

La data di valutazione è impostata da corsa, dire,

Settings.instance().evaluationDate = Date(14,March,2010)
.

Prima dei calcoli.Se non impostato, è predefinita la data corrente mentre si sospetta.

Il calendario di destinazione racconta solo la curva in quali giorni sono le vacanze, ma non ha alcun effetto sulla data di valutazione stessa.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top