Python

Python中的局部波動率計算

  • May 12, 2019

我正在嘗試使用 Dupire(有限差分法)對 Python 中的局部波動率進行定價。

我有以下一組資訊

現貨:770.05,罷工:850,類型:‘C’,rfr:0.0066,到期時間 = 25/365 天,IV:0.19468。

為了使用 FDM 求解,我們需要找到

在此處輸入圖像描述

在此處輸入圖像描述

我在 python 中使用了以下程式碼,請告訴我這裡缺少什麼。

增量 = 0.00071 增量 = 1.5

dc_by_dt = ((bsm_price('c',0.1946811865981668,770.05,850,0.0066,25.55/365)+deltat,0)) -(bsm_price('c',0.1946811865981668,770.05,850,0.0066,deltat-(25.55/365),0))) / (2 * delta)

dc2_by_dk2 = ((bsm_price('c',0.1946811865981668,770.05,(850-delta),0.0066,25.55/365,0)) - 2 * (bsm_price('c',0.1946811865981668,770.05,850,0.0066,25.55/365,0)) + (bsm_price('c',0.1946811865981668,770.05,(850 + delta),0.0066,25.55/365,0))) / (delta*delta)

local = np.sqrt((dc_by_dt)/(0.5*(850*850)*dc2_by_dk2))

不幸的是,不是用 Python 編寫的,而是用 R 編寫的。如果您有使用 R 的經驗,那麼這個發佈在地下 quant 部落格上的真實範例將逐步說明您可能正在尋找的內容:(向下滾動到結論)

https://quantipy.wordpress.com/2017/08/21/implementation-of-dupires-formula-for-local-volatilities/

(我不相信這個人的工作),但是當我解決類似的波動率模型問題時,直覺對我有很大幫助。

我希望它有所幫助。

通過將恆定的隱含波動率作為輸入,您會破壞使用本地波動率的目的,並考慮您的蝶形價值。我敢說你的本地捲可能會爆炸。

更好的方法是計算實際隱含體積表面的局部變異數。

引用自:https://quant.stackexchange.com/questions/45196