[心得] 自建數據分析操盤系統

看板Option作者 (Cory)時間6年前 (2018/04/02 16:43), 6年前編輯推噓54(55137)
留言93則, 51人參與, 5年前最新討論串1/5 (看更多)
金融交易變化萬千,到底要怎麼長期穩定賺錢 ? 我想是每個操盤投資人都想解的問題 但真的有規律可尋嗎 ? 某某書寫說看 OOXX 指標金叉做多 勝率 80% 真的嗎 ? 某某老師說 他的程式回測績效超猛 去年賺五倍 現在我租了 也要發了嗎 ? 還是跟著鄉民反著做 聽說勝率很高 ? 以上都是我剛入場時,心裡的疑惑。充滿茫然,不知所措。 既然這樣,身為一個資工系宅宅,乾脆自己用擅長的程式,實做數據分析吧! 那要怎麼做? 要寫 MultiCharts 嗎? 還是自己寫 Excel DDE? C# API? -- 經過了一些嘗試與挫折後 我發現市面上沒有任何一套工具可以滿足我做程式化數據分析的追求 ( 可能我的追求比較奇怪 ) 所以決定走上一條困難的路 就是從頭到尾 打造一套分析操盤系統 從底層原始資料收集、資訊庫系統、演算法設計、圖表視覺化、網站前端即時呈現 全部動手 DIY 自己做! https://i.imgur.com/QGlS3WZ.png
https://i.imgur.com/398CbpW.png
https://i.imgur.com/ZRMY8Bp.png
-- 以下分享這一年來做的工程細節 沒有任何聖杯程式指標 也沒有交易策略 僅為數據分析系統實做經驗談 沒興趣請趕快左轉 XDD -- 首先 交易的 Raw Data 到底是什麼呢 ? K棒嗎 ? 均線 ? 就我目前來看,盤中主要有兩個:成交明細、五檔掛單 https://i.imgur.com/GOYB90D.png
K棒、線、技術指標,都是衍生來的,並非真正原始資料 所以做數據工程,勢必要收集最原始的 data 以台指期來看 每天成交約 6-7萬筆 10-15萬口 如何收集這 幾萬筆 Data 來分析 勢必要透過行情報價API來達成 國內免費的 Tick 報價 我是用群益 C# API 它會以 Callback 形式回傳註冊的商品即時成交明細 那如何蒐集 有系統化的保存這些資料 供接下來分析使用 ? 這時候勢必就把資料庫系統派上用場了 我是用 PostgreSQL 而不是 txt csv 文字檔格式 資料正規化 永續性儲存 對後續分析跟維護 有非常大益處 https://i.imgur.com/zcHVA5J.png
目前抓的商品包含: 大台 小台 周選 月選 指標性權值股 (不知不覺也累積3000萬筆了) 涵蓋大部分人會看 有意義的標的商品 之後要做各種不同的分析 都會有幫助 有報價即時存到資料庫之後 接下來要開始認真要做分析 這邊我選擇我擅長的 Python 來做 而不是直接寫在 C# 畢竟在資料分析的領域 毋庸置疑 Python 是目前最強大的 也為之後要導入 AI / Deep Learning Model 做準備 分析程式部份 目前實做幾個我覺得很有意思的 1. 大戶/散戶 成交累積變化 2. 選擇權均價 / 累積金額 3. 權值股開盤後當天強弱走勢 4. 權值股大單走向 5. 期貨買賣掛單變化 細節就不講了 反正有資料想算什麼都可以 大家有興趣可以自己做 畢竟每個人想看的的分析、操作方式都不一樣 這邊可以看出 如果不自己做系統 現成軟體是很難辦到這些事情的 不論 MC 還是 Excel 都幾乎得不到我要的分析 再者 我真正想做的分析 才剛開始 XD -- 分析演算法寫完之後 就要考慮怎麼呈現 讓K棒會跳 圖表數值會更新 直接 Python Matplotlib 絕對是不行的 寫 Qt/wx GUI 我覺得也不是一個好方法 好在現在網頁 js 前端 有一套很棒的 Lib 就是 TradingView 之前玩比特幣 發現很多交易所都用那套 可以接自己的 API 即時畫圖表 所以大部分指標線圖性質的分析 我都把它寫成 Web REST API 串接 TradingView 可以很縮放流暢的觀看 ( 哀 看看現在的券商軟體 跟我小時候看我爸在玩的時候 根本沒什麼改變 ... 非線圖類的分析 就要用 React / Chart.js 來寫了 可以畫圓餅圖、長條圖、泡泡圖等等 一樣先想好要做什麼 怎麼開 Data API 怎麼呈現 像是我覺得把選擇權 Call / Put 對稱上下擺 用長條圖就很棒 -- 架構大概是這樣 中間還蠻多坑的 每個環節就是熬夜無數天才搞出來的 也陸續找了一些人 組發開團隊 越弄越大 ( 不然後端、DB、前端、演算法、交易操盤、策略分析 一個人吃不下啊 XD POST INSERT C# Quote API ------> Python Django --------> PostgreSQL SELECT GET PostgreSQL --------> Numpy / Pandas ---> Django REST API -----> TradingView -----> React/Chart.js ^ DLL | MC 策略 ------> Firebase DB ----------------------------------* 然後 ... 最近又開始大改版了 因為這樣無法達到 Realtime 的速度 所以開始接 Redis / RabbitMQ 同時雙 DB 雙報價源備援 避免群益 API 會斷線/漏資料 之後導入 WebSocket 推播 也會比 Polling 更有效率 同時也開始弄下單機 取代 MC 這個讓我很不爽的東西 ... 搭配 LINE Bot 監控觸發推播 部位風險計算警示等等 終極目標: 全功能網頁版分析操盤系統 + 進階演算法自動下單 + 風控系統 大概是這樣 一點心得 供大家參考 只能說 做這個真的很累 非誠勿試 光是搞 Infrastructure 就弄半天 到底什麼時候可以重新回歸 專心開發 Algo Trade 呢 還有更深奧的 AI / Deep Learning Model 找了幾篇 paper 一直沒時間去實做 都快要忘記 TensorFlow 怎麼寫了 XD -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 218.161.34.162 ※ 文章網址: https://www.ptt.cc/bbs/Option/M.1522658603.A.057.html

