轉發保留不錯一篇 數學模型神經網絡在程序化交易模型構建中的運用探討


數學模型神經網絡在程序化交易模型構建中的運用探討

作者:唐中

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

就交易策略而言,一般分為兩大類,一是人工策略交易即人工下單交易;二是系統策略交易。系統策略交易一般又分為人工系統策略交易和計算機程序化系統策略交易。

計算機程序化系統策略交易又分為半智能程序化系統交易和全智能程序化系統交易。本文所探討的就是后者,即數學模型神經網絡如何在全智能程序化系統策略中發揮作用。

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

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

人工神經網絡圖:人工神經網絡圖:

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

典型神經網絡結構圖:典型神經網絡結構圖:

人工神經網絡的特點和優越性:主要表現在幾個方面:第一,具有自學習功能。例如實現實現圖像識別時,只在先把許多不同的圖像樣板和對應的應識別的結果輸入人工神經網絡,網絡就會通過自學習功能,慢慢學會識別類似的圖像。自學習功能對於預測有特別重要的意義。預期未來的人工神經網絡計算機將為人類提供經濟預測、市場預測、效益預測,其應用前途是很遠大的。第二,具有聯想存儲功能。用人工神經網絡的反饋網絡就可以實現這種聯想。第三,具有高速尋找優化解的能力。尋找一個復雜問題的優化解,往往需要很大的計算量,利用一個針對某問題而設計的反饋型人工神經網絡,發揮計算機的高速運算能力,可能很快找到優化解。第四,應用領域十分廣泛,這些領域主要包括:模式識別、信息處理、知識工程、專家系統、優化組合、自動化控制,以及本文所探討的金融市場程序量化交易模型構建等等。隨着神經網絡理論本身以及相關理論、相關技術的不斷發展深入,神經網絡未來的應用定將更加深入廣泛。就金融領域自動化交易模型而言,筆者也只是試着探討而已,有不足之處還望讀者多多理解。第五,神經網絡可以用作分類、聚類、預測等,通過歷史數據的訓練,神經網絡可以學習到數據中隱含的知識,在問題中找到某些特征以及對應的評價數據,用這些數據來訓練神經網絡,進而達到自適應功能,其應用較廣泛的就是BP神經網絡。

數學模型中常用的兩種神經網絡:在數學建模中,常用的神經網絡主要有兩種:一種是基於誤差反轉算法的前饋神經網絡,即BP神經網絡,主要用來實現非線性映射;另一種是SOM自組織特征映射神經網絡(SOM),主要用來聚類和模式識別。它們兩者在內在結構上有所區別,下面就分別對其進行簡要說明:

BP神經網絡:人工神經網絡有很多模型,但是目前應用較廣泛的是前饋神經網絡中的誤差逆傳播學習算法(Error Back Propagation),簡稱為BP神經網絡。它是前饋神經網絡中的核心部分。基本算法包括2個方面,即信息的前向輸入和誤差的反向輸入,計算實際輸出時是按從輸入到輸出的方向進行,而權值和閾值的修正從輸出到輸入的方向進行。其結構圖如下:

BP神經網絡基本結構圖BP神經網絡基本結構圖

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

BP網絡結構BP網絡結構

在這里我想特別強調權值和閾值的概念,因為它們很重要,關系到網絡最后的結果。權值和閾值是神經元之間的連接,將數據輸入計算出一個輸出,然后與實際輸出比較,誤差反傳,不斷調整權值和閾值。理論上而言,BP網絡以其優良的非線性逼近性能,在模式識別、智能控制、非線性優化等領域都有大量應用,近年也有不少人用BP神經網絡應用在股指期貨日內短模自動化交易上。BP網絡的理論優勢主要表現在學習速度和泛化能力上,甚至不需要過多樣本,較適合非線性特征,學習速度表現在滿意地逼近訓練樣本所花費的時間上,泛化能力表現在對未訓練樣本的逼近程度上,既能夠根據訓練集的表現高度擬合未來數據即預測功能,這是一個神經網絡是否優良的根本考驗,BP神經網絡在理論推導上似乎完全能做到。

可是真的是這樣嗎?為什么很多運用BP網絡神經模型構建起來的交易模型實踐效果並非如訓練集效果那樣好甚至出現巨大誤差呢?

泛化能力並沒有得到充分體現,這又是什么原因呢?就此筆者淺談點個人看法如下:

1、  很多人過於盲信BP神經網絡的數據自適應糾錯、數據容錯和數據泛化能力,特別疏於對歷史樣本數據的收集、層次篩選及數據內含性質甄別,缺乏對研究標的樣本數據含有的內在本質規律進行挖掘和體驗,導致樣本數據噪聲過大、結構不合理不科學。通常而言,樣本數據M增加,泛化能力增加。

樣本數據訓練效果好,泛化效果也越好。但這種趨勢有個極限和度,當達到某個極限時,隨着訓練能力的提高,預測能力反而下降,陷入兩個極端,要么樣本數據存在嚴重不足和缺陷,要么樣本數據過多過細出現過擬現象。

