1

Quantlibを使用して、履歴データの計算を実行しています。

必要なフレームワーク(曲線など)を設定した後、呼び出すoption.ImpliedVolatility()と、次の例外がスローされます(期限切れのオプションの場合)。

  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

必要な曲線などを設定するためのコード行の抜粋を以下に示します。

        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()))

使用されているマクロのデフォルトは現在のシステム日付になっているのではないかと強く思います。TARGET()

特定の履歴日付を使用するようにライブラリを設定するにはどうすればよいですか?

4

1 に答える 1

2

評価日は、たとえば、を実行することによって設定されます

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

計算の前に。設定されていない場合は、予想どおり、デフォルトで現在の日付になります。

TARGETカレンダーは、休日が何日であるかを曲線に伝えるだけですが、評価日自体には影響しません。

于 2012-08-24T11:06:50.700 に答える