04/02 16:45, 6年前 , 1F
先推不然別人會發現我看不懂
04/02 16:45, 1F

04/02 16:46, 6年前 , 2F
還好我看的懂, 技術上是還好 不過全部做完是個大坑
04/02 16:46, 2F
cory8249:轉錄至看板 Trading 04/02 16:47

04/02 16:47, 6年前 , 3F
真的是看不懂,這用來玩當沖還是波段呢
04/02 16:47, 3F

04/02 16:47, 6年前 , 4F
真的不容易...給個推
04/02 16:47, 4F

04/02 17:01, 6年前 , 5F
辛苦了給推
04/02 17:01, 5F

04/02 17:15, 6年前 , 6F
cory哥猛猛的
04/02 17:15, 6F

04/02 17:26, 6年前 , 7F
高手推
04/02 17:26, 7F

04/02 17:26, 6年前 , 8F
重點還是要能賺錢 不要全完善了還是沒找到賺錢方法
04/02 17:26, 8F

04/02 17:31, 6年前 , 9F
這是用來搜集資料的 讚
04/02 17:31, 9F

04/02 17:33, 6年前 , 10F
= =
04/02 17:33, 10F

04/02 17:38, 6年前 , 11F
你這套做完拿出來賣應該就可以賺錢
04/02 17:38, 11F

04/02 17:45, 6年前 , 12F
C大必推
04/02 17:45, 12F

