聚財網 wearn.com 首頁
 
 查閱主題:人工神經網路在程式交易中的探討 短網址
[閱文紀錄]1500 次讀取 本主題只有一頁
Victoir:人工神經網路在程式交易中的探討   將本主題只顯示我的回覆 僅顯示作者   將本主題加入我的收藏 加入收藏  加黑名單

 聲望:5203
 個人著作


請  
收通知

  發表時間 
轉貼

人工神經網路在程式交易中的探討

重點摘要:

近幾年高頻交易獲利的空間越來越小,原因何在?
因為市場上精明的交易者越來越多了,當你的對手還在用肉搏的時候,你有一把手槍就可以稱王,但是現在,別人都開上飛機了。以前套利盈利很容易,但是現在套利盈利越來越難,套利空間越來越少,因為參與套利的人越來越多且都是電腦程式化自動識別,稍有點套利空間立馬就有交易者以最快的速度修補價差的不合理性,價差空間會被市場迅速修補,盈利機會越來越少。
 另外一個重要問題就是交易環境也是會變化的,比如今年,期貨夜盤的大量推出,導致不同時間段的交易分佈不再均勻,開收盤時間出現了扭曲,很多交易系統便不能適應了。所以交易系統必須時時對模型效果進行跟蹤維護和修補,甚至必要時直接宣佈它死亡。市場歷史會不斷重演這是毋庸置疑的,但是其表現方式又不完全簡單重複,表現方式是會變化的,環境的不同會導致局部的差異,所以交易系統的跟蹤維護絕對是必要的,模型也不是萬能不變的,即使本質上的東西也會在某些特定環境發生階段性變異。

本文:

目前,程式交易已經成為國外投行和金融機構交易的主流手法,因為程式交易是追求穩定持續的盈利模式,能夠實現交易的穩定化,從而杜絕人工交易中的諸多不確定性和規避人性情緒化的干擾,雖然程式交易本身只是一個工具,用人的思想加上電腦的執行,但是真正專業的程式化模型設計過程卻不那麼簡單。

  就交易策略而言,一般分為兩大類,一是人工策略交易即人工下單交易;二是系統原則交易。系統原則交易一般又分為人工系統原則交易電腦程式化系統原則交易

  電腦程式化系統原則交易又分為半智能程式化系統交易全智能程式化系統交易。本文所探討的就是後者,即數學模型神經網路如何在全智能程式化系統原則中發揮作用。

  神經網路:我們在此所稱的神經網路一般指人工神經網路,是一種旨在模仿人腦結構及其功能的資訊處理系統。人工神經網路是一種應用類似於大腦神經聯接的結構進行資訊處理的數學模型。在工程與學術界也常直接簡稱為神經網路或類神經網路。神經網路是一種運算模型,由大量的節點(或稱神經元)之間相互聯接構成。每個節點代表一種特定的輸出函數,稱為激勵函數(activationfunction)。每兩個節點間的連接都代表一個對於通過該連接信號的加權值,稱之為權重,這相當於人工神經網路的記憶。網路的輸出則依網路的連接方式,權重值和激勵函數的不同而不同。而網路自身通常都是對自然界某種演算法或者函數的逼近,也可能是對一種邏輯策略的表達。人工神經網路通常是通過一個基於數學統計學類型的學習方法(Learning Method)得以優化,所以人工神經網路也是數學統計學方法的一種實際應用,通過統計學的標準數學方法我們能夠得到大量的可以用函數來表達的局部結構空間,另一方面在人工智能學的人工感知領域,我們通過數學統計學的應用可以來做人工感知方面的決定問題(也就是說通過統計學的方法,人工神經網路能夠類似人一樣具有簡單的決定能力和簡單的判斷能力),這種方法比起正式的邏輯學推理演算更具有優勢。

  神經網路的基本構成:神經網路主要是由神經元構成,而神經元是按照一定拓撲結構廣泛互聯形成的,並按照一定的學習規則,通過對大量樣本資料的學習和訓練,把網路掌握的知識以神經元之間的連接權值和閾值的形式儲存下來,利用這些知識可以實現某種人腦功能的推理機,這種推理機通過機械化運作方式發揮功能。人工神經元是對生物神經元的一種形式化描述,它對生物神經元的資訊處理過程進行抽象,並用數學語言予以描述,對生物神經元的結構和功能進行類比,並用模型圖給以表達。單個的人工神經元的功能是簡單的,只有通過一定的拓撲結構將大量的人工神經元廣泛連接起來,組成龐大的人工神經網路,才能實現對複雜資訊的處理與儲存,並表現出各種優越的特性。

