全新任務中心上線了!
會員專屬好禮都在這

立即前往
任務中心
機器學習在演算法交易中的應用— 技術分析
收藏文章
很開心您喜歡 Trading Valley 的文章, 追蹤此作者獲得第一手的好文吧!
睿富者
字體放大


分享至 Line

分享至 Facebook

分享至 Twitter


機器學習在演算法交易中的應用— 技術分析

2016 年 6 月 29 日

 
展開

技術分析是基於價格而做出的分析,其內在原理是市場買賣雙方力量及歷史會重複的基礎下做出的概率性分析。近年來,基於概率論、統計學、逼近論等學科發展起來的機器學習(machine learning)體現了其在資料分析上的便利性與有效性,其研究動機是為了讓電腦系統具有人的學習能力以便實現人工智慧,目前廣泛應用於各個領域。本文便是將機器學習應用在證券技術分析領域,通過機器學習演算法讓電腦學習到證券歷史價格資料裡的規律,進而預測出交易訊號,實現自動化的演算法交易。

與計量分析相比,機器學習不需要事先假定具體的分析模型,機器學習模型會根據給出的訓練資料自我調整的調整模型參數,使得訓練出的參數是對訓練資料內含規律的最佳描述。其優點是擺脫了分析人員對分析模型認識的局限性(如不同的計量回歸分析模型的選擇);其缺點則是無法解釋輸入變數對輸出變數的影響。但是在股票分析預測中,特別是股票交易中,我們更關注的是預測的準確性。這也正是本文將機器學習方法應用在演算法交易中的原因。

睿富者)(期刊)機器學習投資策略短文l-機器學習在演算法交易中的應用  — 技術分析-01

使用監督式機器學習的架構來分析股票資料,主要考慮的有三個方面問題,一是輸入資料選擇與處理,二是輸出資料(目標值)的選擇與處理,第三則是模型的選擇。

一、機器學習的輸入資料

本文主要考慮了技術分析所涉及到的兩個重要分支,一是技術指標,二是股票型態。

技術指標
技術指標是對某一特定期限長度的歷史資料(包括開盤價,最高價,最低價,收盤價,成交量)通過某種演算法計算而得到的指標值。演算法的不同,指標值呈現的意義也有所不同。有人將這些技術指標簡單分爲順勢型指標和逆勢型指標,也有人進一步細分,將其分爲趨勢類、震盪類、成交量類以及人氣類。以下通過 EMA, MACD, RSI, OBV 對技術指標進行說明。

EMA (Exponential Moving Average, 指數移動平均)

指數移動平均是以指數式遞減加權的移動平均。各數值的加權影響力隨時間而指數式遞減,越近期的數據加權影響力越重,但較舊的數據也給予一定的加權值。

  • 設時間t的實際數值為Yt,而時間t的EMA則為St;時間t-1的EMA則為St-1
  • 計算時間t≥2是方(6561-TW)程式為:    St= α*Yt +(1-α)*St-1
  • 在技術分析中,不同的市場對常用天數(n值)有不同的需求,例如:某些市場普遍的n值為10日、40日、200日;有些則是5日、10日、20日、60日、120日、240日,視乎分析時期長短而定。投資者冀從移動平均線的圖表中分辨出支持位或阻力位。

MACD(Moving Average Convergence / Divergence) 指標計算及原理

  • 差離值(DIF值):利用收盤價的指數移動平均值(12日/26日)計算出差離值。公式:DIF= EMA(close,12)–EMA(close,26)
  • 訊號線(DEM值,又稱MACD值):計算出DIF後,會再畫一條(訊號線),通常是DIF的9日指數移動平均值。公式:DEM= EMA(DIF,9)
  • 直條圖或棒形圖(histogram/bar graph):接著,將DIF有與DEM的差畫成(直條圖)(MACD bar/OSC)公式:OSC = DIF- DEM

睿富者)(期刊)機器學習投資策略短文l-機器學習在演算法交易中的應用  — 技術分析-02

MACD指標主要是通過EMA、DIF和DEA(或叫MACD、DEM)這三值之間關係的研判,DIF和DEA連接起來的移動平均線的研判以及DIF減去 DEM值而繪製成的柱狀圖(BAR)的研判等來分析判斷行情,是預測股價中短期趨勢的主要的股市技術分析指標。其中,DIF是核心,DEA是輔助。DIF是快速平滑移動平均線(EMA1)和慢速平滑移動平均線(EMA2)的差。BAR柱狀圖在股市技術軟體上是用紅柱和綠柱的收縮來研判行情。

  • 差離值(DIF)形成「快線」,訊號線(DEM)形成「慢線」,當差離值(DIF)從下而上穿過訊號線(DEM),為買進訊號;相反若從上而下穿越,為賣出訊號。
  • 棒形圖會根據正負值分佈在零軸(X軸)的上下。棒形圖在零軸上方時表示走勢較強,反之則是走勢較弱。
  • 差離值由下而上穿過零軸代表市場氣氛利好股價,相反由上而下則代表利淡股價。差離值與訊號線均在零軸上方時,被稱為多頭市場,反之,則被稱為空頭市場。
  • 當股價創新低,但MACD並沒有相應創新低(牛市背離),視為利好(利多)訊息,股價跌勢或將完結。相反,若股價創新高,但MACD並沒有相應創新高(熊市背離),視為利淡(利空)訊息。更多MACD在交易中的應用讀者可參考 MOVING AVERAGE CONVERGENCE-DIVERGENCE (MACD) 

