1. 程式人生 > >LSTM模型預測效果驚人的好,深度學習做股票預測靠譜嗎?

LSTM模型預測效果驚人的好,深度學習做股票預測靠譜嗎?

0?wx_fmt=gif&wxfrom=5&wx_lazy=1

 向AI轉型的程式設計師都關注了這個號???

大資料探勘DT資料分析  公眾號: datadw

給你講個段子!真實的!  

 我去一家量化交易公司實習,一次meeting中,我和老總還有一個資深大佬談機器學習在股票和期貨裡面的應用。  

我:LSTM在時間序列上應用的效果比較好,我們可以嘗試把LSTM應用在股票預測上。  此時,大佬在陰笑,老總默不作聲...  

我:你為啥笑  大佬: 不work啊! 

我:為什麼不work?!  

這時老總也在旁邊強掩笑容,大佬終於忍不住說了,有兩個原因,第一個是你如何保證你的因子有效?  

老總就補充到:對啊,你的模型很可能garbage in garbage out.   

我說:那你們提供因子來訓練模型啊 

大佬陰笑.... 

 然後大佬又繼續說:第二個就是,你非常可能過擬合!  

我說:那我們可以加regularization啊。  

接著他們倆忽略我的話了,老總接著說:其實我們是想要一個模型能根據每天的資料進行反饋,自動更新。  

我一想,這TM的不就是reinforcement learning嘛,我說:可以用reinforcement learning試試。  大佬又開始笑了,我很納悶。  

大佬說:我就是知道他們有些人在用reinforcement learning,我才能賺錢!!! 

0?wx_fmt=jpeg

 最後實習結束之後,在大佬的帶領下,我才明白了交易的三重境界  

歸納  演繹  博弈  

 所謂的深度學習不過是基於歷史資料進行擬合的歸納法罷了,如果把深度學習用來做股票預測,長期的是expected虧錢的,因為市場在變,規律在變,歷史可能重演,但是又不盡相同。    

深度學習肯定是可以用在股票市場的,比如針對某隻股票的新聞情感分析等。但是不能用來預測市場走向!!!    

想在市場上賺錢,就得博弈,你得知道其他人在幹什麼,因為市場是有所有的參與者共同決定的。    

舉個簡單的博弈方法:  中國的期貨市場之前很長一段時間,很多人,包括一些機構,都在用趨勢策略,不同人和機構之間不外乎就是趨勢的策略引數不同,讓策略效能稍有不同,入市出市點不同,但是大體是類似的。所以這個時候,你應該知道市場上有一部分資金是在用這種趨勢策略在跑的,那麼在未來的某一個時間點,這些策略會相繼的發出訊號,然後人們去執行買入賣出的操作。 

所以有趣的地方來了,既然你已經知道有一部分人在幹嘛了,你是不是就可以設計策略來巧妙的利用其他的人的策略呢?你是不是可以設計一個類似的趨勢策略,來告知你別人在這個時候可能會幹嘛,而你來選擇做更有意義的事情,而不是是不斷去改進所謂的趨勢策略呢?   

所以,回到深度學習的問題上,如果深度學習用來歸納過去的資料,然後來預測股票走勢,我覺得是不靠譜的。但是如果能想辦法把深度學習用在博弈問題上,那麼我覺得有可能靠譜。

我僅站在技術的角度去拋磚引玉的歸納一下這個問題,先陳述一下Deep learning的要點:

首先,Deep learning能做一切資料探勘有關的事情,區別在於你能不能結合自身的經驗去建立一個較優的模型,讓learning更加的“高效”,這種“高效”包含但不限於:學習時間、學習誤差率、學習魯棒性、學習所耗費的資源等。

其次,Deep learning處理的資料前期至少要求是相對全面的,不全面的資料、甚至如果有重要的資料有所隱藏,對於任何學習模型來講基本都是災難的。(假設世界上除了男人、女人,還有第三種人,你在不知道的情況下如何去分類?怎麼分類都是錯的)

再次,Deep learning所謂的模型,對於目前而言,受限於基礎理論,建立模型的過程是漸進的、甚至是需要人工的,所以“調參”的手段是有很大的“主觀成分”在裡面的,所謂的“主觀成分”不單單是說在股票行業經驗越多越好,而且要求是正確的、有體系(結構化、去噪音)的經驗,事實上,很多投資經理自身投資的過程中受限於壓力,經常帶入了很多非科學、非理性的情感,甚至犯很多基礎錯誤,導致投資失敗。也就是說:模型即使是對的,調參人員太傻比也不行!

