QuantLib + Python:ターゲット()マクロとデフォルトのカレンダー(RuntimeError:オプションの有効期限)

StackOverflow https://stackoverflow.com//questions/11708666

質問

QUATTLIBを使用して歴史的なデータの計算を実行しています。

必要なフレームワーク(曲線など)を設定した後、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()))
.

i crowly TARGET()マクロがデフォルトで現在のシステム日付に使用されていると疑わしい。

特定の歴史的日を使用するようにライブラリをどのように設定しますか?

役に立ちましたか?

解決

評価日は、実行して、

を実行して設定します。
Settings.instance().evaluationDate = Date(14,March,2010)
.

計算前に。設定されていない場合は、デフォルトが疑われると現在の日付になります。

ターゲットカレンダーは、祝日の何日かを曲線に伝えますが、評価日自体には影響しません。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top