人工神經網路在程式交易中的探討 另開


  神經網路結構:就數學模型而言,神經網路結構一般分為兩大類,即層次型結構和互聯型結構,層次型結構的神經網路將神經元按功能分為若干層,一般有輸入層、中間層和輸出層,各層順序連接。輸入層接受外部的輸入信號,並由各輸入單元傳遞給直接相連的中間層單元。中間層是網路的內部處理單元,與外部沒有直接聯繫。神經網路所具有的模式變換能力,如模式分類、模式完善、特徵提取等,主要是在中間層進行的。根據處理功能的不同,中間層可以有多層也可以為簡單層。由於中間層單元不直接與外部輸入輸出打交道。故常將神經網路的中間層稱為隱含層。輸出層是網路輸出運行結果並與顯示裝置或執行機構相連接的部分。

人工神經網路在程式交易中的探討 另開


  人工神經網路的特點和優越性:主要表現在幾個方面:第一,具有自學習功能。例如實現實現圖像識別時,只在先把許多不同的圖像樣板和對應的應識別的結果輸入人工神經網路,網路就會通過自學習功能,慢慢學會識別類似的圖像。自學習功能對於預測有特別重要的意義。預期未來的人工神經網路電腦將為人類提供經濟預測、市場預測、效益預測,其應用前途是很遠大的。第二,具有聯想存儲功能。用人工神經網路的回饋網路就可以實現這種聯想。第三,具有高速尋找優化解的能力。尋找一個複雜問題的優化解,往往需要很大的計算量,利用一個針對某問題而設計的回饋型人工神經網路,發揮電腦的高速運算能力,可能很快找到優化解。第四,應用領域十分廣泛,這些領域主要包括:模式識別、資訊處理、知識工程、專家系統、優化組合、自動化控制,以及本文所探討的金融市場程式量化交易模型構建等等。隨著神經網路理論本身以及相關理論、相關技術的不斷發展深入,神經網路未來的應用定將更加深入廣泛。就金融領域自動化交易模型而言,筆者也只是試著探討而已,有不足之處還望讀者多多理解。第五,神經網路可以用作分類、聚類、預測等,通過歷史資料的訓練,神經網路可以學習到資料中隱含的知識,在問題中找到某些特徵以及對應的評價資料,用這些資料來訓練神經網路,進而達到自我調整功能,其應用較廣泛的就是BP神經網路。
  數學模型中常用的兩種神經網路:在數學建模中,常用的神經網路主要有兩種:一種是基於誤差反轉演算法的前饋神經網路,即BP神經網路,主要用來實現非線性映射;另一種是SOM自組織特徵映射神經網路(SOM),主要用來聚類和模式識別。它們兩者在內在結構上有所區別,下面就分別對其進行簡要說明:
  BP神經網路:人工神經網路有很多模型,但是目前應用較廣泛的是前饋神經網路中的誤差逆傳播學習演算法(Error Back Propagation),簡稱為BP神經網路。它是前饋神經網路中的核心部分。基本演算法包括2個方面,即資訊的前向輸入和誤差的反向輸入,計算實際輸出時是按從輸入到輸出的方向進行,而權值和閾值的修正從輸出到輸入的方向進行。其結構圖如下:
 

人工神經網路在程式交易中的探討 另開


  BP網路結構是信號前向傳播導入,經輸入層到中間隱含層實現正向傳播,若輸出層得到期望值,則學習演算法結束。若未得到期望值則反向傳播,將誤差信號按原連接通路反向計算,根據誤差梯度下降法再調節前各層的權值和閾值,權值和閾值隨著更多正向資訊變數和反向資訊變數的不斷進入從而始終處於動態調節之中,目的就是使修改後的網路最終輸出能接近最佳期望值。通俗點比喻就類似一個人的成長經歷,在成長過程中不斷糾正錯誤,不斷吸取教訓,還不斷總結成功經驗,以免下次再犯同樣錯誤。其模型結構圖見下:
 