RSI (Relative Strength Index) 指標計算及原理

  • 設每天向上的變動為U,向下變動為D。
  • 在價格上升的日子:U = 當日收市價 – 昨日收市價;D = 0
  • 在價格下跌的日子:U = 0;D = 昨日收市價 – 當日收市價
  • 所謂相對強度,即U平均值及D平均值的比例:RS= EMA(U,n)/EMA(D,n)
  • 相對強弱指標計算公式為:RSI= EMA(U,n)/[EMA(D,n) +EMA(U,n)]*100%

睿富者)(期刊)機器學習投資策略短文l-機器學習在演算法交易中的應用  — 技術分析-03

  • 某證券的RSI升至70時,代表該證券已被超買(Overbought),投資者應考慮出售該證券。相反,當證券RSI跌至30時,代表證券被超賣(Oversold),投資者應購入該證券。
  • 當RSI指標與盤勢發生背離時,則代表盤勢即將反轉,若股價在創新高時,RSI沒有跟著創新高,則為轉弱訊號,下跌即將開始;若股價在創新低時,RSI沒有跟著創新低,則為轉強訊號,上漲即將開始。
  • 結合不同天期指標判斷:短天期指標向上穿越長天期指標為黃金交叉,買進;短天期指標向下穿越長天期指標時為死亡交叉,賣出。

OBV(On Balance Volume) 指標計算及原理

  • 以日為計算週期為例,其計算公式為: 當日OBV=本日值+前一日的OBV值。
  • 如果本日收盤價或指數高於前一日收盤價或指數,本日值則為正;如果本日的收盤價或指數低於前一日的收盤價,本日值則為負值;如果本日值與前一日的收盤價或指數持平,本日值則不於計算,然後計算累積成交量。這裡的成交量是指成交股票的手數。

能量潮理論成立的依據重要是:

  1. 投資者對股價的評論越不一致,成交量越大;反之,成交量就小。因此,可用成交量來判斷市場的人氣和多空雙方的力量。
  2. 重力原理(the Law of Gravity)。上升的物體遲早會下跌,而物體上升所需的能量比下跌時多。涉及到股市則可解釋為:一方面股價遲早會下跌;另一方面,股價上升時所需的能量大,因此股價的上升特別是上升初期必須有較大的成交量相配合;股價下跌時則不必耗費很大的能量,因此成交量不一定放大,甚至有萎縮趨勢。
  3. 慣性原則(Principle of inertia)。動則恒動、靜則恒靜。只有那些被投資者或主力相中的熱門股會在很大一段時間內成交量和股價的波動都比較大,而無人問津的冷門股,則會在一段時間內,成交量和股價波幅都比較小。

股票型態
我們參照了 歷史不斷重演-型態學 一文中提及的型態,通過圖像辨識的方法對股票時間序列資料進行處理,進而作為機器學習的輸入。

二、機器學習的輸出資料

在機器學習輸出資料的選擇上,由於本文策略邏輯是基於股票的趨勢交易,因此所考慮到是先將股票時間序列進行趨勢分析,進而將趨勢資訊轉化成為以風險為基準的交易訊號。通過計量模型,我們可以把股票價格序列進行趨勢分析。趨勢分析範例如下:

睿富者)(期刊)機器學習投資策略短文l-機器學習在演算法交易中的應用  — 技術分析-04

接著我們計算每一段趨勢的夏普值(Sharpe ratio)作為對應的風險交易訊號。

三、機器學習模型的選擇

大量文獻研究表明支援向量回歸(support vector regression),類神經網路(artificial neural network)相較於其他機器學習方法在處理股票資料上有較強泛化能力及較高的預測準確性。支援向量回歸是支援向量機(support vector machine)的一種變形,它屬於非線性回歸(nonlinear regression)的一種方法,藉由增列資料的特徵(feature),建構一個或多個高維度的超平面來分類資料點。類神經網路屬於一種平行計算系統,它由許多神經元(artificial neurons)或節點(nodes)組成。概念上,類神經網路是模仿人腦的神經元網路,建立以下模型:每個神經元代表一種特定的輸入/輸出函數,以其它神經元或外部環境取得輸入資料,通過運算程式處理後,輸出其結果到其它神經元或外界。

本文選擇機器學習模型為支援向量回歸及類神經網路。通過這兩種機器學習演算法對目標歷史資料進行學習,分別構建技術指標與交易訊號、股票型態與交易訊號之間的量化聯繫,這種量化聯繫可用來預測交易訊號。

根據上述的演算法,我們分別構建了中低頻交易策略與中高頻交易策略。在中低頻資料上,對大陸、臺灣、韓國、及美國四個不同市場的日資料進行了測試。發現以技術指標作為訓練模型的輸入資料時,在大陸和臺灣市場上有可觀的收益;以型態評分資料作為訓練模型輸入資料時,在大陸和韓國市場上有可觀收益。至於在日內5分鐘的中高頻資料上,對大陸股指期貨,及主要商品期貨產品進行了測試,發現在波動較高的期貨產品中有較好的回測績效。

以下列舉對三個大陸市場的實證分析,並考慮交易成本,各圖中黑色曲線表示對標的資產以 buy and hold 策略交易的回測績效,紅色曲線表示機器學習產生交易策略的回測績效。至於相對應的表內則顯示機器學習所產生交易策略的統計量。

睿富者)(期刊)機器學習投資策略短文l-機器學習在演算法交易中的應用  — 技術分析-05

 
週餘
 
 
分享文章
分享至 Line
分享至 Facebook
分享至 Twitter
收藏 已收藏
很開心您喜歡 Trading Valley 的文章, 追蹤此作者獲得第一手的好文吧!
睿富者
分享至 Line
分享至 Facebook
分享至 Twitter
地圖推薦
 
推薦您和本文相關的多維知識內容
什麼是地圖推薦?
推薦您和本文相關的多維知識內容