PTT推薦

[心得] 8月台期指程式交易復盤

看板Stock標題[心得] 8月台期指程式交易復盤作者
liton
(歐吉桑留學生)
時間推噓42 推:42 噓:0 →:84

月底了,稍微總結一下這個月的台期指程式交易。
這個程式交易是全自動交易
平常只有起床後和下午2點用手機看看今天機器人買了啥賣了啥
對一下賬,一天1~2分鐘就看完了
如果交易盈虧沒異常(例如連虧兩天,或單日賠超過1萬),程式還在跑
平常該吃該吃該睡覺該工作,完全沒在看盤
https://ezquant.cc/wp-content/uploads/2024/08/image-19-1024x456.png

圖 8月台期指程式交易復盤

========= 交易總結 =========

先看一下對賬單,202408交易匯總如下:
https://reurl.cc/Yq0KL0

7/31 權益數 104,223
8/30權益數 216,227
盈虧 112,004 ( +107.47%)
交易口數 204口

========= 本月策略分析 =========

本月是地獄開局,由於7月底忽然連續兩天的颱風假,一開盤立刻賠了800點。
原本是準備了兩口的小台資金13萬,8月開局的資金是從104,223開始。

《1. 滿血復活》
很幸運的是8月初大跌那幾天交易機器人就做對方向
8月5日期貨指數跌停那天先收下2262點的獲利滿血復活

https://ezquant.cc/wp-content/uploads/2024/08/image-16.png

圖 8月台期指程式交易復盤
《程式交易委託單號(左)、期貨商委託單號(右)》


《2.爆量大跌賺縮量震蕩》
在反彈不到一周之後,市場開始縮量。策略收益也減少了一半。
經過挖掘分析,發現是量縮造成大盤從趨勢進入盤整
8/12是縮量的開始,是我本月虧損最大的一天,也是連虧損5日的開始
https://ezquant.cc/wp-content/uploads/2024/08/image-20.png

圖 8月台期指程式交易復盤

分析一下原因,原本的程式是趨勢策略,遇到縮量震蕩反倒容易做錯方向
例如在趨勢行情下,帶量下殺應該是一開始放量就跟著做空
但是在縮量震蕩行情下,卻應該等放量下殺結束時反向做多
經過這一個調整,八月下旬的獲利又救回來了

只是震蕩盤下的進出都很短,204口交易(單邊102筆)中有一半是在8/20之後的

《2.1 累計成交量%》
一般的交易軟體只在盤中提供(本日)預估成交量,定義被人掌握又無法直接應用
因此另外寫了段計算每分鐘月均累計成交量的程式
日盤有300分鐘、夜盤有840分鐘。因此我就有1140根月均每分鐘累計成交量
當日最新累計成交量一比就有個百分比,知道現在是縮量還是放量,盤中該切換什麼策略

《2.2 自動切換策略》
自己用python 寫程式交易策略的最主要原因
除了指標設計高度自由外,另外就是策略的彈性
盤中除了根據累計成交量%自動切換趨勢策略和震蕩策略之外,另外也掛了套利策略
由於期貨交易是20倍左右的槓桿,因此通常會用2倍或是3倍資金做一口期貨
平常這些冗餘資金會放在另一個期貨賬戶裡面,等著機會做大台、小台、微台的套利
https://ezquant.cc/wp-content/uploads/2024/08/%E7%AD%96%E7%95%A5.png

圖 8月台期指程式交易復盤

========= 9月工作計劃 =========

但由於我的進場策略有5個、出場策略超過10個,相乘就有超過50種
雖然手機有每次交易的記錄、單號,但還是得用交易單號跟對賬單核對上

========= 心得 =========

原本機器人用K線做為重要因子,搞得兩三天就要停機下線
這次版本的機器人完全不看K線(恐龍扛狼策略?我沒K~~)
目前活了一個多月,復盤找原因的時候也比較容易發現問題並調整

------------
補充一下我自己的 YT
https://www.youtube.com/watch?v=B0u4MXXY6do

程式交易沒那麼神秘,
為什麼要自己從0開始寫程式交易而非用先有的程式交易平台? 總結是我有選擇的權利
1. 有原始數據,指標想怎麼寫就怎麼寫
2. 決策流程彈性,決策流程想怎麼組就怎麼組
3. 高頻交易

--

※ PTT留言評論
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 101.12.20.144 (臺灣)
PTT 網址
※ 編輯: liton (101.12.20.144 臺灣), 08/31/2024 10:25:50

intointo 08/31 10:27我沒K~

luciffar 08/31 10:29機器人推個

watashino 08/31 10:32哥你不搞回測真的能搞成這樣喔?

