1. <dd id="ekrqy"><nav id="ekrqy"></nav></dd>

       登錄系統    賬號注冊      
          
        


      News Message

      強化學習在金融中的運用 DeepTrader



      強化學習在金融中的運用 DeepTrader



      DeepTrader: A Deep Reinforcement Learning Approach for Risk-Return Balanced Portfolio Management with Market Conditions Embedding


      算法:

      圖1 DeepTrader算法框架

      DeepTrader的算法一共包括上面的綠色、藍色、紫色三部分,對應的是股票打分、市場情緒、投資組合生成器。其中綠色和紫色部分是原來AlphaStock有的結構,作者在原來的attention基礎上加了創新;藍色框里的市場情緒打分是本文額外加的,原來AlphaStock中設定的是多倉和空倉頭寸是相等的,是zero-investment portfolio,而本文認為市場有時候利空有時候利多,所以用一些宏觀市場變量(比如整個股票池中有多少只股票漲)等來計算市場的情緒,據此分配空頭倉位。

      整個算法流程就是股票打分器(綠色部分)對股票的漲跌潛力打分并給出投資組合占比,而市場打分器(藍色部分)分配空頭資金量,二者結合一下就是最后的投資組合(紫色部分)。

      下面我們來看一下三個部分的具體結構:

      1. Asset scoring unit

      由三個關鍵技術組成:時間卷積層(TCN)、空間注意力機制(Spatial Attention)和卷積層,分別用于提取各股票的時間特征、股票之間的短期空間關系(相關性)和長期空間關系(因果關系、行業結構等)。

      (1)Temporal Convolution Layer.

      這一步是在AlphaStock的LSTM-HA那里,用TCN來代替LSTM,獲取股票的時間特征表示。TCN相比RNN類的方法,好處是可以并行計算(計算快),減輕了梯度爆炸和消失的問題。

      對TCN不了解的朋友可以看這篇筆記熟悉一下:
      隨風:時間序列分析(5) TCN
      “實驗表明,RNN 在幾乎所有的序列問題上都有良好表現,包括語音/文本識別、機器翻譯、手寫體識別、序列數據分析(預測)等。
      在實際應用中,RNN 在內部設計上存在一個嚴重的問題:由于網絡一次只能處理一個時間步長,后一步必須等前一步處理完才能進行運算。這意味著 RNN 不能像 CNN 那樣進行大規模并行處理,特別是在 RNN/LSTM 對文本進行雙向處理時。這也意味著 RNN 極度地計算密集,因為在整個任務運行完成之前,必須保存所有的中間結果。
      CNN 在處理圖像時,將圖像看作一個二維的“塊”(m*n 的矩陣)。遷移到時間序列上,就可以將序列看作一個一維對象(1*n 的向量)。通過多層網絡結構,可以獲得足夠大的感受野。這種做法會讓 CNN 非常深,但是得益于大規模并行處理的優勢,無論網絡多深,都可以進行并行處理,節省大量時間。這就是 TCN 的基本思想?!?/blockquote>
      圖2 TCN:簡單來說,就是使用了空洞卷積和ResNet結構

      我們把第 l 塊(block)的輸入記作Hl?1RC×N×Kl?1,其中 N 是股票數量, C 是隱藏層特征維度, Kl?1 為第 l?1 塊的時間長度。

      沿時間維度進行TCN運算后,TCN的輸出為 H^l 。

      如圖1綠框部分所示,用TCN提取的股票時間特征H^l 分別被輸入到spatial attention和GCN兩個組件中產生股票短期相關性權重Sl 長期相關性權重 Zl ,兩者相乘作為股票的最終空間相關性權重。

      (2)Spatial Attention Mechanism.

      這一步是為了模擬股票之間的短期空間屬性。得到TCN輸出的股票時間特征表示 H^l 后,輸入到空間注意力機制中用來產生一個權重,這個權重代表股票間的相關性關系:

      (1)S^l=Vs?sigmoid((H^lW1)W2(W3H^lT(1,2))T+bs)

      W1RKl,W2RC×Kl,W3RC,VsRN×N 是參數,上標 T(1,2) 表示前兩個維度的轉置, bs 是bias向量。

      接下來再把每個元素用softmax歸一化一下,用來代表股票i和j的相關性:

      Si,jl=exp?(S^i,jl)v=1Nexp?(S^i,vl).

      (3)Graph Convolution Layer.

      圖卷積層用來對股票間的長期空間關系進行建模。

      雖然個股的表現具有變化的波動性,但行業(industry)的整體表現通常更能反映未來的經濟形勢熱點。這里用了圖卷積網絡GCN,通過消息傳遞來獲取圖中節點的依賴關系,將邊和節點的信息集成到表示中。

      這里關于股票的圖結構的構建,作者實驗了以下幾種方式:

      • 股票行業分類
      • 股票收益的相關性
      • 股票收益的偏相關性
      • 因果關系(通過PC算法識別股票之間的因果結構)

      仍然是用TCN的輸出H^l 作為輸入,

      (1)對于使用股票行業分類方式構建的圖結構:

      由于只使用行業分類信息可能會忽略某些依賴關系(比如亞馬遜歸類是零售貿易,但是它也受益于互聯網紅利),為了避免這個問題,這里GCN使用復雜一點的結構:使用Graph WaveNet for Deep Spatial-Temporal Graph Modeling. (arXiv:1906.00121)這篇文章里的公式

      (2)Zl=q=0QA~qH^lΘ1,q+A~cH^lΘ2

      其中 A~=A/rowsum(A) , Θ1,Θ2RKl×Kl 是GCN中可以學習的參數。 A~c用于捕捉相關性,A~c:=SoftMax(ReLU(EET)) ,這里 ERN 是隨機初始化的可學習的參數,Q是平衡 A~ 和 A~c 之間信息量的參數。

      (2)對于上面說的用后三種方式(收益相關性、偏相關性和因果關系)構建的圖結構來說,我們使用(3)Zl=q=0QA~qH^lΘ1,q

      也就是公式(2)的第二項不需要了,因為依賴關系已經從數據中估計出來了。

      這樣我們得到了股票長期相關性權重 Zl 。

      (4)Stock scoring

      現在我們有了兩個權重矩陣 Sl,Zl ,使用殘差網絡結構,第l個block的輸出就可以寫為

      Hl=Sl×ZlHl?1這里  是殘差連接的意思。

      對殘差網絡不熟悉的小伙伴請看這篇介紹:
      小小將:你必須要知道CNN模型:ResNet

      以上(1-4)步描述的就是圖1里面綠框中藍色矩形block的結構,然后我們把這個block結構堆疊L次獲得第L塊的輸出 HL ,就是最后的股票的時空特征。

      最后,我們將 HL 過一個全連接層,得到的最后股票的漲跌潛力打分:(4)v=sigmoid(WL?HL+bL)這就是股票打分器的最后輸出了。

      2. Market Scoring Unit

      由于隨機賭博和突發事件,金融數據包含大量不可預測的不確定性。根據歷史觀察來準確判斷股票的漲跌是不可行的。在以往基于RL的投資模型中,投資策略僅僅是基于對每只股票的分析,而忽略了市場的變化。

      而順應市場是一個更好的投資策略。當股市下跌時,有經驗的投資者傾向于在賣空上花更多的錢。為了平衡收益和風險,本文提出了市場評分單元。以市場情緒指標為輸入,動態調整資金配置。

      這部分就是市場特征過了一個LSTM加一個時間維度上的attention(和AlphaStock的LSTM-HA是一樣的),最終輸出正態分布的期望和方差 μ,σ ,空倉資金的比例就用 ρN(μ,σ2) 來產生:

      用LSTM提取市場變量 xm的表示hk=LSTM(hk?1,xkm)

      用注意力機制加權來捕捉較早的信息關系ek=VeTtanh?(U1[hk;hK]+U2xkm)αk=exp?(ek)i=1Kexp?(ei)

      最后的LSTM輸出為 h^K=k=1Kαk?hk ,然后輸出正態分布的均值和方差μ,σ=Um?h^K+bm

      3. Portfolio Generator

      和AlphaStock一樣,在獲得股票打分器給出的分數 v 后,選出前G只股票做多,后G只股票做空,然后使用v的softmax產生投資組合權重,

      與AlphaStock不同的是,多了一個市場打分得到的空倉比例 ρ。 這可以看作是在連續動作空間Am[0,1] 中選擇一個值,在訓練階段根據正態分布 N(μ,σ2) 對 ρ 進行采樣,在測試階段 ρ=μ ,然后將這個值固定到[0,1]的范圍內。

      以上流程完成后,按照交易流程中規定的流程完成交易周期。

      4. Optimization via RL

      以上過程用RL來優化,策略 π 由選股分配組合權重和空倉比例兩部分組成。

      (1)第一個是選股分配組合權重:πa(i|Xa,θa)=exp?(vi(θa))n=1Nexp?(vn(θa))

      return rate是 rt=yt?πθaa?1yt=Pt+1(c)/Pt(c)

      如果初始投資金額是 C0 ,一個軌跡 τ 的累積金額為

      C|τ|=C0Πt=0|τ|(1+rt)=C0Πt=0|τ|ytπθaa

      股票評分單元的優化目標為跡的對數累積財富最大化:

      (2)而市場打分的策略使用高斯策略:

      πm(ρ~|Xm,θm)=12πσ(θm)exp?(?(ρ~?μ(θm))22σ2(θm))

      給定reward Rt ,優化目標為

      把二者加權求和就是最終的優化目標:

      然后用梯度下降更新就可以了。

      實驗

      為了全面評估DeepTrader,作者對三個知名股指的成分股進行了實驗,旨在回答以下問題:

      Q1: DeepTrader的表現如何,尤其是在一些特殊的金融事件中,比如次貸危機呢?

      Q2: DeepTrader的關鍵創新【attention、GCN】和【市場評分單元】,是否有必要、提高性能?

      Q3: 市場評分單元獎勵函數的選擇,如何影響投資效果?

      Q4: GCN的圖結構是否影響投資效果?

      Baseline

      比較的方法是五種相關的方法,即Market、BLSW (1988), Csm (1993), EIIE(Jiang,2017)和AlphaStock (AS) (Wang et al. 2019)。

      • market是一種簡單的買入并持有策略。
      • BLSW是一種基于均值回歸的策略(Poterba和Summers 1988)。
      • CSM是一種經典的動量策略。
      • ElIE和AS是最近發展起來的兩種基于RL的方法。

      五種方法中,BLSW,CSM和AS可以進行做空操作。

      Ablation

      還實現了DeepTrader (DT)的幾個變體簡化版本,其中“N”意味著沒有或從DeepTrader刪除一些組件。

      • DT-NS從股票打分單元中去除了空間注意機制和GCN層,
      • 而DT-NM則去掉了市場評分單元。

      還研究了不同的獎勵函數和圖結構對GCN的影響。默認情況下,我們使用最大回撤MDD作為獎勵函數,股票行業分類產生圖結構。

      評價指標

      我們在實驗中使用了六個指標,分為三類:

      • 1)利潤準則,包括年化收益率(annual Rate of Return, ARR);
      • 2)風險準則,包括年化波動率(annual Volatility, AVol)和最大回撤(Maximum DrawDown, MDD);(越低越好)
      • 3)風險-收益準則,包括年化夏普比率(ASR)、卡爾瑪比率(CR)、Sortino比率(SoR)。


      Share Http URL:  http://www.tiara-e.com/get_news_message.do?new_id=1044














      請輸入評論





























      青草免费视频,97 碰,山东老熟妇乱子视频,亚洲精品美女视频_河北新闻网