什麼?!AI也看得懂k線圖?利用機器學習來判斷股票漲跌。(2)台股實測

更新於 發佈於 閱讀時間約 3 分鐘
  • 文內如有投資理財相關經驗、知識、資訊等內容,皆為創作者個人分享行為。
  • 有價證券、指數與衍生性商品之數據資料,僅供輔助說明之用,不代表創作者投資決策之推介及建議。
  • 閱讀同時,請審慎思考自身條件及自我決策,並應有為決策負責之事前認知。
  • 方格子希望您能從這些分享內容汲取投資養份,養成獨立思考的能力、判斷、行動,成就最適合您的投資理財模式。
raw-image



還沒有看過上一篇的可以點擊下面連結

什麼?!AI也看得懂k線圖?利用機器學習來判斷股票漲跌。(1)論文解析

這一篇會把注意力放在論文提到的技術並套用在台股市場,也會使用論文中的方法進行驗證,看看是否在台股也有一樣的超額報酬。



資料生成

第一步也是最難的一步-資料生成。

這裡使用到的資料為股票的開盤價、收盤價、最高價、最低價、成交量。需要先把這些資料標準化,再轉換成0和1的二維陣列,最後將二維陣列轉換成黑白的像素線圖。

我使用finlab的python套件獲取開高低收量的資料後,就能夠轉換成以下不同週期的線圖。


5日線圖

5日線圖


20線圖

20線圖

60日線圖

60日線圖


可以看到,除了依照周期區分之外,也可以依照是否使用均線/成交量,產生不同的線圖資料,進而訓練不同的模型。

同時也可以注意到,線圖中沒辦法得知是哪隻股票、股價、成交量為何,所呈現的都是標準化後的資訊。


資料切割

finlab的資料集橫跨2007-2023年,依照論文的方式,拿前三分之一作為訓練及驗證,最後三分之二做測試。

raw-image


2007-2011年的資料轉換成線圖後,會隨機打亂,並切割成訓練集(90%)和驗證集(10%)。2012-2023年的資料則會在模型訓練好後,作為實測的測試集。


模型訓練

這裡選擇訓練的模型是I5/R5,也就是拿五日的線圖去預測五日後的漲跌,而使用的線圖是包含均線以及成交量的。

會選擇這個模型當作實驗是因為他在論文中的表現是最好的。然而,在接下來的finlab實際回測中,我會使用不同模型進行回測。這將包含使用不同的時間週期、不同的線圖變化(如有無均線及成交量)。這些模型在不同量化策略下會有不同的效果,這裡就先賣個關子了。

模型的架構以及參數都比照論文的設定,如下圖。

模型架構圖

模型架構圖

訓練會持續直到驗證集的loss持續兩個epochs都沒辦法進步為止。


實驗結果

這裡會使用到2012-2023年的資料進行實驗。

首先是十等分的實驗。將模型預測出來的結果依照分數進行排序,並切成十等分。第一分位代表預測的數字越低,而第十分位則最高。結果如下圖

十等分圖

十等分圖


可以發現,隨著預測的分數越高,報酬率也跟著上升。紅色的線代表0050的平均報酬,從第五分位開始打敗0050的報酬。

論文中的第一分位平均報酬為負的,在這樣的條件下作多空對沖非常適合。然而在台股市場上並沒有這樣的條件,做多空對沖的話反而會拉低報酬,不過如果想要更平滑的報酬曲線的話仍然可以使用多空對沖。

raw-image

上圖為實際操作的流程。首先會將股價資訊轉換成線圖,接著會透過CNN模型預測上漲下跌機率,根據上漲的機率進行排序後,買入前n檔股票,每五日做一次換股。

假設n=20。則買進前20檔、多空對沖(買進前20同時放空後20檔)、以及0050的走勢比較圖如下。

n=20

n=20


可以看到只買進前二十檔的績效遠超過0050的報酬,而多空對沖則和0050相當,不過曲線更為平滑一些。

假設n=10%。則買進前10%、多空對沖(買進前10%同時放空後10%)、以及0050的走勢比較圖如下。

n=10%(約203檔)

n=10%(約203檔)