我也想回測啊,但叔叔我做不到啊 1. 回測是基於K線架構 一般的回測是事件回測(每分鐘跑一次),另外還有向量回測 我是跑tick數據,小台平均一天10萬口,tick數據低估點5萬筆 跑日K算一次就行,tick回測一天得跑5萬次 2.數據拉不齊 分鐘K數據是 2024-08-30 09:34:00 tick 數據是 2024-08-30 09:34:12.243 我還有用到及時的期現價差 如果是 2024-08-30 09:34:12.112 這數據拉不齊的

intointo 08/31 10:34完全不看K線 不是用價?

liton 08/31 10:41K線是從tick數據來的,抽了開、高、低、收、量

liton 08/31 10:42五個統計值,我有tick數據自己寫統計值不用K二手貨

hjtiun852 08/31 10:45謝謝分享

max0526 08/31 10:49好強 可以分享進出場策略嗎

YLTYY 08/31 10:51羨慕 財富自由

hjtiun852 08/31 10:57請問 Bot 那張像是聊天視窗的圖是什麼程式

hjtiun852 08/31 10:57https://i.imgur.com/Ia4xOEj.png

圖 8月台期指程式交易復盤

企業微信 line/telegram 有api的都行,只是這些不支持 markdown語法 有粗體、有顏色、有文字塊,閱讀信息的效率會比較好

y2kidd 08/31 11:19不看K, 有用到machine learning嗎?

沒用ML 解釋不了的因子或是太複雜的規則,要回查問題都不知道怎麼查 月初趨勢,月中縮量震蕩。ML只會幫你調參數,不會幫你重新建構決策流程 況且ML是回測的一種 有解釋我為什麼沒法回測

wewe750422 08/31 11:34滿有趣,希望以後也能試試看

kei1823 08/31 11:37有趣,出場策略多算是越保守嗎

8月上旬一天震個300-500點很正常 8月中旬之後一天300點算多了 沒那個大波段沒放量,打的就短。規則都寫好了,機器人自己判斷

※ 編輯: liton (101.12.20.144 臺灣), 08/31/2024 12:08:49

ProTrader 08/31 11:38這就是DIY程式交易的優勢 任何合理想法都能實作

ProTrader 08/31 11:39不過多數人還是從XQ開始程式交易比較容易入門

ProTrader 08/31 11:40如原po說 所謂K線指的是特定時間內的tick開高低收量

ProTrader 08/31 11:41然而有完整tick可以取得的各種運算值還有很多

ProTrader 08/31 11:43這些運算值在機器學習中教作萃取特徵值或屬性值

ProTrader 08/31 11:43之後可再用各種運算模型對特徵值進行運算得出判斷

KIDbitch 08/31 11:44收到了,下個月開始開始出現機器人投資詐騙

ProTrader 08/31 11:45所以原po的做法當然能說是用到機器學習

ProTrader 08/31 11:46再補充說明股市的技術指標都是機器學習中的特徵值

ProTrader 08/31 11:47均線常見的黃死交叉多空判斷 就是判斷模型

ProTrader 08/31 11:48現在火熱的AI模型通常把兩者混在一起說

fakelie 08/31 11:50ai操盤手

這位大哥,沒那麼複雜啊

https://reurl.cc/bYlppl

重點是特徵工程不是算法 特徵必須簡單易懂符合邏輯,對未來預測有驅動力 為啥不用K線?我沒那能力畫K線呀 但肯定有能畫的好呀 我事後劃線猛如虎,事前預測二百五

https://reurl.cc/VM4V9A

K線的108種形態學我沒那天分學透

ProTrader 08/31 11:50所以要看自己細節 通常判斷模型都是類神經網路

ProTrader 08/31 11:51而類神經網路也導致需要龐大的運算能力與記憶體

ProTrader 08/31 11:52相比之下原po的做法簡單很多 換到超低的進入門檻

ProTrader 08/31 11:56進場策略少出場策略多通常是因為進場門檻較嚴格求穩

ProTrader 08/31 11:58出場至少有停利與停損兩大狀況再各自分支各

ProTrader 08/31 12:01用多種條件判斷多空很常見 導致出場狀況五花八門

ProTrader 08/31 12:04另外一種做法是用進場多的反向條件發生平倉多反手空

ProTrader 08/31 12:05通常不會用這種方法出場 原因就留給新手當功課

ProTrader 08/31 12:06直白的說 請解釋黃金交叉多死亡交叉空為何不行

Jimmy030489 08/31 12:07推啊

ProTrader 08/31 12:08程式交易獲利的關鍵就是多空趨勢與中性盤整的判斷

xm3u4vmp6 08/31 12:09想知道回測到底有沒有用 你是不是搞套利 直接不用

xm3u4vmp6 08/31 12:09回測

ProTrader 08/31 12:09分別對應 多 空 觀望 3種操作 判斷正確一定好賺

r0se 08/31 12:11感謝分享!

ProTrader 08/31 12:13回測的是重播市場發生的流程所以關鍵是完整tick

