官术网_书友最值得收藏!

第2章 時間序列建模簡介

市場行為需要大量歷史數據(例如外匯或股票的高頻買賣報價)來進行研究。雖然不能進行對照實驗,但可以基于歷史數據進行廣泛的測試。

——Sergio Focardi

絕大多數金融數據都具有時間維度,這一點令時間序列建模成為金融業的必要工具。本章將介紹傳統的時間序列建模。第3章將介紹現代化的、在數據準備和模型結構方面完全不同的、基于深度學習的時間序列建模。傳統的時間序列模型包括移動平均(Moving Average,MA)模型、自回歸(Autoregressive,AR)模型和差分自回歸移動平均(Autoregressive Integrated Moving Average,ARIMA)模型。這些模型的共同點是包含歷史觀測值。如果觀測值來自誤差項,將其稱為移動平均模型。如果觀測值來自變量自身,即用變量自身的歷史數據對自身進行預測,則稱為自回歸模型。ARIMA則是這兩類模型的擴展。

以下是關于時間序列的定義(Brockwell和Davis,2016)[1]


[1] 譯者注:本章代碼所用到的statsmodels庫是基于Brockwell和Davis所開發的1987版本和2010版本的,詳情參見statsmodels官網。

時間序列是指這樣一組觀測值Xt,每個觀測值都在特定的時間t記錄。離散時間序列是指這樣一組時間序列:觀測時間集T0是一個離散時間序列,表示以固定時間間隔進行觀測。連續時間序列是指在一定時間間隔內連續記錄觀測值時得到的連續時間序列。

我們先來看看帶有時間維度的數據是什么樣的。圖2-1展示了2010—2020年的石油價格,以下是生成這張圖的Python代碼:

In [1]: import quandl
        import matplotlib.pyplot as plt
        import warnings
        warnings.filterwarnings('ignore')
        plt.style.use('seaborn')
 
In [2]: oil = quandl.get("NSE/OIL", authtoken="insert you api token", 
                         start_date="2010-01-01", 
                         end_date="2020-01-01") ?
 
In [3]: plt.figure(figsize=(10, 6))
        plt.plot(oil.Close)
        plt.ylabel('$')
        plt.xlabel('Date')
        plt.show()

? 從Quandl中讀取數據。

圖2-1 2010年1月1日—2020年1月1日的石油價格

API是一種使用代碼來檢索數據的工具。本書將會用到各種API。在前面這段代碼中,我們使用了Quandl API。

通過Quandl API可以訪問Quandl網站上關于金融、經濟和其他方面的數據。

從前面的定義可以看到,時間序列建模適用于如下領域。

醫療。

金融。

經濟。

網絡分析。

天文。

氣象。

時間序列建模方法之所以優越,是因為該方法認為過去的數據點之間的相關性能夠更好地解釋當前值。因此,由于時間上的相關性,同一時期股價的動態可以通過其自身的歷史值更好地來理解。我們如何了解數據的動態呢?這個問題我們可以通過闡述時間序列的成分來回答。

主站蜘蛛池模板: 合川市| 凤庆县| 萨迦县| 三穗县| 原阳县| 都昌县| 无为县| 东丰县| 银川市| 镶黄旗| 和龙市| 甘肃省| 孟津县| 长阳| 象州县| 宝坻区| 罗定市| 荃湾区| 刚察县| 宝清县| 深水埗区| 东港市| 南城县| 湄潭县| 黔南| 太仓市| 莲花县| 合作市| 东阳市| 洛宁县| 晋江市| 丹江口市| 房山区| 商洛市| 措勤县| 资阳市| 社会| 镇宁| 旅游| 光泽县| 黄浦区|