這兩種現象都是學習了過多數據樣本細節,過於注重數據現象,而不能反映樣本內含有的本質性規律,這也是BP神經網絡的缺陷,過大強調因數據而預測數據,過於放大自適應預測,卻不注重樣本數據內在性質上本質規律的挖掘,自然容易走偏,甚至在某些特定階段擬合出錯誤的規律,尤其不適應中線趨勢波段交易模型構建。

2、  采用BP網絡設計程序化交易模型很容易陷入“自下而上”的模型理念構建陷阱,導入過大數據噪聲,這是程序化交易模型設計者要盡量避免的。

通常而言,在程序化模型主體設計理念上分為“自上而下和自下而上兩種”,前者是理念優先,后者是數據優先。后面會講到它們之間的區別。

3、  由於學習速率是固定的,因此網絡的收斂速度慢,需要較長的訓練時間。對於一些復雜問題,BP算法需要的訓練時間可能非常長,這主要是由於學習速率太小造成的。

4、  其次,BP算法可以使權值收斂到某個值,但並不保證其為誤差平面的全局最小值,這是因為采用梯度下降法可能產生一個局部最小值。

5、  網絡隱含層的層數和單元數的選擇尚無理論上的指導,一般是根據經驗或者通過反復實驗確定。因此,網絡往往存在很大的冗余性,在一定程度上也增加了網絡學習的負擔。

6、  網絡的學習和記憶具有不穩定性。也就是說,如果增加了學習樣本,訓練好的網絡就需要從頭開始訓練,對於以前的權值和閾值是沒有記憶的。但是可以將預測、分類或聚類做的比較好的權值保存。

基於上述原因,簡單采用BP神經網絡運用於金融市場的程序化交易模型的構建主體還是有一定的局限性,需要結合其他神經網絡效果應該會更好。

SOM自組織特征映射神經網絡:生物學研究表明,人的大腦皮層中存在許多不同功能的神經網絡區域,每個功能區域完成各自的特定功能,在接受特定信息刺激時也會做出相應特定的反應,這種特定細胞對特定信號的特別反應並不是天生的而是后天訓練形成的。

自組織特征映射神經網絡模擬大腦神經系統功能,是一種無監督競爭試學習的前饋網絡,在訓練中能無監督自組織學習,它通過學習可以提取一組數據中的重要特征或某種內在規律,按離散方式進行分類,網絡可以把任意高維的輸入映射到低維空間,並且使得輸入數據內部的相似性質表現為臨近的特征映射,並保持其拓撲結構不變,這種分類反映了樣本集的本質區別,大大簡化了一致性准則中的人為因素。

在多數情況下,人在認識的過程中沒有預知的正確模式,人獲得大量知識常常是靠“無師自通”,即通過對客觀事物的反復觀察、分析與比較,自行揭示其內在規律,並對具有共同特征的事物進行分類歸類,對於人的這種學習方式,基於有導師學習策略的神經網絡(BP)是無能為力的。

所以,自組織神經網絡的無導師學習方式更類似於人類大腦中生物神經網絡的學習,其最重要特點是通過自尋找樣本中的內在規律和本質屬性,自組織自適應地改變網絡參數與結構,這種學習方式大大拓寬神經網絡在模式識別、分類、聚類方面的應用。自組織網絡結構屬於層次型網絡結構,有多種類型。

自組織特征映射是其中之一,它們的共同特點是競爭層。一般自組織神經網絡是輸入層、競爭層、輸出層結構,輸入層接受外界信號,向競爭層傳輸,競爭層負責對該輸入模式進行分析比較、找出規律、正確分類。

SOM自組織神經網絡結構圖SOM自組織神經網絡結構圖

產生模型過擬合的一般原因:

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個點也很普遍,這必然會大大增加日內高頻交易的滑點成本,若不修正模型必然不會適應。前幾年,做股指高頻交易的人都發財了,一年十倍的都有,但是現在呢,高頻交易已經屬於自殺了。

為什么?

因為市場上精明的交易者越來越多了,當你的對手還在用肉搏的時候,你有一把手槍就可以稱王,但是現在,別人都開上飛機了。以前套利盈利很容易,但是現在套利盈利越來越難,套利空間越來越少,因為參與套利的人越來越多且都是電腦程序化自動識別,稍有點套利空間立馬就有交易者以最快的速度修補價差的不合理性,價差空間會被市場迅速修補,盈利機會越來越少。

另外一個重要問題就是交易環境也是會變化的,比如今年,期貨夜盤的大量推出,導致不同時間段的交易分布不再均勻,開收盤時間出現了扭曲,很多交易系統便不能適應了。所以交易系統必須時時對模型效果進行跟蹤維護和修補,甚至必要時直接宣布它死亡。市場歷史會不斷重演這是毋庸置疑的,但是其表現方式又不完全簡單重復,表現方式是會變化的,環境的不同會導致局部的差異,所以交易系統的跟蹤維護絕對是必要的,模型也不是萬能不變的,即使本質上的東西也會在某些特定環境發生階段性變異。

http://finance.sina.com.cn/money/future/fmnews/2015-11-09/detail-ifxknutf1639044.shtml


注意!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系我们删除。



 
粤ICP备14056181号  © 2014-2021 ITdaan.com