-
1 # Beviss
-
2 # 機器之心Pro
下面,我們介紹下早稻田大學的一位同學使用多個監督學習和強化學習模型在金融市場的應用,作者主要描述了多個論文的核心思想與實現,並且全面概括了其在 Github 上維護的專案。
專案地址:https://github.com/Ceruleanacg/Personae
目前,在本專案中:
實現了 4 個強化學習模型。
實現了 3 個監督學習模型。
實現了 1 個簡單的交易所,提供基本的買入、持有、賣出操作(賣空仍在開發中),標的物可以是股票組合或者期貨合約組合。
對於監督學習模型的資料集:
我們採用 2008 年 1 月 1 日到 2018 年 1 月 1 日這個區間內,
招商銀行(600036)
交通銀行(601328)
中信銀行(601998)
工商銀行(601389)
這四隻銀行股在第 T 天的,
開盤價(Open)
收盤價(Close)
最高價(High)
最低價(Low)
交易量(Volume)
作為輸入資料,第 T+1 天的收盤價(Close)作為輸出資料,進行訓練,其中,這個區間前 70% 的資料作為訓練資料,後 30% 作為測試資料,目前沒有設定驗證集資料。
下圖是目前的實驗結果,就目前的實驗結果來看,監督學習的表現要好於強化學習。
圖例 :藍色的折線是測試資料集,其他顏色的折線是三種不同的監督學習模型在測試集上的預測。
接下來,我們將會依次對這 3 個監督學習模型與 4 個強化學習模型做一個簡短的介紹。
1. Naive-LSTM (LSTM)
該模型是基於 LSTM 和 Dense(全連線)的基本模型,輸入是序列長度為 5,即第 T 到第 T+4 天的 OCHLV 資料,輸出是一個實數,代表了第 T+5 的預測收盤價格。
arXiv:1506.02078: Visualizing and Understanding Recurrent Network
模型計算圖:
2. TreNet (HNN)
IJCAI 2017. Hybrid Neural Networks for Learning the Trend in Time Series
上述引用的論文提出了一種混合神經網路的結構,同時用 RNN 與 CNN 提取序列特徵,然後將輸出拼接作為全連線層的輸入,最後輸出最終的預測結果。
模型計算圖:
3. DA-RNN (DualAttnRNN)
arXiv:1704.02971: A Dual-Stage Attention-Based Recurrent Neural Network for Time Series Prediction
上述引用的論文提出了一種基於注意力機制(Attention Based Model)的與 Seq-to-Seq 模型的網路結構,其創新點在於該模型連續兩次使用注意力機制,在對原始序列使用注意力機制求權重後再次使用注意力機制對編碼後的序列求權重,然後經解碼與全連線層後輸出結果。
模型計算圖:
以上是關於專案中監督學習模型的簡短介紹,其中,所有模型的具體實現可以在專案連結中看到。
接下來是關於 3 個強化學習模型的介紹,但是在介紹強化學習模型前,我們首先對強化學習的資料和環境一個簡短的概述。
Financial Market
這個檔案實現了三個核心類,分別是:
Market
Trader
Position
他們分別代表了市場、交易員、持倉資訊,最終 Market 類作為 Agent(強化學習模型)的 Environment(環境),接受 Agent 的 Action(動作),同時給出 Next State(下一狀態)和 Reward(獎勵),並進行迭代。
對於強化學習使用的資料,
我們使用這四隻銀行股在第 T 天的,
開盤價(Open)
收盤價(Close)
最高價(High)
最低價(Low)
交易量(Volume)
和交易員在第 T 天的,
現金(Cash)
持倉價值(Holding Value)
各持倉量(Holding Amount)
作為 State(狀態),使用交易指令,
買入(Buy)
賣出(Sell)
持有(Hold)
接下來是關於實驗結果與強化學習模型的介紹:
圖例 - 橫座標是時間,縱座標是利潤,其中藍色折線是基準線,其他顏色的折線是強化學習模型表現
接下來是關於強化學習模型的介紹:
1. Policy Gradient
NIPS. Vol. 99. 1999: Policy gradient methods for reinforcement learning with function approximation
模型計算圖:
Basic Policy Gradient 的思想很樸素,重複及可能多的取樣,對於一次取樣的所有動作中,根據獎勵函式值的正負決定梯度下降的方向,從而提高或者降低這些動作出現的機率。
2. Double DQN
arXiv:1509.06461: Deep Reinforcement Learning with Double Q-learning
模型計算圖:
Double-DQN 採用評估網路與目標網路相互制約,期望避免傳統 DQN 中容易出現的過度估計問題。首先使用評估網路預測下一個狀態的狀態-動作函式值,然後選取取得最大值的動作,計做 a_{max},接著用目標網路預測下一狀態與採用 a_{max} 的狀態值計算標籤,然後期望最小化標籤與評估網路對當前狀態的狀態-動作函式和當前動作的 Q 的均方差。
3. Deep Deterministic Policy Gradient (DDPG)
arXiv:1509.02971: Continuous control with deep reinforcement learning
模型計算圖:
DDPG 用於連續動作空間,在本問題中,對於四隻股票的買賣持有的動作被對映到區間 [0, 11],其中,DDPG 使用 Actor-Critic Model,引入評估 Actor,目標 Actor 模型與評估 Critic,目標 Critic 模型兩組四個網路,其中 Actor 模型用於預測動作,Critic 模型用於評估當前狀態與動作的分數(狀態-動作值函式),該方法期望最小化:評估 Critic 與評估 Actor 對當前狀態-動作函式值與目標 Critic 和目標 Actor 對下一狀態-動作函式值的均方差(如演算法圖所示),依次迭代改進目標 Critic 和目標 Actor。
4. Dueling-DQN
arXiv:1511.06581: Dueling Network Architectures for Deep Reinforcement Learning
模型計算圖:
演算法:
相對於 DQN 直接輸出狀態-動作函式值,Dueling-DQN 的狀態-動作函式值由上式決定,從網路結構上可以看出,在輸出狀態-動作函式值前,Dueling-DQN 的結構拆分了原 DQN 網路結構的最後一層,這樣的思想很像 Actor-Critic 模型中的 Baseline,因為並不是每個狀態都是十分重要的,有些時候對於這些狀態,採取那個動作都不會有很大的影響。
即最終對於某個狀態-動作函式值而言,Advantage 的在不同動作維度上的值一定意義上描述了這個動作對於這個狀態的重要性,最後加上 Q 值,避免了過度估計。
以上是最近關於強化學習和監督學習在金融市場中的一些應用和相關論文方法的實現。
目前仍有以下問題亟待探討與解決:
強化學習模型獎勵函式的設計
強化學習中基於值迭代的演算法難以收斂
監督學習的特徵維度如何擴充套件
-
3 # 十煌九舞
首先,深度學習用於炒股的問題倒不如說是程式化交易是否可靠的問題。早在上個世紀,西蒙斯就提出了程式化交易的理念,西蒙斯在1998年成立的文藝復興科技基金,可以說是歷史上最成功的的對沖基金,旗下的第一隻基金,大獎章基金更是行業界的神話。到目前為止,該公司旗下的旗艦基金取得平均每年百分 之三十六的回報。而西蒙斯也被譽為量化投資之王。這也從資料上證明了程式化交易的可行性。
但是,程式化交易的致命缺點是,本身的鉅額交易會對金融市場造成影響,這個是程式無法提前預知的。機器學習是根據已有資料或已有經驗來提高程式的正確率。因此完全用量化交易代替人是不可能的。畢竟金融市場是考驗人心的市場,離開了人,金融將變得沒有意義。同時大量的程式化交易也會使得程式化交易沒有意義。因為,沒人願意去當那個看似最愚蠢的接盤俠。
-
4 # 人工智慧機器人小葵
答案是肯定的,我使用A股中隨機挑選的100只股票最近五年的資料進行建模,train出的結果用來預測除這100只以外的股票中任意挑選的100只股票,平均年化收益率在25%。你可能覺得這很少,但是複利可不少,巴菲特也只有28%!不過最大回撤較大,夏普比率也不理想!這意味抗風險能力不夠,再加入了風險控制之後,平均年化收益19%。但完美避過了兩次股災!當然對於小散戶來說,配置100只股票是很困難的,但是對於如果選股降到50只以內,風險大大提高,train出來的引數明顯出現過擬合!這也完美解釋了量化為什麼要多品種,股票要持有夠多!
-
5 # 理工男青牛
什麼叫深度學習方法?
我聽過山東大學彭實戈教授的講座。
他曾說,可以利用金融數學知識賺錢。
是的,我本來就喜歡數學,長大了,偶然機會闖進了期貨市場,股票市場。
幾點體會,
一,數學就是科學,科學是無法弄虛做假的。夢想賺錢是不靠譜的。
二,金融,你的借項就是別人的貸項。你在市場中賺錢就是別人在賠錢。
什麼股票價格上漲,公司內涵價值上漲的股票上漲。
你可以說,中興通訊反彈,你想搶反彈。
你怎麼想都可以,有一點改變不了,就是中興通訊好幾年賺的錢,沒了。
回到幾年前了。
高深的金融數學,複雜嗎。
不復雜。
上證指數二十八年,平均年化收益率百分之十二。
滬深300上市十三年,平均年化收益率百分之十二。
你想賺更多的錢嗎?憑什麼?
屠呦呦研究青蒿素,就是為了提取更多更好。
劉翔為了跑的更快,他用正確的方法刻苦訓練自己。
你在一個讓你一年賺百分之十二的市場想多賺錢,好吧。
刻意學習高深的金融數學理論吧。
-
6 # 龍探19
金雞報曉指的就是股價在前期持續下跌,在某一天股價低開,量能突然放大,當天快速拉出一根大陽線至收盤的過程。金雞報曉形態的出現往往預示著股票在低位反彈的開始。
金雞報曉的市場意義:
在股價持續滑落過程中,某一日大幅向下跳空開盤,但得不到空方的認可,股價被快速拉昇回前一日收盤價以上。這是主力透過大幅低開以探明底部,從而引領股價向上反彈的操作。其中的低開長陽即是反彈訊號,猶如黑暗中的雄雞引吭高歌,召喚著黎明的到來。
金雞報曉操作要點:
1、股價在持續回落過程中,呈現量縮的特徵;
2、低開長陽出現陽包陰或一陽包多陰的K線組合;
3、低開長陽的成交量,較前期下跌要明顯放大。另外,一定設定止盈,相對高點或調整週期相對較短的抄底止盈一定要控制在10%以內。
就比如我近期透過底部抄底選出來的亞振家居,華控賽格,海泰發展等,漲幅還是相當不錯的。
亞振家居(603389)是在股價回踩的時候選出,當時股價下跌,底部出現反轉十字星,主力進場,是絕佳的佈局機會,果斷選出來講解,果然之後股價連續上漲,截止目前股價大漲6個板,很多看了我直播講解的粉絲朋友都是抓到這波收益,這也是長期看本人直播的粉絲朋友所能把握的利潤!
魯信創投(600783)非常能體現龍探的選股思路,前期該股底部震盪吸籌,5號股價出現短線超跌反彈現象,資金大幅流入,買點出現,根據我所講選股法,及時選出講解,輕鬆收穫94%以上的漲幅,恭喜當時看到本人選股思路文章的股友及時把握住了該股這波行情。
【潛力黑馬】
從上圖可以看到此股的走勢是不是跟上面講到的兩隻股票類似呢,都是經過一段時間下跌洗盤迴踩底部支撐後企穩拉昇,目前該股也是再次下跌回踩支撐線附近,相信講到這裡大家都清楚了,該股後期走勢,就不在這裡多點評了,會在選股文章持續跟蹤講解。
本人在定期跟蹤研究很久的幾隻類似亞振家居,海泰發展的股票已經選出來,有興趣的朋友,可以自行去檢視最後,如果手中有個股被套,不知道如何解套,買賣點把握不好的朋友,都可以與筆者【微信:2868876408】取得聯絡,本人看到後,必當鼎力相助!
回覆列表
如果不可以那百年來歐美市場就不會出現那麼多交易巨人。除非他們生下來就掌握了炒股的方法否則都是透過學習與經驗總結獲得方法。但是學習的過程也看很多因素。學習了不一定能成。不學習就一定不能成。