u和d算波動率_波動方程 - CSDN

2020-11-23 CSDN技術社區

ARCH、EWMA、GARCH介紹


案例

  對2016年至2018年滬深300指數的漲跌幅數據建立ARCH(1)、EWMA和GARCH(1,1)三種波動率模型,並以30天前的數據為起點,逐一預測後一天的波動率。

ARCH(1)

import numpy as npimport pandas as pddf=pd.read_excel('C:/Users/Desktop/滬深300指數.xlsx',header=0,index_col=0)data=(df.iloc[:,0]/df.iloc[:,0].shift(1)-1).dropna()data.name='滬深300漲跌幅'from arch import arch_modelarch=arch_model(y=data,mean='Constant',lags=0,vol='ARCH',p=1,o=0,q=0,dist='normal')archmodel=arch.fit()archmodel.summary()archmodel.plot()Out[6]: <class 'statsmodels.iolib.summary.Summary'>""" Constant Mean - ARCH Model Results ==============================================================================Dep. Variable: 滬深300漲跌幅 R-squared: -0.000Mean Model: Constant Mean Adj. R-squared: -0.000Vol Model: ARCH Log-Likelihood: 2232.59Distribution: Normal AIC: -4459.18Method: Maximum Likelihood BIC: -4445.41 No. Observations: 730Date: Sun, Mar 29 2020 Df Residuals: 727Time: 18:59:32 Df Model: 3 Mean Model ============================================================================== coef std err t P>|t| 95.0% Conf. Int.------------------------------------------------------------------------------mu -3.0768e-04 4.190e-04 -0.734 0.463 [-1.129e-03,5.135e-04] Volatility Model ============================================================================ coef std err t P>|t| 95.0% Conf. Int.----------------------------------------------------------------------------omega 8.9476e-05 8.234e-06 10.866 1.671e-27 [7.334e-05,1.056e-04]alpha[1] 0.4000 0.107 3.754 1.737e-04 [ 0.191, 0.609]============================================================================Covariance estimator: robust


  可以看到ARCH(1)模型的參數ω=0.0000895,α=0.4,因此模型表達式為σn2=0.0000895+0.4(un-1)2

GARCH(1,1)

garch=arch_model(y=data,mean='Constant',lags=0,vol='GARCH',p=1,o=0,q=1,dist='normal')garchmodel=garch.fit()garchmodel.paramsOut[7]: mu 0.000465omega 0.000003alpha[1] 0.100000beta[1] 0.880000Name: params, dtype: float64garchmodel.plot()


  可以看到GARCH(1,1)模型的參數ω=0.00000298,α=0.1,β=0.88,因此模型表達式為σn2=0.00000298+0.1(un-1)2+0.88(σn-1)2。下面計算長期波動率,即√VL

vol=np.sqrt(garchmodel.params[1]/(1-garchmodel.params[2]-garchmodel.params[3]))volOut[10]: 0.012212037954677738

EWMA

  由於實踐證明對於日收益率數據,λ=0.94時預測效果最好,因此EWMA模型為σn2=0.06(un-1)2+0.94(σn-1)2

逐一預測後30天的波動率並比較

  根據上述三種模型的結果,我們就可以根據前一天的波動率和收益率數據來預測下一天的波動率。最後30天數據日期為2018年11月19號-2018年12月28號,因此隨著每一天的數據更新,我們可以用以上三種模型預測2018年11月20號-2018年12月29號的波動率數據,並畫圖比較:

vol301=np.zeros(30)u30=data[-30:]vol301[0]=np.sqrt(0.0000895+0.4*data[-31]**2)for i in range(29): vol301[i+1]=np.sqrt(0.0000895+0.4*u30[i]**2)vol302=np.zeros(30)vol302[0]=data[-34:-29].std()for i in range(29): vol302[i+1]=np.sqrt(0.00000298+0.1*u30[i]**2+0.88*vol302[i]**2)vol303=np.zeros(30)vol303[0]=data[-34:-29].std()for i in range(29): vol303[i+1]=np.sqrt(0.06*u30[i]**2+0.94*vol302[i]**2)import datetimeriqi=(u30.index+datetime.timedelta(days=1)).strftime("%Y-%m-%d")import matplotlib.pyplot as pltplt.figure(figsize=(15,5))plt.plot(riqi,vol301,label='ARCH(1)')plt.plot(riqi,vol302,label='GARCH(1,1)')plt.plot(riqi,vol303,label='EWMA') plt.xticks(rotation=30)plt.legend()plt.grid()


  可以發現GARCH(1,1)和EWMA模型的預測結果是非常相似的。

EWMA和GARCH估計相關係數

  思路和估計波動率一樣,方差換成了協方差,u²n-1換成了ux n-1· uy n-1

  注意上式中Covn-1 = ρxy,n-1×σx,n-1×σy,n-1,後面三項都可以通過同一種方法估算出來,比如5日MA。計算出Covn後代入相關係數公式可得ρxy,n = Covn / σx,n×σy,n。下面簡單介紹相關係數5日MA的計算方法:

df2=pd.read_excel('C:/Users/Desktop/滬深300指數與上證180指數的日漲跌幅.xlsx',header=0,index_col=0)cor=df2.rolling(window=5).corr().dropna();corOut[16]: 滬深300漲跌幅 上證180漲跌幅日期 2016-01-08 滬深300漲跌幅 1.000000 0.999923 上證180漲跌幅 0.999923 1.0000002016-01-11 滬深300漲跌幅 1.000000 0.999783 上證180漲跌幅 0.999783 1.0000002016-01-12 滬深300漲跌幅 1.000000 0.999685 ... ...2018-12-26 上證180漲跌幅 0.966159 1.0000002018-12-27 滬深300漲跌幅 1.000000 0.984355 上證180漲跌幅 0.984355 1.0000002018-12-28 滬深300漲跌幅 1.000000 0.987533 上證180漲跌幅 0.987533 1.000000[1454 rows x 2 columns]c=cor.loc[(slice(None),'滬深300漲跌幅'),:]d=pd.Series(c.iloc[:,1].values,index=df2.index[4:],name='5日移動平均相關係數')d.index.name='date'd.plot()


  其中cor.loc[(slice(None),『滬深300漲跌幅』),:]的各參數的解釋如下:loc[(a,b),c]中第一個參數元組為索引內容,a為level0索引對應的內容,b為level1索引對應的內容;因為cor是一個dataframe,所以要用c即『:』來指定任意的列;slice(None)是切片操作,這裡用來選擇任意的level0索引,也就是日期。

相關焦點

  • 波動方程,了解下!
    聲學基礎上關於聲學波動方程的推導,來自理想流體媒質的三個基本方程,運動方程、連續性方程和物態方程(絕熱過程)。而關於流體力學也有三個方程,分別是質量守恆方程、動量守恆方程(N-S方程),以及能量守恆方程。事實上,在絕熱過程中,小擾動下的流體方程也可以推導出聲學方程。
  • 波動方程的推導過程
    首先假設,在原點處有振動y=f(t),振動以速度v向x軸正方向傳播,則t時刻x處的振動方程是即x處的振動比原點處慢x/v。這樣我們就得到了沿x軸正方向傳播的波函數一般形式從波函數出發,可以推導出波動方程的一般形式。
  • 關于波的物理學,橫波的基本原理、描述和波動方程!
    伽利略·伽利萊、羅伯特·波義耳和艾薩克·牛頓都在這一領域有了自己的發現,但直到18世紀達朗貝(d'Alembert)推導出了波動方程,才使得這一領域變得清晰,並使許多未來的科學家才有可能解釋波動現象。其中波動方程也揭示了波的傳播速度是有限的而不是瞬時,這也為以後的狹義相對論提供了支持。波的基本原理簡單地說,波是一種傳播的擾動;是一種通過介質傳遞能量的方式。
  • 波動方程 熱傳導方程 求解方法
    號那天考的全國大學生數學競賽(CMC賽)的令人振奮的消息(雖然沒有一等獎,但能得二等獎已經出乎我的預料了)以後還要繼續加油正文偏微分方程中波動方程和熱傳導方程的求解方法都是分離變量法分離變量法的思想貫穿著這兩種方程。甚至可以用分離變量法求解少部分的拉普拉斯方程。拉普拉斯方程的求解方法相比于波動方程和熱傳導方程更為複雜,需要採用更多的數學工具。這邊是一些關于波動方程以及熱傳導方程的求解例子。並不難,但是在計算積分的時候需要較為小心,爭取不要計算錯誤。
  • 一維線性波動方程簡介
    不過為了對波動理論作個小結,還是決定把這部分補充上來。要求不高的話,可大致看一下內容,注意得到的小結論即可。首先把上一段得到的簡諧波的波函數列出如下(推導過程參考上文「簡諧波的描述」):方程(5)是一個偏微分方程,它的解具有波動的形式(其實就是(1)式),也因此而被叫做波動方程。在電磁學中,根據麥克斯韋(J.C. Maxwell)電磁理論,可以得到如下形式的方程(標量化):
  • 關於豆粕和白糖波動率指數的研究與應用
    (2)和(3)聯立方程,得出(4)式中引入Lagrange餘項公式和 Maclaurin餘項公式,則可得出將總方差進行遠期定價,均值化後即為所求  根據(6)式計算出近月和次近月的波動率和,再加權計算30天的波動率,乘以100得VIX值,這裡採用內插值進行加權計算,公式為:
  • 彎曲的時間和空間:波動
    漣漪現象的本質就是三維空間和一維時間化學反應生成的四維時空中的波動,數學家為了構建波動現象對應的方程花費了大量努力。四維問題數學方程建立頗為複雜,法國音樂家和數學家達朗貝爾就首先研究琴弦振動進行數學建模。因為琴弦在空間就是一跟直線,因此就將波動中三維空間簡化為一維空間。
  • 高中物理競賽典型例題精講——波動方程參數計算
    ,主要是通過數學上的三角函數方程來研究標準正弦波在介質中傳播的波形和特點,同時通過對於三角函數的轉換過程來研究正弦波在傳播過程中的位移和速度關係。解題步驟模擬重現方法分析本期題目是小編找到的一個考察比較全面的波動方程的題目,涉及到了波動方程求解過程中基礎的幾乎所有知識,深入理解這些基礎知識的應用方法和解題過程,能夠為後面較為複雜的計算過程打下一個堅實的基礎,方便後面的學習
  • 波動下降的趨勢 - CSDN
    趨勢線趨勢線 一.型態分析   連接股價波的高點的直線為下降趨勢線,連接股價波動的低點的直線為上升趨勢線。根據波動的時間又可分為長期趨勢線(連接長期波動點)和中期趨勢線(連接中期波動點)。
  • 電壓波動和閃變的常用檢測方法
    本文論述了電壓波動和閃變的常用檢測方法,比較分析了幾種改善電壓波動和閃變補償裝置的性能特點,為電力系統電壓波動與閃變的監測及抑制提供參考。 電力系統的電壓波動和閃變主要是由具有衝擊性功率的負荷引起的[2],如變頻調速裝置、煉鋼電弧爐、電氣化鐵路和軋鋼機等。這些非線性、不平衡衝擊性負荷在生產過程中有功和無功功率隨機地或周期性地大幅度變動,當其波動電流流過供電線路阻抗時產生變動的壓降,導致同一電網上其它用戶電壓以相同的頻率波動。
  • 黑洞形成的數學探索與非線性波動方程 | 硬核科普
    Klainerman曾就讀於羅馬尼亞精英中學,在紐約大學Courant所讀博士時他接受了兩位偏微分方程大師F. John和L. Nirenberg的指導。1970年代,橢圓方程的理論相對更為成熟,但波動方程的發展還幾乎沒有開始;Nirenberg是橢圓方程及微分幾何的大家,而F. John是研究波動方程的先驅,幾乎孑然一人在孤獨地做著研究。
  • 黑洞形成的數學探索與非線性波動方程|硬核科普
    Klainerman曾就讀於羅馬尼亞精英中學,在紐約大學Courant所讀博士時他接受了兩位偏微分方程大師F. John和L. Nirenberg的指導。1970年代,橢圓方程的理論相對更為成熟,但波動方程的發展還幾乎沒有開始;Nirenberg是橢圓方程及微分幾何的大家,而F. John是研究波動方程的先驅,幾乎孑然一人在孤獨地做著研究。
  • 電壓波動和閃變的檢測與控制方法
    本文論述了電壓波動和閃變的常用檢測方法,比較分析了幾種改善電壓波動和閃變補償裝置的性能特點,為電力系統電壓波動與閃變的監測及抑制提供參考。據統計,自動化程度很高的工業用戶一般每年要遭受10~50次與電能質量問題有關的幹擾,其中因包括電壓波動和閃變在內的動態電壓質量問題造成的事故數約佔事故總數的83%[1]。電壓波動和閃變已成為威脅許多重要用戶供電可靠性的主要原因之一,必須對其進行有效地監視與抑制。 電力系統的電壓波動和閃變主要是由具有衝擊性功率的負荷引起的[2],如變頻調速裝置、煉鋼電弧爐、電氣化鐵路和軋鋼機等。
  • 波動方程的建立——薛丁格 1926年1月26日
    薛丁格有廣泛的興趣和多面手的能力,但在量子理論的研究上,他起步很晚 同年 11 月,薛丁格在蘇黎世聯邦理工學院舉辦了關於德布羅意論文的講座,第一次講座並不太令人滿意,第二次講座他拿出了波動方程,他的波動力學就此亮相。 隨後,薛丁格繼續研究,終於完成了波動力學論文。他分兩次寄出,第一篇投寄到《物理年鑑》雜誌。雜誌編輯部收到該論文的時間是1926年1月26日,論文題目是「本徵值問題的量子化」。
  • 轉矩波動的原理與測試方法
    通俗地講就是電機由於機械結構和本身轉子慣量輸出一定轉矩的上下波動。  轉矩波動主要受齒槽力矩、電磁波動力矩、電樞反應和機械工藝等因素的影響較大,也正是因為這些因素都是電機本身機械結構引起的,導致轉矩波動測試也尤為困難,而且精度不高。
  • JGR:拉東域共成像點道集波動方程偏移速度分析
    何彬等-JGR:拉東域共成像點道集波動方程偏移速度分析估計速度模型對於精確獲取地下結構信息和地質解釋至關重要。在勘探和地震學領域,速度模型影響到成像的質量和地震學的解釋。為了獲取速度模型,最常用的方法是基於動校正(NMO)速度拾取的方法和基於射線類的方法。
  • JGR:拉東域共成像點道集波動方程偏移速度分析
    何彬等-JGR:拉東域共成像點道集波動方程偏移速度分析在勘探和地震學領域,速度模型影響到成像的質量和地震學的解釋。為了獲取速度模型,最常用的方法是基於動校正(NMO)速度拾取的方法和基於射線類的方法。然而,前者無法解決橫向速度的變化,後者在速度模型複雜的情況下存在不穩定的問題。為了避免以上方法的缺陷,獲取更加精確的速度模型,基于波動方程的偏移速度分析近年來在地震學和工業界得到廣泛的發展。
  • 兩率過度穩定放大經濟波動
    2008年5月份鋼材產量按年率算達到6.1億噸,如果宏觀調控再晚幾個月,鋼產量會增加到7億噸。港口會堆積更多的高價鐵礦石,明年企業利潤會更糟。而且不只是鐵礦石本身,運鐵礦石要造船,造船要用鋼材,造鋼材又要用鐵礦石。過去研究宏觀波動稱作「重工業自我循環」。鋼材產量裡有多少是自我循環不清楚,但肯定有相當大成分。從這個角度看,過去幾年的高產量有一定程度是浪費。把浪費減下來未必是壞事。
  • 高中物理競賽典型例題精講——一維波兩點確定波動方程
    05-02-05_一維波兩點確定波動方程本期高中物理競賽試題,我們繼續研究通過機械波傳播過程中的兩個確定點的振動情況來求解機械波波動方程的方法,在本期題目中,題目給出的已知條件還是比較清晰的,並且能夠詳細的說明機械波在傳播過程中的基本特點,並通過這些特點唯一的確定機械波的波動方程