寫出一個交易程式,進行股票漲跌計算(前言)
為什麼我想要做一個這樣的東西呢?
因為自2005年進股市以來,每年的投資報酬率都是正數。當然學生時代的金額並不大,但至少有補貼到不少的生活費,所以我開始想把他程式化。
也就是說,把我以前的操作方法抽象化(abstraction)。
這樣一來,我的績效可以再提高,而且我可以更清楚,我到底是怎麼判斷的。
或者當市場變化到讓我的判斷法失效時,我可以知道我的判斷需要修正。
但我尋問了某個軟體工程師,對方的方向卻朝向我要做個和現在的線上下單平台一樣的程式,或者是real time 的系統。
所以對方提出了我至少需要「兩組人馬」,一組做這個程式,另一組做後台。
而後台和程式中「可能」還要一組人馬做接口,「再外加」一組人做金融模型。
天呀,聽了我都快吐血了,我根本沒有要做一個下單的程式。
我只是要做一個程式把我的想法以程式的方式來執行,避免兩個結果。
一、我忘記去算該算的項目。二、花太多時間在 copy paste。
但我怎麼計算,發現如果把規模縮小到某個程度,一個人一定是可以做的出來。
於是隔天吃完晚飯後,用excel的VBA做了一個Demo版的出來。
去驗證我想做出來的東西在一個人力即可的狀況。
果然沒錯,現在的SDK太多了,而且證交所有直接提供接口,除了證交所以外,Google finance 也有接口,Google finance的接口還可以用在 Google試算表上。
那什麼是我需要的呢?
A:我需要一個可以算出某段時間的某個指標(ex: M5, M10, M22)
B:我需要他可以秀出判斷式的結果(ex: 看漲,看跌,趨勢不明)
C:我需要他可以一鍵更新或自動更新。(不用讓我自己copy paste)
我的條件就是這樣而已,我明確的計算了我的交易頻率,我的銀彈,我根本不需要把股票代碼從0000算到9999。就算你每天找到了50個可以買的標的,我也買不完50個。
而且當第一天算完後進場,我大概就沒銀彈了。
所以條件非常限定,從以前開始做的股票或有在觀察的標的,從這之間開始找即可,既然我賺錢的經驗是從這些標的中發現,那我的做出來的模型很可能也只能適用這些標的。
那為了縮小程式的規模,可以只算幾十檔就好了。
同時,可以簡化資料庫的架構。
而根據銀彈的數量,這幾十檔我根本不可能每檔買一張,所以只能買部分而已。
最後,再加上交易頻率,半年左右進出一次,甚致更長周期的都有(中華電我應該除息了二次,台積也除了2次)
如果說到統一和統一超,應該參與除權息超過五次了吧。
所以,我很確定這樣的程式是一個人能處理過來的。
再加上我這個程式並沒有打算拿出去販賣,寫的讓使用者很難用也無所謂,這個是我自己做出來的,我一定知道怎麼修改。
唉,如果這個工程師願意聽我講話就行了。
Key Words: 股市 程式交易 投資 台股
沒有留言:
張貼留言