期權

根據期權鏈計算遠期價格

  • February 4, 2020

我有一個間諜選項鍊的歷史數據,如下所示

  UnderlyingSymbol  UnderlyingPrice Exchange          OptionRoot  \
         SPY           289.84        *            SPY180904C00150000   

     Type  Expiration    DataDate  Strike    Last     Bid  \
     call  09/04/2018  09/04/2018   150.0  136.71  139.86   

      Ask  Volume  OpenInterest  T1OpenInterest  
    140.12   0           251           0  

我試圖為對沖目的計算與每個到期日相關的基礎期貨/遠期。我的嘗試是按到期和罷工對看跌期權和看漲期權進行分組。取看跌中間價和看漲中間價之間的差值,並將每組的最小差值添加到行使價中。Python 程式碼看起來像這樣

df['Price'] = (df['Bid'].values + df['Ask'].values) / 2
df['Maturity'] = (df['Expiration'] - df['DataDate']).dt.days / 365
c = df[df.Type == 'call'].groupby(['Expiration','Strike'])['Price'].first()
p = df[df.Type == 'put'].groupby(['Expiration','Strike'])['Price'].first()
df = df.join((c - p).rename('CP_diff'), on=['Expiration','Strike'])
df = df[~df.CP_diff.isna()]
df['Forward'] = df['CP_diff'].values + df['Strike']

我的方法作為粗略的近似值是否有效?除了從彭博社提取數據之外,我還有什麼其他可能性。

取決於您需要分析的準確程度。你想要現貨價格還是遠期價格?

您似乎正在使用 put call parity 來解決底層問題:

$$ c + Xe^{-rT} = S + p $$

所以:

$$ S = (c-p) + Xe^{-rT} $$

您可以通過回歸(對於給定的期限)找到底層證券的市場隱含價格,因為:

$$ (c-p) = S - Xe^{-rT} $$

在你的線性回歸中,因變數是 $ Y=(c-p) $ ,常數將是 $ S $ 從截距中你可以得到折扣因子 $ b = -e^{-rT} $ .

$$ Y = a + bX $$

但是,這會為您提供現貨價格並獲得遠期價格,您需要考慮貼現率和股息收益率:

$$ F = Se^{(r-q)T} $$

您已經從回歸中獲得了折扣因子,對於股息收益率,您將不得不為您想要的指數使用一些平均股息。

在任何情況下,您都應該根據實際現貨(或遠期價格)測試一些期權鏈,以驗證您的近似值有多粗略。

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