※ 編輯: liton (101.12.20.144 臺灣), 08/31/2024 12:22:14

ProTrader 08/31 12:14每天日夜盤都會有tick上面會附成交時間 讀取每筆

bxc 08/31 12:15說真的不能回測... GG是遲早的事

CrazyKill 08/31 12:161~7月呢

ProTrader 08/31 12:16然後用自己的運算方法套入每筆tick發生時的值

ProTrader 08/31 12:17就可以看到隨著市場交易進行 自己的交易損益狀況

ProTrader 08/31 12:19原po說的調參數是為了測試哪種參數跑出來的損益最好

ProTrader 08/31 12:25取特徵值的原意是為了能配合後面的判斷模型使用

ProTrader 08/31 12:26以程式交易來說通常tick轉成特定時間內K線

ProTrader 08/31 12:28再去對K線值作多空判斷

ProTrader 08/31 12:33YT上的那3個指標在我來看 是K線的量再計算出的指標

ProTrader 08/31 12:35只是K線要再新增內盤量外盤量 內+外=原本的K線量

ProTrader 08/31 12:35再嚴格一點可以再區分無法判斷內外的平盤量

ProTrader 08/31 12:38所以想回測 只要能拿到完整tick 絕對可以

slip666slip 08/31 12:39這個還是要多跑幾個月,因為像8月初那樣讓你滿血復

slip666slip 08/31 12:39活的盤不多

lung666 08/31 13:03強者推

j0588 08/31 13:25這個有效性需要時間驗證啦,很多玩大小台的都是程式

j0588 08/31 13:25交易單,賺錢賠錢的都有,只看一個月績效未必準

poorpenguin 08/31 13:33感謝分享,看完2.1我也馬上去寫了一支

paimin 08/31 13:48沒數據回測就自己收 只是交易時間維度切到ms 沒接

paimin 08/31 13:48在交易所的話意義不大

SourireMask 08/31 13:55太依賴回測會死,但沒回測要怎麼對自己系統有信心?

SourireMask 08/31 13:55 在遇到破MDD或連虧時繼續改系統嗎?

venroxas 08/31 14:00可以請教趨勢的判斷的想法是? 我自己是想避開盤整

venroxas 08/31 14:00時的交易 但一直沒想法怎麼去判斷此刻是在盤整中

esheep 08/31 14:32一般類神經用法是離線訓練出模型,直接套用後再加一

esheep 08/31 14:32層自適性調整。所以算力要求在“應用階段”不高。純

esheep 08/31 14:32粹類神經用在股市預測已經數十年了,效果有限。普通

esheep 08/31 14:32狀況:長趨向上/向下/持平 都需要做短時間間隔的權

esheep 08/31 14:32重修正(普通自適層)。然後,基本類神經架構很難處

esheep 08/31 14:32理特例狀況。所以自適層需加入例外處理,這個是獨立

esheep 08/31 14:32命題。簡單來說:類神經基礎的系統不跑“有意義”的

esheep 08/31 14:32數據回歸,實戰時失敗率很高...

aresa 08/31 14:51我花了兩年用ML做預測,做了不下十個模型,結論是根

aresa 08/31 14:51本沒法測,股市這東西根本毫無規律,尤其是短期方向

aresa 08/31 14:51。股市長期向上你訓練的資料越多他就越歐印超北七,

aresa 08/31 14:51後面我發現直接6208放著就是黃金律,供參考

elfish123 08/31 15:49我有追蹤你臉書,蠻厲害的

watashino 08/31 15:58其實是有辦法tick維度做回測的

watashino 08/31 15:58完全不回測有點太不穩 感覺要先有一套穩賺邏輯

謝謝各位留言,一起答復: 你有你的方法,我有我的經驗,彼此交流一下而已 你覺得我的方法不合理那就別用,你能賺錢比較重要 1. tick回測? 回測是要拉齊所有的數據的,我用的不是只有tick,例如我還用上了BidAsk 例如我就算 Bid-Ask 最差異最大的時候, 我大概算了一下,小台一天的tick是100 MB,BidAsk大概700MB 這些是沒有歷史數據的,得盤中存(小弟我見識少,沒看到哪個平台有)。 這些數據因為速度太快,得存在RAM裡面,例如redis 一個期貨合約一天佔800MB,還有大台、小台、微台,還有近一、近二 RAM有1T都不夠用,加掛SSD也不夠 這還沒考慮到跨月,還沒考慮的tick跟BidAsk如何合併? 另外,這還只是五檔行情,加密貨幣是千檔BidAsk 2. 沒回測敢上線? 給些慘痛經歷,一個程式交易策略不行,不用一禮拜就知道了, 主觀交易賠個幾十上百萬花了好幾年才發現不行, 一個程式交易幾天賠個幾萬塊兩三天就知道不行 現在還有微台、加密貨幣讓你用更低的成本測 "每個人的時間成本都是很貴的" 如果你是在法人機構裡,那麼回測很重要,因為是老闆客戶的錢,但有些策略就沒法做 用BidAsk回測,公司的數據部會先掐死你 如果你是自己的錢,那就自己決定 3.ML 我一直在強調特徵工程背後的邏輯性,並不是把一大堆變量丟到模型擬合 交易市場背後是人性,但ML模型卻擬合歷史 各種特徵、模型方法可以有成千上萬種,如果不從邏輯去篩選,那一輩子都測不完的 "每個人的時間成本都是很貴的" -- 最後,套句無間道裡的台詞 "以前我沒得選" 以前沒這些數據、沒這麼便宜的硬體軟體、沒這麼容易學習程式的環境 現在這些都不是問題了

