微信公眾號
關鍵字全網搜索最新排名
『量化投資』:排名第一
『量 化』:排名第一
『機器學習』:排名第三
我們會再接再厲
成為全網優質的金融、技術類公眾號
作者:Alex Honchar
編譯:編輯部
https://medium.com/@alexrachnog?source=post_header_lockup
今天編輯部帶來關於在基於金融時間序列的預測模型案例,我們將通過神經網絡來增強一個經典的移動平均策略,並表明它真的是有所改善相對原策略。
基於技術分析的投資策略
但這種交易策略有一個主要的缺陷:在震蕩行情中,策略沒有過多的觸及信號並交易,這樣我們也很難賺到錢。
那我們怎麼應用機器學習去改善呢?
我們來看下面的策略假設:在移動平均線金髮生叉死叉的時刻,我們會對某些特徵的變化做出預測,如果我們真的期望這個交叉點是可行的,我們便選擇相信這個交易信號。 否則我們會跳過。
作為預測目標,我想用偏度來衡量分布的不對稱性。 讓我們假設,如果我們預測分布的變化,這意味著我們目前的趨勢將來也會發生變化。
輸入數據
在這裡,我們將使用pandans和PyTi生成更多的指標。 我們將使用MACD,Ichimocku cloud,RSI等指標。 所有這些指標算出來的值將形成多變量時間序列,用flatten函數處理後,使用在 MLP 或繼續使用再 CNN 或 RNN中。
PyTi(https://github.com/kylejusticemagnuson/pyti)
獲得的指標特徵連接到OHLCV元組以產生最終向量。
網絡結構
在這裡我們展示一個如何訓練正則化MLP進行時間序列預測的例子:
這裡的「「Novel」是增加小的噪聲給單層神經網絡的輸入和輸出。它非常類似於L2正則化,數學解釋如下:(http://www.deeplearningbook.org/)
我們在2012年至2016年間以AAPL的價格訓練我們的網絡,在2016-2017年進行樣本外測試。
訓練網絡後,我們繪製收盤價,均線和垂直線的交叉點:紅色線和橙色線代表我們要交易的點。綠色線代表我們不去交易的點。
神經網絡結果
[(『Total Return』, 『1.66%』),
(『Sharpe Ratio』, 『16.27』),
(『Max Drawdown』, 『2.28%』),
(『Drawdown Duration』, 『204』)]
Signals: 9
Orders: 9
Fills: 9
我們將如何使用「紅色」和「橙色」交易信號,並跳過綠色。 我們可以看到,策略減少了2次交易,並幫助我們減少了第一個drawdown,最終提高了幾乎兩倍的回報!
[(『Total Return』, 『3.07%』),
(『Sharpe Ratio』, 『27.99』),
(『Max Drawdown』, 『1.91%』),
(『Drawdown Duration』, 『102』)]
Signals: 7
Orders: 7
Fills: 7
部分代碼
總結
通過這篇文章,我們可以使用神經網絡來完成(至少一段時間)有關金融時間序列預測的一些研究。 但是,我們不能直接用它來預測價格知否漲跌。 我們必須考慮不同的數據源和目標值,認真對待處理過擬合和超參數優化,那麼我們可以得出什麼結論呢?
1、注意過擬合! 你會在99%的情況下做到這一點,不要完全相信你的回測曲線,它一定是有問題的。
2、除了收盤價,波動收益率,偏度等,嘗試著預測其他特徵。
3、如果有不同的數據源,請使用多模態學習。
4、不要忘記找到正確的超參數!
5、編寫一個可以混合一些經典機器學習的策略!
贈書活動
量化投資與機器學習公眾號聯合機械工業出版社送出3本《深度學習與計算機視覺》
西門子高級研究員田疆博士作序力薦!Google軟體工程師呂佳楠力、英偉達高級工程師華遠志、理光軟體研究院研究員鍾誠博士力薦!本書全面介紹了深度學習及計算機視覺中*基礎的知識,並結合*常見的應用場景和大量實例,帶領讀者進入豐富多彩的計算機視覺領域。作為一本「原理 實踐」教程,本書在講解原理的基礎上,通過有趣的實例帶領讀者一步步親自動手,不斷提高動手能力,而不是枯燥和深奧原理的堆砌。本書適合對人工智慧、機器學習、深度學習和計算機視覺感興趣的讀者閱讀。閱讀本書要求讀者具備一定的數學基礎和基本的編程能力,並需要讀者了解Linux的基本使用。
截止 2017.10.24 12:00
大家在本篇推文【寫留言】處發表的留言,獲得點讚數前三的讀者,即可免費獲贈此書。屆時,工作人員會聯繫三位讀者的微信,寄出此書。