人工神經網路在程式交易中的探討 另開


  在這裡我想特別強調權值和閾值的概念,因為它們很重要,關係到網路最後的結果。權值和閾值是神經元之間的連接,將資料登錄計算出一個輸出,然後與實際輸出比較,誤差反傳,不斷調整權值和閾值。理論上而言,BP網路以其優良的非線性逼近性能,在模式識別、智能控制、非線性優化等領域都有大量應用,近年也有不少人用BP神經網路應用在股指期貨日內短模自動化交易上。BP網路的理論優勢主要表現在學習速度和泛化能力上,甚至不需要過多樣本,較適合非線性特徵,學習速度表現在滿意地逼近訓練樣本所花費的時間上,泛化能力表現在對未訓練樣本的逼近程度上,既能夠根據訓練集的表現高度擬合未來資料即預測功能,這是一個神經網路是否優良的根本考驗,BP神經網路在理論推導上似乎完全能做到。
  可是真的是這樣嗎?為什麼很多運用BP網路神經模型構建起來的交易模型實踐效果並非如訓練集效果那樣好甚至出現巨大誤差呢?
   泛化能力並沒有得到充分體現,這又是什麼原因呢?就此筆者淺談點個人看法如下:
  1、 很多人過於盲信BP神經網路的資料自我調整糾錯、資料容錯和資料泛化能力,特別疏於對歷史樣本資料的收集、層次篩選及資料內含性質甄別,缺乏對研究標的樣本資料含有的內在本質規律進行挖掘和體驗,導致樣本資料雜訊過大、結構不合理不科學。通常而言,樣本資料M增加,泛化能力增加。
  樣本資料訓練效果好,泛化效果也越好。但這種趨勢有個極限和度,當達到某個極限時,隨著訓練能力的提高,預測能力反而下降,陷入兩個極端,要麼樣本資料存在嚴重不足和缺陷,要麼樣本資料過多過細出現過擬現象。
  這兩種現象都是學習了過多資料樣本細節,過於注重資料現象,而不能反映樣本內含有的本質性規律,這也是BP神經網路的缺陷,過大強調因數據而預測資料,過於放大自我調整預測,卻不注重樣本資料內在性質上本質規律的挖掘,自然容易走偏,甚至在某些特定階段擬合出錯誤的規律,尤其不適應中線趨勢波段交易模型構建。
  2、 採用BP網路設計程式交易模型很容易陷入“自下而上”的模型理念構建陷阱,導入過大資料雜訊,這是程式交易模型設計者要儘量避免的。
  通常而言,在程式化模型主體設計理念上分為“自上而下和自下而上兩種”,前者是理念優先,後者是資料優先。後面會講到它們之間的區別。
  3、 由於學習速率是固定的,因此網路的收斂速度慢,需要較長的訓練時間。對於一些複雜問題,BP演算法需要的訓練時間可能非常長,這主要是由於學習速率太小造成的。
  4、 其次,BP演算法可以使權值收斂到某個值,但並不保證其為誤差平面的全域最小值,這是因為採用梯度下降法可能產生一個局部最小值。
  5、 網路隱含層的層數和單元數的選擇尚無理論上的指導,一般是根據經驗或者通過反復實驗確定。因此,網路往往存在很大的冗餘性,在一定程度上也增加了網路學習的負擔。
  6、 網路的學習和記憶具有不穩定性。也就是說,如果增加了學習樣本,訓練好的網路就需要從頭開始訓練,對於以前的權值和閾值是沒有記憶的。但是可以將預測、分類或聚類做的比較好的權值保存。
  基於上述原因,簡單採用BP神經網路運用於金融市場的程式交易模型的構建主體還是有一定的局限性,需要結合其他神經網路效果應該會更好。
  SOM自組織特徵映射神經網路:生物學研究表明,人的大腦皮層中存在許多不同功能的神經網路區域,每個功能區域完成各自的特定功能,在接受特定資訊刺激時也會做出相應特定的反應,這種特定細胞對特定信號的特別反應並不是天生的而是後天訓練形成的。
  自組織特徵映射神經網路類比大腦神經系統功能,是一種無監督競爭試學習的前饋網路,在訓練中能無監督自組織學習,它通過學習可以提取一組資料中的重要特徵或某種內在規律,按離散方式進行分類,網路可以把任意高維的輸入映射到低維空間,並且使得輸入資料內部的相似性質表現為臨近的特徵映射,並保持其拓撲結構不變,這種分類反映了樣本集的本質區別,大大簡化了一致性準則中的人為因素。
  在多數情況下,人在認識的過程中沒有預知的正確模式,人獲得大量知識常常是靠“無師自通”,即通過對客觀事物的反復觀察、分析與比較,自行揭示其內在規律,並對具有共同特徵的事物進行分類歸類,對於人的這種學習方式,基於有導師學習策略的神經網路(BP)是無能為力的。
  所以,自組織神經網路的無導師學習方式更類似於人類大腦中生物神經網路的學習,其最重要特點是通過自尋找樣本中的內在規律和本質屬性,自組織自我調整地改變網路參數與結構,這種學習方式大大拓寬神經網路在模式識別、分類、聚類方面的應用。自組織網路結構屬於層次型網路結構,有多種類型。
  自組織特徵映射是其中之一,它們的共同特點是競爭層。一般自組織神經網路是輸入層、競爭層、輸出層結構,輸入層接受外界信號,向競爭層傳輸,競爭層負責對該輸入模式進行分析比較、找出規律、正確分類。