※ 編輯: liton (101.12.20.144 臺灣), 08/31/2024 16:33:29

CCH2022 08/31 16:25程式也有它的好處。

CCH2022 08/31 16:25漲跌在不規則中仍有脈絡可循

CCH2022 08/31 16:25我用肉眼看部位承受下跌盤整上漲

CCH2022 08/31 16:25觀察自己的同時也訓練心理面。

CCH2022 08/31 16:25沒有最完美的模型只有勤奮的交易者。

KISS1979 08/31 16:27超強 很快就能賺數十億了

Inland 08/31 18:01能賺錢的就是好交易,一堆人沒在用在那邊質疑幹嘛

k18535318 08/31 18:15厲害推

bown 08/31 19:24好猛喔

knudmals 08/31 20:49原po很樂於分享跟討論 推推

ProTrader 08/31 21:57先說結論 原po是真的有在diy的人有這種想法很合理

ProTrader 08/31 21:58回測要認真作是很花時間的 所以長官要看才作 合理

ProTrader 08/31 22:00像我自己也沒那麼認真作回測只會對指標作某些驗證

ProTrader 08/31 22:01通常是看指標跟盤勢的連動性是否符合預期

ProTrader 08/31 22:01如果符合預期我就直接用了

ProTrader 08/31 22:02只是如果是公司裡通常是來不及分析買到的資料

ProTrader 08/31 22:03比較不會有想回測結果沒資料的狀況

ProTrader 08/31 22:04另外歷史資料回測的有效性 從來都是一個大問題

ProTrader 08/31 22:04這也是有經驗的人對回測的重視程度會下降的原因

ProTrader 08/31 22:07原po說的BidAsk指的是完整買賣報價 常見是5檔

ProTrader 08/31 22:09這種資料很貴 交易所與大的報價商如彭博都有

ProTrader 08/31 22:09以前我也想過但是資料太貴而且分析的門檻狂飆

ProTrader 08/31 22:10所以直接放棄 改用最簡單的內外盤成交替代

ProTrader 08/31 22:11在資料不完整的狀況下也是可以用手頭資料作簡易回測

ProTrader 08/31 22:13機器學習與現在火紅的類神經網路問題上面也說了

ProTrader 08/31 22:14並非資料越多模型越複雜最後的判斷結果就越好

ProTrader 08/31 22:15ChatGTP目前就遭遇到這樣的問題 資料再多也有瓶頸

ProTrader 08/31 22:16分析金融資料想預測市 場 這樣的問題就更加嚴重

ProTrader 08/31 22:17因為歷史資料對於未來資料的代表性 實際上很低

ProTrader 08/31 22:18至於原po說的用邏輯去篩選 我覺得用"有效性"較佳

ProTrader 08/31 22:19因為我找到的指標有些根本只是突發奇想 去試試看

ProTrader 08/31 22:21喔 果然有用 而邏輯則是我觀察其與市場的關聯性找出

ProTrader 08/31 22:22拼運算能力的流派 本質就是去嚐試所有可能性

ProTrader 08/31 22:23作為普通人 當然是自己找出有效指標最具效益

ProTrader 08/31 22:29像原po用的內外盤委買委賣就是用來看多空的好指標

ProTrader 08/31 22:30與其最接近的理論是經濟學的市場供需

ProTrader 08/31 22:31而成交量的量比與累計可以用來看盤勢爆發力

ProTrader 08/31 22:32可用來判斷是否有大趨勢 是很合理的觀察指標

ProTrader 08/31 22:33最後 我個人覺得不存在能完全整握市場的穩賺邏輯

ProTrader 08/31 22:34本多忠勝這種說法根本不是穩賺而是邪說

ProTrader 08/31 22:35真正能作的是持續觀察市場判斷市場讓自己不要掉隊

lbin515 08/31 23:07推,原本就有追蹤了。謝謝分享

aikotoba 09/01 10:55這絕對是高手啊

LTpeacecraft09/02 07:34學習