04/02 17:48, 6年前 , 13F
高手 (拜
04/02 17:48, 13F
我打日內波段當沖 自認還算可以 關鍵多空轉折 分析都有抓到 不過的確 有可能花一堆時間做系統、分析 最後研究不出什麼東西 搞半天沒賺錢 那這樣就 ... 真的是技不如人 或是搞錯方向 只能好好反省檢討囉 XD ※ 編輯: cory8249 (218.161.34.162), 04/02/2018 17:54:15

04/02 17:50, 6年前 , 14F
先給推 能賣也有績效的話 應該是不錯
04/02 17:50, 14F

04/02 17:51, 6年前 , 15F
大神好,看不懂qwq
04/02 17:51, 15F

04/02 17:56, 6年前 , 16F
用心推
04/02 17:56, 16F

04/02 18:04, 6年前 , 17F
感謝分享
04/02 18:04, 17F

04/02 18:12, 6年前 , 18F
賣系統功能就賺翻了
04/02 18:12, 18F

04/02 18:13, 6年前 , 19F
放在github上 我給你star XDD
04/02 18:13, 19F

04/02 18:17, 6年前 , 20F
真的 拿來賣就賺翻了 應該可打爆大部分市售軟體
04/02 18:17, 20F

04/02 18:21, 6年前 , 21F
建議可以做成online版 收月租費 績效應該屌打買股
04/02 18:21, 21F

04/02 18:21, 6年前 , 22F
倒是真的做出來我也有興趣買 XD
04/02 18:21, 22F

04/02 18:25, 6年前 , 23F
是個喜歡動手做的朋友呢
04/02 18:25, 23F

04/02 18:25, 6年前 , 24F
推,用心!
04/02 18:25, 24F

04/02 18:25, 6年前 , 25F
要真能賺錢才是好東西 不然就是shit 加油
04/02 18:25, 25F

04/02 18:26, 6年前 , 26F
推,我也正在自建Python期貨分析系統
04/02 18:26, 26F

04/02 18:26, 6年前 , 27F
我也搞了一套,有時間可以交流一下
04/02 18:26, 27F

04/02 18:53, 6年前 , 28F
拿來賣啦,快打爆mc
04/02 18:53, 28F

04/02 19:09, 6年前 , 29F
先推個 大工程
04/02 19:09, 29F

04/02 19:11, 6年前 , 30F
高手!
04/02 19:11, 30F

04/02 19:13, 6年前 , 31F
我想既不如人是一回事 但這套能賣錢是肯定的 推個試用版
04/02 19:13, 31F

04/02 19:13, 6年前 , 32F
給版友用
04/02 19:13, 32F

04/02 19:14, 6年前 , 33F
用訂閱制的 應該就夠賺了
04/02 19:14, 33F

04/02 19:31, 6年前 , 34F
已經可以賣軟體了,接下來只差找個幫你行銷的投顧
04/02 19:31, 34F

04/02 19:35, 6年前 , 35F
研發策略或許先做比較好QQ
04/02 19:35, 35F

04/02 19:44, 6年前 , 36F
K5哥佛心
04/02 19:44, 36F

04/02 19:57, 6年前 , 37F
做好這套 就屌打MC 你光賣軟體就身價數十億了 還寫啥策略
04/02 19:57, 37F
還有 19 則推文
還有 3 段內文
04/03 00:55, 6年前 , 57F
目前看起來就是一個pure工程師架設讓人崇拜的交易系統
04/03 00:55, 57F

04/03 00:56, 6年前 , 58F
你分析程式的部分已經有不少人做過研究了
04/03 00:56, 58F

04/03 00:57, 6年前 , 59F
等於你打掉全台期貨商的軟體自建一套看盤軟體
04/03 00:57, 59F

04/03 00:58, 6年前 , 60F
你說的看到市場單子怎麼掛上去的掛哪個價格大戶心態
04/03 00:58, 60F

04/03 00:58, 6年前 , 61F
等等之類的這幾十年來不曉得多少人想要研究出名堂
04/03 00:58, 61F

04/03 00:59, 6年前 , 62F
如果你單純是看五檔那就太慢了 想找到委託book
04/03 00:59, 62F

04/03 01:00, 6年前 , 63F
你就會想往高頻程式去走 到最後你會發現 怎麼都在對幹
04/03 01:00, 63F
差不多是這個意思 先花半年多建一套基礎設施 蒐集 data 邊做邊弄一些基礎的研究 接下來才真正開始做比較進階的分析 當然想看歷史委託掛單 五檔 純粹是我真的不知道 高頻造市跟法人是如何操作的 或許研究後才發現 我想錯了 這樣對之後分析模型也會有很多啟發 我是認真想打造高規格研究環境 而且要是 Realtime 呈現 不然盤後跑跑 script 靜態分析 對我來說是不太夠 ※ 編輯: cory8249 (218.161.34.162), 04/03/2018 01:04:59

04/03 01:05, 6年前 , 64F
只能說您程式功力一級棒 但是分析像你說的剛開始
04/03 01:05, 64F

04/03 01:05, 6年前 , 65F
我很想知道您的時間跟金錢怎麼來的 您學生嗎?
04/03 01:05, 65F

04/03 01:08, 6年前 , 66F
說說學生時代的例子某位高材生有個富老爸
04/03 01:08, 66F

04/03 01:08, 6年前 , 67F
書念得好人又帥又高又有女友 只要擔心念書研究
04/03 01:08, 67F

04/03 01:09, 6年前 , 68F
所以無後顧之憂把程式技能點到滿
04/03 01:09, 68F

04/03 01:10, 6年前 , 69F
之後要做跨領域產業的程式開發都不是難事
04/03 01:10, 69F
我是剛準備要畢業的窮學生 老家住南部鄉下 一坪 5萬 XD 這個是跟朋友一起弄的 人家本業有賺錢 拿一點來玩期貨 反正投資本來就要繳學費 與其繳給市場 或是買一些沒用的軟體 不如做一些比較長遠有價值的事情 這是我們的信念啦~ 也可能到頭來只是一場夢 就跟交易一樣 還沒出場之前 誰能笑到最後還不知道 但大家都很愛來玩這個賽局 不是嗎 ? 即便已知贏家是小眾中的小眾 ※ 編輯: cory8249 (218.161.34.162), 04/03/2018 01:21:59

04/03 01:22, 6年前 , 70F
看過很多工程師來市場重寫系統可能因為這是它們的專業
04/03 01:22, 70F

04/03 01:23, 6年前 , 71F
就好像律師不修改一下契約的法條就沒辦法顯示他的專才
04/03 01:23, 71F

04/03 01:23, 6年前 , 72F
但是工程師很多寫到最後全部去賣軟體訊號系統
04/03 01:23, 72F

04/03 01:24, 6年前 , 73F
因為無風險不需承擔盈虧 建議去向期貨商兜售
04/03 01:24, 73F

04/03 01:24, 6年前 , 74F
你會發現怎麼比交易還好賺阿
04/03 01:24, 74F
是呀 軟體系統本身有其價值 如果有人覺得很棒想買 我賣它也能賺點錢 何樂不為 ? 會有問題的是 買方"被騙去買" 以為撿到寶 實際用才發現是個垃圾 這種我是覺得就很差勁 這套系統 當然不是為了做而做 而是看到未來的價值 值得我投入大量時間心力 ※ 編輯: cory8249 (218.161.34.162), 04/03/2018 01:36:36

04/03 01:28, 6年前 , 75F
你知道真正贏家都是很黑的 2/6就是真的大贏家的作為
04/03 01:28, 75F

04/03 01:49, 6年前 , 76F
大推!!曾經也有這樣的夢想要做一套自己的系統
04/03 01:49, 76F

04/03 09:10, 6年前 , 77F
有心投入研究給個推,不過很燒錢,建議拿去股版賣 XD
04/03 09:10, 77F

04/03 09:11, 6年前 , 78F
反正你不賣他們,他們也是拿錢去給一堆阿貓阿狗股神花
04/03 09:11, 78F

04/03 09:11, 6年前 , 79F
賺來的錢,繼續投入研究,這才是長久之計
04/03 09:11, 79F

04/03 09:42, 6年前 , 80F
超猛推
04/03 09:42, 80F

04/03 10:54, 6年前 , 81F
白費功夫
04/03 10:54, 81F

04/03 14:38, 6年前 , 82F
有用心推一個 但說實話如果你不是機構者 使用這種系統積
04/03 14:38, 82F

04/03 14:39, 6年前 , 83F
效會比預期至少打個7折 這是散戶沒辦法的先天限制
04/03 14:39, 83F

04/03 17:10, 6年前 , 84F
不至於 20年後大概就可以媲美法人機構的績效了
04/03 17:10, 84F

04/03 19:00, 6年前 , 85F
期貨系統每隔一個世代系統就會變化 我是沒這麼樂觀 這
04/03 19:00, 85F

04/03 19:00, 6年前 , 86F
類系統建立起來長期維護跟微調變動參數及策略會很累人
04/03 19:00, 86F

04/03 19:00, 6年前 , 87F
沒有團隊很難做久
04/03 19:00, 87F

04/03 19:25, 6年前 , 88F
04/03 19:25, 88F

04/06 01:43, 6年前 , 89F
我看到熱情,不管賺不賺錢,我都覺得值得
04/06 01:43, 89F

05/03 22:15, 6年前 , 90F
光看就覺得好厲害
05/03 22:15, 90F

05/03 22:27, 6年前 , 91F
說認真的,我認為這真的可以拿來賣錢,絕對有市場
05/03 22:27, 91F

05/03 22:29, 6年前 , 92F
而且比目前市面上一些操盤軟體強大許多
05/03 22:29, 92F

11/07 11:01, 5年前 , 93F
有介紹用什麼工具就給推
11/07 11:01, 93F
文章代碼(AID): #1QmUqh1N (Option)
討論串 (同標題文章)
文章代碼(AID): #1QmUqh1N (Option)