人工神經網路在程式交易中的探討 另開


  產生模型過擬合的一般原因:
  A、資料抽樣時沒有足夠正確考慮到市場基本特點,導致抽出的資料樣本不能有效足夠代表市場運行邏輯或基本特徵(市場運行規律),這往往是BP網路模型所忽略的;
  B、資料樣本噪音資料干擾過大,大到模型過分記住了噪音特徵,反而忽略了真實的輸入輸出間的關係,即忽略了本質,模型設計始終沒抓住核心價值;
  C、 在決策樹模型搭建中,如果我們對於決策樹的生長沒有合理的限制和修剪的話,決策樹的自由生長有可能每片葉子裡只包含單純的事件資料(event)或非事件資料(no event),可以想像,這種決策樹當然可以完美匹配(擬合)訓練資料,但是一旦應用到新的業務真實資料時,效果就不理想。樣本訓練集尤其關鍵條件不要過度細化,要適當限制和修剪。
  D、在建模時的“邏輯假設”到了模型應用時已經不能成立了。常用模型都是在假設的基礎上才可以搭建和應用的,常用的假設包括:假設“歷史資料可以推測未來,市場歷史會重演”,假設業務環節沒有發生顯著變化,假設建模資料與後來的應用資料是相似的,等等。如果上述假設違反了業務場景或者環境發送了變化的話,根據這些假設搭建的模型就有可能無法有效應用。
  BP與SOM優劣:在金融市場中的量化模型構建中到底應採用BP還是SOM?這要看投資標的、交易理念及模型構建者的投資經驗而定了,筆者個人認為SOM神經網路特徵映射應更適合有一定投資經驗和交易理念的人,這更有利於思考市場運動的本質,而非特定階段的資料擬合,從而提前避免資料陷阱過擬合,更貼近實戰性和適應性。
  所以SOM神經網路對模型構建者而言一般要求具備一定的投資理念和經驗作為基礎,也就是先理念後建模。具體而言,SOM神經網路首先在數學建模中根據廣泛性的歷史樣本理化出性狀,並對樣本進行正確的分類和歸類,通過對已知的樣本所蘊含的分類知識進行學習、提煉出某種基本的規律和特徵,再利用這種分類規律特徵效驗交易理念。
  SOM網路是直接從所提供的樣本內部學習分類知識,提煉出蘊含在樣本中的相關知識,並將這些知識儲存在網路的連接之中即拓撲結構互聯,利用這些知識可以對未知的樣本進行歸類,建立推理機,為了防止資料陷阱和過擬合,提煉出的樣本特徵規律,要放在不同的訓練集測試並同時具有廣度性和深度性。
  全智能程式交易模型系統的構建思路:搞全智能程式交易模型設計,是絕對離不開神經網路知識的運用的,當今的市場走勢更加複雜多變,若想用一種過於簡單的某個突破理念就想在當今變換複雜的市場面前盈利已成為歷史,精明的交易者越來越多,波動特性越來越複雜多變,面對現今更加複雜變換的市場,必須要運用更加複雜的知識工具,才能不斷適應市場。因此,數學模型中的神經網路知識運用必不可少。
  只是若單純採用BP神經網路構建模型是有一定缺陷的,它的作用主要體現在樣本訓練集階段,SOM網路更多可以達到檢驗理念和優化理念作用,因為理念一定是本質性的(下面會具體闡述),若程式化模型完全依靠數學模型神經網路而忽略市場運動的本質性,很容易陷入過擬合狀態和資料陷阱,實盤效果一般不會理想,這是程式交易的另一弊病。
  因此,如何在運用數學模型神經網路知識的同時又要避免陷入資料陷阱應是程式化模型設計的主要方向。
  程式主體設計理念:要解決上面的問題,首先要解決程式化設計理念問題,這是決定模型方向的問題,否則很容易陷入資料陷阱。在程式化主體設計理念上,一般分為“自上而下”的理念構建和“自下而上”的理念構建。“自上而下”的理念構建是先有交易理念,這個交易理念往往是建立在多年實戰基礎上,是經年累月反復的市場觀察、體會、領悟和實踐得出的初步經驗,這個經驗具有普適性、本質性,以此作為模型理念主要架構,再通過理念反推導構建交易系統,並將其程式化。
  比如索羅斯的交易系統,便是由他的反射理論推導構建出的交易程式。相反,一個無經驗的新手,就很容易陷入資料陷阱和過度擬合狀態,因為他們普遍不具備“自上而下”構建模型理念的能力經驗,即對市場缺乏深刻的認識、領會及經驗,只能盲目“自下而上”構建模型理念。
  而“自下而上”的建模理念往往不具有未來適應性或者實盤誤差大,只是純粹依據一堆某個特定時期的資料理化出的所謂知識和訓練集,往往導入過多無關的、非本質的資料變數,偏離模型核心價值,導致資料雜訊過大,沒有考慮到模型關鍵本質性的特徵和資訊及其由此構建起來的投資理念,這種純數學訓練集構建起來的模型一到真實的實盤運用場景就很容易表現不佳,因為市場波動特性和資料樣板會隨著時間的推移而出現複雜多變狀態,市場不會出現2個完全一模一樣的走勢,歷史會重演但從來不是簡單的重複。這也就是為什麼當下很多程式交易模型實盤效果不佳的根本原因,過於注重資料理論推導忽略本質理念。
  交易系統的優化:有些程式交易者反對優化,因為優化過度會使交易系統適用於過去而無用於將來,即優化陷阱。其實這也是一個“度”的問題,過於簡單的模型已經不適應當下及未來市場,過於複雜的模型又有可能陷入過度擬合陷阱,因此,我個人認為這裡的關鍵就是看你採用的是資料優化還是理念優化,自下而上的模型理念設計往往是資料優化。
  打個比方,一個交易系統設計的理念是順勢突破交易法,如海龜交易法(突破20週期高低點),資料優化就是尋找突破N週期的最合適數值,而理念優化則是尋找比單純的突破法更優秀更高效的交易思維或理念或組合。
  任何模型交易理念的雛形首先是基於個人實戰經驗、觀察和邏輯思考得來,而這種理念還需要通過海量資料檢測才可以進一步檢驗出交易理念的優劣,而這個過程是離不開數學模型神經網路尤其SOM網路知識運用的,如合理抽樣、樣本理化、特徵提煉、知識提煉、分類等,在這個過程中就可以進一步檢驗交易理念雛形是否正確以及進行必要的修正優化。
  運用“層次型拓撲結構和SOM神經網路”應該就可以達到這個目的,找到交易理念的不足和優劣之處,去其糟粕取其精華,進而才能進一步核對總和確認模型的核心理念價值,這個核心交易理念是決定模型是否具有未來適應性和實盤性的保障,因為市場波動特性雖然多變,但萬變不離其終,人類的本質特性幾百年從未改變,市場也是一樣。
  系統整合:一套成熟優秀的程式交易模型一定是系統整合的結果,交易過程是一個完備的有機體系,包括:模型構建基本理念和方式、交易策略、方向識別、資訊處理、信號傳輸、執行、止盈停損離市策略、風險控制/穩定性控制等等,每個子系統都不是各自單打獨鬥,單個子系統的不合理設計也會影響到整個交易系統的表現,整體系統表現往往取決於各個子系統最佳協調組合的結果,形成一套完整運行的交易體系,這個體系是否優秀可以從三個方面檢驗,即“外推、性質和量化”,“外推”是檢驗模型在實盤前是否具有盈利前景和未來適應性的一個重要方法,一般分為時間外推和品種外推,即把模型放在不同資料集、不同抽樣時間段、多角度多層次進行交叉回測,放在多個品種上進行多品種程式回測;所謂“性質”就是要避免三個方向,一是儘量避免超高頻率交易;二是儘量避免自下而上構建模型交易理念;三是模型設計內容要以接近實戰為原則,信號執行方式最好採用收盤價模型,必須要考慮到市場實際情況及滑價損失和交易成本因素等;所謂“量化”就是模型最終要有資料做支撐,用回測指標說話,任何模型首先必須要經得起過去歷史資料的回測檢驗並得到各種滿意的量化指標,
  如:年化收益率、盈利率、本金回撤、動態權益回撤、動態損益回撤、勝率、盈虧比、夏普比率、交易成本及滑價預估,最後還要觀察這些指標在不同的回測階段是否具有明顯的變化規律等等,任何模型若連歷史資料回測都無法過關,那可以肯定不會適用于未來,雖然回測過關並不代表一定適應未來,但一套成熟優秀的模型一般在設計階段都會提前過濾和規避掉實盤中可能面臨的誤差,也會經得起實盤考驗。
  交易系統的實盤使用和維護:市場行情波動特徵也是會變的,主要表現在波動特性和交易環境上。舉例來說,2002到2005年,只要有個最單純最簡單的均線系統,就可以發財。2005年以後這樣簡單的系統獲利已經不穩定,而09年以後,基本就不可能再用來獲利了。
  又如2015年2月前,股指日間成交跳價單位一般不大都在1個點以內,停損控制很容易執行且不會產生過大滑價,可是到了2015年5月後,日間成交跳價單位變化甚至達到5個點、10個點也很普遍,這必然會大大增加日內高頻交易的滑價成本,若不修正模型必然不會適應。前幾年,做股指高頻交易的人都發財了,一年十倍的都有,但是現在呢,高頻交易已經屬於自殺了。
  為什麼?
  因為市場上精明的交易者越來越多了,當你的對手還在用肉搏的時候,你有一把手槍就可以稱王,但是現在,別人都開上飛機了。以前套利盈利很容易,但是現在套利盈利越來越難,套利空間越來越少,因為參與套利的人越來越多且都是電腦程式化自動識別,稍有點套利空間立馬就有交易者以最快的速度修補價差的不合理性,價差空間會被市場迅速修補,盈利機會越來越少。
  另外一個重要問題就是交易環境也是會變化的,比如今年,期貨夜盤的大量推出,導致不同時間段的交易分佈不再均勻,開收盤時間出現了扭曲,很多交易系統便不能適應了。所以交易系統必須時時對模型效果進行跟蹤維護和修補,甚至必要時直接宣佈它死亡。市場歷史會不斷重演這是毋庸置疑的,但是其表現方式又不完全簡單重複,表現方式是會變化的,環境的不同會導致局部的差異,所以交易系統的跟蹤維護絕對是必要的,模型也不是萬能不變的,即使本質上的東西也會在某些特定環境發生階段性變異。





在這刊登您的廣告


 
本主題只有一頁。
作者上一篇主題作者上一篇 作者下一篇作者下一篇主題

回上一頁回上一頁

回頁頂 回頁頂

短網址

聚財資訊股份有限公司 版權所有© wearn.com All Rights Reserved. TEL:02-82287755 客服時間:台北週一至週五9:00~12:00、13:00~18:00 [ 網站信箱 ]