可以發現只買進前10%的報酬雖然下降,但仍然很明顯的大敗大盤,而多空對沖的策略則更加平滑,但報酬也跟著降低了。



總結

上一篇主要在介紹論文中的方法,這一篇則是把論文中的方法套用在台股上實驗。可以發現這個方法(或說這個因子)在台股上也是十分顯著有用的,下一篇我將把這個因子結合finlab上的策略進行優化。

覺得有幫助或是有趣的歡迎點贊關注,也歡迎贊助~。🙇

avatar-img
29會員
11內容數
這個專題會分享有關投資、量化、因子以及機器學習相關的內容。主要會以我有興趣的內容進行分享,希望能透過實際回測及實驗做為佐證,找尋股票市場中的ALPHA。
留言0
查看全部
avatar-img
發表第一個留言支持創作者!
Li way Cheng的沙龍 的其他內容
前言 這個系列打算分三篇來完成。 第一篇先來解析論文中的方法以及實驗結果。 第二篇會把這篇論文應用在台股上,評估效果如何。 第三篇會把這篇論文實作成因子套用在Finlab上進行回測。 動機 今天要介紹的論文是這篇 (Re-)Imag(in)ing Price Trends。會知道
前言 這個系列打算分三篇來完成。 第一篇先來解析論文中的方法以及實驗結果。 第二篇會把這篇論文應用在台股上,評估效果如何。 第三篇會把這篇論文實作成因子套用在Finlab上進行回測。 動機 今天要介紹的論文是這篇 (Re-)Imag(in)ing Price Trends。會知道
你可能也想看
Google News 追蹤
Thumbnail
嘿,大家新年快樂~ 新年大家都在做什麼呢? 跨年夜的我趕工製作某個外包設計案,在工作告一段落時趕上倒數。 然後和兩個小孩過了一個忙亂的元旦。在深夜時刻,看到朋友傳來的解籤網站,興致勃勃熬夜體驗了一下,覺得非常好玩,或許有人玩過了,但還是想寫上來分享紀錄一下~
Thumbnail
前期提要:Alpha訂閱-02-(8/9盤後筆記) 量縮逼近技術面壓力帶,多空楚河漢界待數據。 回顧週一(8/12)觀察股池: 分時走勢可觀察區間內K棒型態,接近上緣未能突破就停利、跌破下緣停損需即時。 1.台積電(矽智財) 日線:上檔仍有月線壓,留意公布數據可能回測前天低。 2.直得(
Thumbnail
台股大盤動向(截至 07/26 收盤) 成交量 3,855 億,連續兩天低於四千億,外資賣超 236.08 億,投信反手買超 94.32 億 成交值前 20 名聚焦在 AI 伺服器、散熱、ABF載板、IC 設計、重電、半導體設備 週二盤中下挫300點以上,隨即權值股一路收斂跌幅,最後尾盤翻紅。
Thumbnail
雖然已經使用技術分析那麼多年,但是偶而還是不免會懷疑打了點小問號,因為台股漲到這邊真的覺得已經超乎預期跟想像,技術面漲滿足估算真的會發生嗎...
Thumbnail
本研究使用了盤中逐筆成交資料(Tick-by-tick Data)來進行股票價格的預測,並討論了馬可夫鏈模型和擴散核模型在這方面的應用。研究結果表明,大多數股票的未來三秒價格可以在少於22個狀態中找到,顯示了交易價格的低不確定性。此外,研究還發現波動性更大和價格更高的股票更難以準確預測。
Thumbnail
作者 Only 系列文章,【一天一千字,進化每一次】很多股票投資人,都想要預測,什麼時候股票會漲,什麼時候股票會跌,但是最廣為人的K線等技術指標,最容易失靈的原因,他是透過歷史數據而形成的走勢圖,就好像看這後照鏡開車,所以使用景氣燈號,是一個更好的方法。
Thumbnail
若前陣子有一直觀察18904-18992這個不到一百點的區間一直作區間震盪,從未帶量的假突破到跌破後快速無量站回區間內,直到周五還是在此區間內遊走,這就是盤整時會呈現的狀態,而區間要突破時,不論時往上或往下,通常採用跳空模式一舉攻破效益最高,這也是先前股價一直創新高的模式
Thumbnail
本文為技術分析進階,適合有技術分析基礎者閱讀,不建議未學過基礎技術分析者閱讀
Thumbnail
今天攻擊萬八,在每日的台股籌碼看盤中有一直提到,只要靠近整數關卡通常不會一次站上去,容易來來會會洗刷,今天直接開高走低震盪,但整體格局還是向上走升。
Thumbnail
加權指數回到10周之上就看能不能站穩 現在指數對我來說只是用來看市場情緒階段,整體中期沒大突破就只是資金輪流 上週的AI產業開始擺脫難熬過程表態後,多數報告目前也只是跟去年第二季~第三季的內容差不多,沒有特別 只要股價波動 自然很多分析就會上修或下修 就跟3年前的台積電一樣,重點是賺
Thumbnail
嘿,大家新年快樂~ 新年大家都在做什麼呢? 跨年夜的我趕工製作某個外包設計案,在工作告一段落時趕上倒數。 然後和兩個小孩過了一個忙亂的元旦。在深夜時刻,看到朋友傳來的解籤網站,興致勃勃熬夜體驗了一下,覺得非常好玩,或許有人玩過了,但還是想寫上來分享紀錄一下~
Thumbnail
前期提要:Alpha訂閱-02-(8/9盤後筆記) 量縮逼近技術面壓力帶,多空楚河漢界待數據。 回顧週一(8/12)觀察股池: 分時走勢可觀察區間內K棒型態,接近上緣未能突破就停利、跌破下緣停損需即時。 1.台積電(矽智財) 日線:上檔仍有月線壓,留意公布數據可能回測前天低。 2.直得(
Thumbnail
台股大盤動向(截至 07/26 收盤) 成交量 3,855 億,連續兩天低於四千億,外資賣超 236.08 億,投信反手買超 94.32 億 成交值前 20 名聚焦在 AI 伺服器、散熱、ABF載板、IC 設計、重電、半導體設備 週二盤中下挫300點以上,隨即權值股一路收斂跌幅,最後尾盤翻紅。
Thumbnail
雖然已經使用技術分析那麼多年,但是偶而還是不免會懷疑打了點小問號,因為台股漲到這邊真的覺得已經超乎預期跟想像,技術面漲滿足估算真的會發生嗎...
Thumbnail
本研究使用了盤中逐筆成交資料(Tick-by-tick Data)來進行股票價格的預測,並討論了馬可夫鏈模型和擴散核模型在這方面的應用。研究結果表明,大多數股票的未來三秒價格可以在少於22個狀態中找到,顯示了交易價格的低不確定性。此外,研究還發現波動性更大和價格更高的股票更難以準確預測。
Thumbnail
作者 Only 系列文章,【一天一千字,進化每一次】很多股票投資人,都想要預測,什麼時候股票會漲,什麼時候股票會跌,但是最廣為人的K線等技術指標,最容易失靈的原因,他是透過歷史數據而形成的走勢圖,就好像看這後照鏡開車,所以使用景氣燈號,是一個更好的方法。
Thumbnail
若前陣子有一直觀察18904-18992這個不到一百點的區間一直作區間震盪,從未帶量的假突破到跌破後快速無量站回區間內,直到周五還是在此區間內遊走,這就是盤整時會呈現的狀態,而區間要突破時,不論時往上或往下,通常採用跳空模式一舉攻破效益最高,這也是先前股價一直創新高的模式
Thumbnail
本文為技術分析進階,適合有技術分析基礎者閱讀,不建議未學過基礎技術分析者閱讀
Thumbnail
今天攻擊萬八,在每日的台股籌碼看盤中有一直提到,只要靠近整數關卡通常不會一次站上去,容易來來會會洗刷,今天直接開高走低震盪,但整體格局還是向上走升。
Thumbnail
加權指數回到10周之上就看能不能站穩 現在指數對我來說只是用來看市場情緒階段,整體中期沒大突破就只是資金輪流 上週的AI產業開始擺脫難熬過程表態後,多數報告目前也只是跟去年第二季~第三季的內容差不多,沒有特別 只要股價波動 自然很多分析就會上修或下修 就跟3年前的台積電一樣,重點是賺