摘要
西蒙斯是被量化圈所廣為追捧的量化之神,旗下的大獎(jiǎng)?wù)禄饎?chuàng)造了無數(shù)神話。成立初期的創(chuàng)始人中,有一位科學(xué)家發(fā)明了廣泛應(yīng)用在語(yǔ)音識(shí)別等領(lǐng)域的鮑姆-威爾士算法。隱馬爾可夫模型(HMM)已經(jīng)被成功應(yīng)用在工程領(lǐng)域,并取得了具有科學(xué)意義和應(yīng)用價(jià)值的重要成果。
本文將西蒙斯大獎(jiǎng)?wù)禄鸬睦?隱馬爾可夫模型應(yīng)用到我國(guó)股市的預(yù)測(cè)中,通過對(duì)股票數(shù)據(jù)序列的模式識(shí)別來對(duì)大盤走勢(shì)進(jìn)行預(yù)測(cè)。
一、前言:從大獎(jiǎng)?wù)轮v起
西蒙斯是被量化圈所廣為追捧的量化之神,在全球金融危機(jī)的08年,大部分對(duì)沖基金都虧損背景下,其收益高達(dá)80%。
西蒙斯創(chuàng)辦的文藝復(fù)興科技公司擁有一群物理學(xué)家和數(shù)學(xué)家,這群人聚在一起到底搞出了什么賺錢利器?一直是外界所猜測(cè)。眾說紛紜,而其中隱馬爾科夫模型也由于一些原因被推舉出來。
本文將隱馬爾可夫模型應(yīng)用到我國(guó)股市的預(yù)測(cè)中,通過對(duì)股票數(shù)據(jù)序列的模式識(shí)別來對(duì)大盤走勢(shì)進(jìn)行預(yù)測(cè)。
二、HMM范例及原理
先簡(jiǎn)單回顧一下馬爾科夫鏈。馬爾可夫鏈,是指數(shù)學(xué)中具有馬爾可夫性質(zhì)的離散事件隨機(jī)過程。馬爾科夫性用數(shù)學(xué)公式表示如下:

馬爾科夫經(jīng)典范例:
根據(jù)當(dāng)前天氣的情況來預(yù)測(cè)未來天氣情況。一種辦法就是假設(shè)每天的天氣狀態(tài)都只依賴于前一天的狀態(tài)。以下展示了天氣預(yù)測(cè)的馬爾科夫模型狀態(tài)轉(zhuǎn)移圖:

假設(shè)天氣預(yù)測(cè)模型的狀態(tài)轉(zhuǎn)移矩陣如下:

這個(gè)矩陣表示,如果昨天是陰天,那么今天有25%的可能是晴天,12.5%的概率是陰天,62.5%的概率會(huì)下雨,很明顯,矩陣中每一行的和都是1。
為了初始化這樣一個(gè)系統(tǒng),我們需要一個(gè)初始的概率向量:

這個(gè)向量表示第一天是晴天。到這里,我們就為上面的一階馬爾科夫過程定義了以下三個(gè)部分:
狀態(tài):晴天、陰天和下雨。
初始向量:定義系統(tǒng)在時(shí)間為0的時(shí)候的狀態(tài)的概率。
狀態(tài)轉(zhuǎn)移矩陣:每種天氣轉(zhuǎn)換的概率。所有的能被這樣描述的系統(tǒng)都是一個(gè)馬爾科夫過程。
然而在某些情況下,馬爾科夫過程不足以描述我們希望發(fā)現(xiàn)的模式?;谟^測(cè)序列及隱含變量建立HMM模型,在模式識(shí)別上有一定優(yōu)勢(shì)。
HMM(隱馬爾科夫)經(jīng)典范例:
假設(shè)有3個(gè)不同的骰子。骰子1有6個(gè)面,稱為D6,每個(gè)面對(duì)應(yīng)數(shù)字出現(xiàn)的概率是1/6;骰子2有4個(gè)面,稱為D4,每個(gè)面對(duì)應(yīng)數(shù)字出現(xiàn)的概率是1/4;骰子3有8個(gè)面,稱為D8,每個(gè)面對(duì)應(yīng)數(shù)字出現(xiàn)的概率是1/8。