最後,Deep learning是統計學和機器學習兩門科學的交叉科學,它的宗旨是通過統計學習方法運用機器學習的運算(實現)思路,讓機器幫我們去計算各種事件出現的概率,協助我們去分類大資料、預測新的樣本為【某個特定分類】的概率等等。但是,僅僅是“概率”,既然是“概率”必然也就只是可能性而已。

有了上面四個簡單的Deep learning基礎咱們再來看股票預測這個問題,思路會很清晰:

根據第一點股票預測這件事情肯定是可以做的,因為股票預測是資料探勘的問題,無非也就是根據一堆資料分析去得出一個分類而已:{0:漲,1:跌}。但是,用Deep learning去做靠譜嗎?

我們說這個問題取決於前面Deep learning提到的後三點:你的資料是否全面?你的模型在建立的過程當中,負責調參的人靠不靠譜?然後,介於Deep learning只是概率事件,你是不是用一次成敗去論英雄?

在提到資料全面這個問題上,我們不得不承認,在中國的股票市場是不適合用資料去預測的,因為中國的市場是有操縱嫌疑的(這個僅僅代表個人的觀點哈,不喜勿噴),很多企業的內部資料基本都是不向外開放、甚至刻意利用資訊不對稱去操縱股價,這個我就點到為止吧,相信大家都承認,扯多了就是不技術問題了,而是政策問題。

相對而言,在資料準確、全面的基礎之上,我們去做DL會好很多,但是這個時候我們也不能說DL得出的結論一定是靠譜的,因為受限於基礎理論,目前的DL基本都需要人工去調整引數,這個時候考慮的就是調參人員的經驗了。為了彌補這點,在美國華爾街,很多對衝公司都是形成一個個的專案組,一個專案組成員包含:分析員(DL、ML)、資深經理人(對股票的瞭解深入骨髓)、操盤手(負責根據DL、ML的結論操作資料)等等。但是即使這樣,由於跨界的隔閡,團隊也不一定能夠100%的建立一個牛逼的模型,這個時候就需要一個“交叉科學家”:他上知技術、下知股票行業,同時也是個很好的管理者,這樣的人員去做leader,然後協調技術和證券人員模型才能更好的建立,舉個例子:數學家西蒙斯:華爾街最賺錢的基金經理 

http://blog.sina.com.cn/s/blog_8e35b5d00101709y.html

最後提到一點Deep learning是一個概率的事件集,即使是目前看似神武圍棋DL程式alphaGo,在前期也是屢次失敗的,因為它走每一步棋都只是代表“走完這一步之後我的棋盤局面會是【相對最好】的概率”,為什麼是相對,前面提到過,受限於資源,DL不可能計算每一種可能性,利用牛頓下降法、改進梯度下降法也只能是讓我們達到區域性最優,而不是全域性最優。而即使達到全域性最優,DL運算也是給出每一種結果成功的概率,概率只是可能性。筆者自己嘗試著在10臺機器上面基於tensorflow框架跑過一個自己改造的圍棋DL程式,由於計算資源不足,導致隱節點數量和深度都只能調整很低,所以效果只能說一般(但比我自己強[害羞])。

所以,站在技術的角度,DL做股票分析是靠譜的,但是前提是你的資料得準確、調參人員兼顧技術+股票經驗、並且承認成功也只是概率事件。而且,現在在華爾街,美股市場中幾乎每家對衝基金公司都在用DL預測,只有有些公司做得好、有些公司做得差而已。筆者也從朋友那裡聽說過,目前貌似國內有個90後掌控了幾百億資金在做“量化交易”,做的是美股市場,真假我就不保證了,但是應該有。via https://www.zhihu.com/question/54542998/answer/226949686

人工智慧大資料與深度學習

搜尋新增微信公眾號:weic2c

640?wx_fmt=png

長按圖片,識別二維碼,點關注

大資料探勘DT資料分析

搜尋新增微信公眾號:datadw

教你機器學習,教你資料探勘

640?wx_fmt=jpeg

長按圖片,識別二維碼,點關注