現(xiàn)在擲骰子10次,并假設(shè)得到這么一串?dāng)?shù)字:1 6 3 5 2 7 3 5 2 4,這串?dāng)?shù)字叫做觀測(cè)序列。但是在隱馬爾可夫模型中,我們不僅僅有這么一串可見狀態(tài)鏈,還有一串隱含狀態(tài)鏈。在這個(gè)例子里,這串隱含狀態(tài)鏈就是你用的骰子的序列。比如,隱含狀態(tài)鏈有可能是:D4 D6 D8 D6 D4 D8 D6 D6 D6 D4。
一般來說,HMM中說到的馬爾可夫鏈其實(shí)是指隱含狀態(tài)鏈,因?yàn)殡[含狀態(tài)(骰子)之間存在轉(zhuǎn)換概率。
在我們這個(gè)例子里,D6的下一個(gè)狀態(tài)是D4,D6,D8的概率都是1/3。D4,D8的下一個(gè)狀態(tài)是D4,D6,D8的轉(zhuǎn)換概率也都一樣是1/3。這樣設(shè)定是為了最開始容易說清楚,但是我們其實(shí)是可以隨意設(shè)定轉(zhuǎn)換概率的。比如,我們可以這樣定義,D6后面不能接D4,D6后面是D6的概率是0.9,是D8的概率是0.1。這樣就是一個(gè)新的HMM。
可見狀態(tài)之間沒有轉(zhuǎn)換概率,但是隱含狀態(tài)和可見狀態(tài)之間有一個(gè)概率叫做輸出概率。就我們的例子來說,六面骰子(D6)得到每個(gè)數(shù)字的輸出概率都是1/6(假設(shè)骰子沒被動(dòng)過手腳)。


在上面的這些情況下,可以觀察到的狀態(tài)序列和隱藏的狀態(tài)序列是概率相關(guān)的。于是我們可以將這種類型的過程建模為有一個(gè)隱藏的馬爾科夫過程和一個(gè)與這個(gè)隱藏馬爾科夫過程概率相關(guān)的并且可以觀察到的狀態(tài)集合,就是隱馬爾可夫模型(Hidden Markov Model),簡(jiǎn)稱HMM。
HMM的三個(gè)問題及算法:
對(duì)于股市我們也常常面臨以下的問題:我們希望基于能觀測(cè)到的有限的信息(股價(jià)、成交量及波動(dòng)率)來預(yù)測(cè)我們所無法得知的股價(jià)背后驅(qū)動(dòng)因素,乃至預(yù)測(cè)股價(jià)的漲跌原理,這個(gè)預(yù)測(cè)的建模過程與HMM不乏有許多相似之處。
HMM模型的構(gòu)建,重點(diǎn)在于分別解決三種問題:
問題1:知道骰子有幾種(隱含狀態(tài)數(shù)量),每種骰子是什么(轉(zhuǎn)換概率),根據(jù)擲骰子擲出的結(jié)果(可見狀態(tài)鏈),我想知道每次擲出來的都是哪種骰子(隱含狀態(tài)鏈)。
問題2:知道骰子有幾種(隱含狀態(tài)數(shù)量),每種骰子是什么(轉(zhuǎn)換概率),根據(jù)擲骰子擲出的結(jié)果(可見狀態(tài)鏈),我想知道擲出這個(gè)結(jié)果的概率。
問題3:知道骰子有幾種(隱含狀態(tài)數(shù)量),不知道每種骰子是什么(轉(zhuǎn)換概率),觀測(cè)到很多次擲骰子的結(jié)果(可見狀態(tài)鏈),我想反推出每種骰子是什么(轉(zhuǎn)換概率)。

三、HMM在股市預(yù)測(cè)中的應(yīng)用
HMM在語(yǔ)音識(shí)別中的應(yīng)用流程:
(1)首先,從輸入的語(yǔ)音中提取相應(yīng)的數(shù)字特征序列,并對(duì)模型進(jìn)行訓(xùn)練,得到局部較優(yōu)參數(shù)估計(jì)。HMM語(yǔ)音識(shí)別模型訓(xùn)練過程如下圖:

(2)其次,輸入需要進(jìn)行識(shí)別的語(yǔ)音,通過提取相應(yīng)的數(shù)字特征序列,再運(yùn)用向前-向后算法對(duì)各類模型進(jìn)行似然估計(jì),得到最大概率的模型輸出,從而實(shí)現(xiàn)識(shí)別功能。HMM模型語(yǔ)音識(shí)別過程如下圖:

基于HMM模式識(shí)別模型的股市走勢(shì)預(yù)測(cè):
(1)首先,按照事先分類,選取歷史上屬于同類走勢(shì)的日期以及該日期之前若干個(gè)星期的股票數(shù)據(jù),提取股票數(shù)據(jù)中某些特征指標(biāo)(成交價(jià)格,成交量,等等)形成相應(yīng)的序列作為模型的輸入,并應(yīng)用Baum-Welch算法對(duì)各類模型進(jìn)行訓(xùn)練,訓(xùn)練過程如下圖:

(2)其次, 根據(jù)訓(xùn)練好的HMM模型,選取若干個(gè)星期的股票特征指標(biāo)(成交價(jià)格,成交量,等等)序列作為輸入,應(yīng)用向前-向后算法計(jì)算各個(gè)模型發(fā)生的概率,選取最大概率對(duì)應(yīng)的模型,從而得到下一階段股票走勢(shì)的識(shí)別結(jié)果。識(shí)別過程如下圖:

四、HMM策略實(shí)證結(jié)果
4.1、策略說明
擇時(shí)指數(shù):滬深300指數(shù);
時(shí)間區(qū)間:2007/07/20至2016/09/09;
我們分別基于大盤的漲跌幅、換手率、成交金額以及每日的主動(dòng)買賣盤金額等數(shù)據(jù)構(gòu)造不同的觀測(cè)序列變量如下:
X1: 股票日收益率;
X2: 資金日凈流入占當(dāng)日所有流動(dòng)資金的比例;
X3: 日總流動(dòng)資金環(huán)比;
X4: 標(biāo)準(zhǔn)化資金流,即:(日總流動(dòng)資金-過去一年平均流動(dòng)資金/過去一年流動(dòng)資金波動(dòng)率。
X5: 換手率日環(huán)比;
X6: 成交金額日環(huán)比;
X7: 標(biāo)準(zhǔn)化成交金額日。
從中選擇不同的變量構(gòu)造觀測(cè)變量組合,并根據(jù)標(biāo)的指數(shù)周漲跌情況將所有樣本劃分為兩類(分別對(duì)應(yīng)漲、跌),分別運(yùn)用觀測(cè)變量組合訓(xùn)練不同的HMM模型。
4.2、基于HMM的指數(shù)擇時(shí)原理
基于不同類型(分漲、跌兩類)樣本數(shù)據(jù)分別訓(xùn)練得到對(duì)應(yīng)的模型:HMM1和HMM2,根據(jù)最新觀測(cè)變量輸入之后的概率高低作為下周大盤漲跌的判斷依據(jù),對(duì)指數(shù)進(jìn)行多空操作。此外,為了避免模型連續(xù)預(yù)測(cè)錯(cuò)誤導(dǎo)致的策略較大虧損,我們加入了信號(hào)止損機(jī)制:當(dāng)最近一次信號(hào)開倉(cāng)起來,策略累計(jì)虧損達(dá)到某個(gè)閥值(如5%),則對(duì)當(dāng)前倉(cāng)位進(jìn)行平倉(cāng),直到下一次出現(xiàn)相反信號(hào)再重新開倉(cāng)
4.3、策略表現(xiàn)
(1)不考慮做空
若當(dāng)信號(hào)為空時(shí),指數(shù)空倉(cāng),不考慮做空,則在2007年07月20至2016年9月9日共450周間,共發(fā)出了62次買入信號(hào)和61次賣出信號(hào),信號(hào)止損信號(hào)8次。平均每3.8周一次買賣信號(hào)。其中,預(yù)測(cè)結(jié)果準(zhǔn)確為250周,準(zhǔn)確率為56 %,策略累計(jì)收益率為183%,年化21.1%。

(2)考慮做空
若當(dāng)信號(hào)為空時(shí),指數(shù)開空倉(cāng),則在2007年07月20日至2016年9月9日共450周間,共發(fā)出了62次買入信號(hào)和61次賣出信號(hào),信號(hào)止損信號(hào)16次,由于止損而空倉(cāng)31周。平均每3.8周一次買賣信號(hào)。其中,預(yù)測(cè)結(jié)果準(zhǔn)確為250周,準(zhǔn)確率為56 %,策略累計(jì)收益率為899%,年化103.9%。

五、總結(jié)
5.1、研究意義和創(chuàng)新點(diǎn)
本報(bào)告首次提出將HMM模式識(shí)別模型引入到股票價(jià)格波動(dòng)預(yù)測(cè)問題中,通過解決HMM模型中的學(xué)習(xí)問題和識(shí)別問題,建立了一個(gè)基于股票日收益率以及日資金流等變量的對(duì)股票指數(shù)擇時(shí)模型,經(jīng)實(shí)證檢驗(yàn),無論是預(yù)測(cè)準(zhǔn)確率和擇時(shí)策略收益,該模型都取得了比較不錯(cuò)的效果,具有相當(dāng)?shù)睦碚摵同F(xiàn)實(shí)意義。
由于HMM模型的相關(guān)算法相當(dāng)成熟,且具有效率高,效果好以及易于通過已有的數(shù)據(jù)進(jìn)行模型訓(xùn)練等特點(diǎn),因此選用HMM模型進(jìn)行股票波動(dòng)模式識(shí)別不僅是一個(gè)較大的創(chuàng)新,更是一個(gè)值得探討的選擇。
5.2、模型的不足
(1)模型的預(yù)測(cè)準(zhǔn)確率有待進(jìn)一步提高;
(2)輸入向量的選擇是HMM模型的關(guān)鍵,本文僅針對(duì)股價(jià)、換手率以及資金流等構(gòu)造輸入變量,所能提取的股市信息存在局限。
量化金融分析師(簡(jiǎn)稱AQF,Analyst of Quantitative Finance)由量化金融標(biāo)準(zhǔn)委員會(huì)(Standard Committee of Quantitative Finance,SCQF)主考并頒證,是代表量化金融領(lǐng)域的專業(yè)水平證書。 >>>點(diǎn)擊咨詢AQF證書含金量
.png)
課程適合人群:
金融工程/數(shù)學(xué)專業(yè)背景的同學(xué)/工作人士,希望進(jìn)一步學(xué)習(xí)Python編程以及在量化投資的實(shí)戰(zhàn)應(yīng)用;
非金融工程專業(yè)背景的同學(xué)/工作人士,希望迅速成為寬客;
金融相關(guān)人員,希望學(xué)習(xí)如何系統(tǒng)的做量化策略;
個(gè)人投資者,希望系統(tǒng)學(xué)習(xí)掌握量化投資相關(guān)的實(shí)務(wù)技能,從模型開發(fā),回測(cè),策略改進(jìn),搭建穩(wěn)定的量化交易系統(tǒng)。>>>點(diǎn)擊咨詢AQF課程相關(guān)問題
(點(diǎn)擊上圖了解課程詳情)
量化金融分析師AQF核心課程體系:
1、《量化投資基礎(chǔ)》
主要涵蓋了量化投資領(lǐng)域的必備知識(shí),包括:基本面分析、技術(shù)分析、數(shù)量分析、固定收益、資產(chǎn)組合管理、權(quán)益、另類投資等內(nèi)容。
2、《Python語(yǔ)言編程基礎(chǔ)》
包含了Python環(huán)境搭建、基礎(chǔ)語(yǔ)法、變量類型、基本函數(shù)、基本語(yǔ)句、第三方庫(kù)、金融財(cái)務(wù)實(shí)例等內(nèi)容。旨在為金融財(cái)經(jīng)人提供最需要的編程方法。
3、《基于Python的經(jīng)典量化投資策略》
包含了最富盛名,最基本的量化交易思想和交易策略。例如:海龜交易模型、Logistics模型、配對(duì)交易模型、波動(dòng)擴(kuò)張模型、Alpha模型、機(jī)器學(xué)習(xí)(隨機(jī)森林模型、主成分分析)、深度學(xué)習(xí)(人工神經(jīng)網(wǎng)絡(luò))等內(nèi)容。
4、《量化交易系統(tǒng)設(shè)計(jì)》
旨在學(xué)習(xí)量化交易系統(tǒng)的具體知識(shí),包括過濾器,進(jìn)入信號(hào),退出信號(hào),倉(cāng)位管理等詳細(xì)內(nèi)容,并指導(dǎo)學(xué)員設(shè)計(jì)涵蓋個(gè)人交易哲學(xué)的量化交易系統(tǒng)。
5、《量化實(shí)盤交易》
旨在為解決實(shí)際量化交易策略搭建過程中的一些問題提供較優(yōu)解決方案。 >>>點(diǎn)擊咨詢AQF相關(guān)問題
掌握Python及量化投資技能,我們能做什么?
1、熟悉中國(guó)主要金融市場(chǎng)及交易產(chǎn)品的交易機(jī)制;
2、熟知國(guó)內(nèi)外期貨交易、股市交易的異同點(diǎn)和內(nèi)在運(yùn)行機(jī)制;
3、掌握經(jīng)典量化交易策略細(xì)節(jié)及其背后的交易哲學(xué);
4、掌握金融、編程和建模知識(shí)基礎(chǔ),擁有量化交易實(shí)盤操作能力;
5、具備獨(dú)立自主地研發(fā)新量化交易策略的能力;
6、掌握量化交易模型設(shè)計(jì)的基本框架,以及風(fēng)險(xiǎn)管理和資產(chǎn)組合理論的實(shí)際運(yùn)用;
7、掌握從策略思想——策略編寫——策略實(shí)現(xiàn)餓完整量化投資決策過程;具備量化投資實(shí)戰(zhàn)交易能力。
.png)
參考資料:
VWAP策略在A股交易中的應(yīng)用 http://www.doc88.com/p-0018540629353.html
第一講 :什么是算法交易? http://dy.163.com/v2/article/detail/DU5ENASF0519DHTM.html
算法交易簡(jiǎn)介 https://zhuanlan.zhihu.com/p/32036872
更多內(nèi)容推薦閱讀:
2019年量化金融分析師(AQF)全國(guó)統(tǒng)一考試報(bào)名簡(jiǎn)章
Wind、Excel和Python三大金融技能兼修,下一個(gè)金融分析大神就是你
金程推薦: AQF培訓(xùn) AQF培訓(xùn)機(jī)構(gòu) AQF是什么意思
咨詢電話:400-700-9596
AQF考友群:760229148
金融寬客交流群:801860357
微信公眾號(hào):量化金融分析師


.png)


