在與同學的互動中 發現新手寫程式有幾個問題 ,
一. 妄想藉由程式交易亂try得到交易聖杯
二. 無法把自己的操作邏輯清處寫下來
三. 無法把操作邏輯翻成程式碼
四. 不知道自己寫了什麼程式
這是漸進式的問題 , 幾乎會發生在每個新手身上 .
一. 妄想藉由程式交易亂try得到交易聖杯
首先 , 最常見的是 妄想藉由程式交易亂try得到交易聖杯 或者 直接得到會賺錢的交易聖杯
後者牽扯到人性問題 , 人會希望簡單得到賺錢的答案 , 但你不會把辛苦寫出來穩定獲利的程式碼 賣給另外一個陌生人. 自己賺錢就好幹麻要賣給別人 ?? 我頂多只會賣訊號 不會公開程式碼 , 這是人性 .
會分享的程式碼暗藏玄機 , 通常是以前用現在不用的過氣程式 , 至於為什麼現在不用 ? 我就點到此 .
自於自己亂TRY 得到交易聖杯 , 不能說不可能 , 只能說機率很小 .
小到和不會打高爾夫球的人希望一杆進洞的機率是一樣大的 . 但這很有趣 , 想進入程式交易這一門的人通常是還沒有穩定的獲利模式試圖想在此找答案 , 這在邏輯上是行不通的 . 應該是先有想法 再把他寫成程式交給電腦執行 , 而不是隨機寫程式 希望他賺錢. 千萬不要相信沒有交易邏輯 但回測賺錢的買賣訊號 .
二. 無法把自己的操作邏輯清處寫下來
有了先有邏輯再寫程式的共識以後 , 我發現要把自己的交易邏輯一條條寫出來還有點不容易 , 有的時後寫到後面會和前面衝突 . 我覺得這是蠻好的練習 , 把自己的交易邏輯條列式寫出來 , 最好還畫流程圖 ; 什麼條件進 ? 什麼條件出 ? 買多少口 ? 賣多少口 ?
做這個功課會幫助我們思考自己交易策略哪裡矛盾 哪裡不足 , 不管要不要寫程式交易 都可以做此功課 .
三. 無法把操作邏輯翻成程式碼
再來是把交易邏輯寫下來後 , 把它翻成程式有難度 , 例如頭部完成後放空 , 底部完成後做多 , 盤整不操作 , 這些用講很容易 , 但請問頭部這兩個字要怎麼翻成程式碼 ??? 程式只有K棒四個價格和成交量 , 以及其他用價格和量算出的指標 , 我要如何用K棒間的關係、和k棒和均線的關係 , 指標們的關係 來描述頭部和底部 , 還有盤整 ?
例如量價背離、指標背離 ... 我要如何定意量價背離 ? 這個就難了 . 價格創新高但量沒創新高 ? 這樣做會跑出滿坑滿谷的訊號 . 而比較的基準又在哪 ? 這根K棒和前根K棒 ? 還是和前十根K棒的其中一支 ? 或者前50根K棒的同樣高點的K棒比較量 ? 是一支一支K棒的比較量價關係 , 還是一群K棒和一群K棒的比較量價關係 ? 量縮怎定義 ? 價格創新高但 短天期均量小於長天期均量 ? 要看位置嗎 ? 起漲若量不大的上漲 要不要標出量價背離 ? 還是只要標出高檔量價背離 ??? 這些細節都是寫了才發現困難處 . 人眼看到的大概、型態要轉成明確的定義要經過思考的 .
當然 , 程式也可以不要寫這麼難 . 就黃金交叉進死亡交叉出就好 .
四. 不知道自己寫了什麼程式
最後,不知道自己寫了什麼程式 , 這裡指的不是不知道自己程式是什麼意思 , 是不知道程式問題出在哪 . 例如 : 一次寫了好幾個條件 , 跑出來的結果和想的不太一樣 , 程式每一行都懂 , 但是不知道哪裡要修正 ...
IF 條件一 AND
條件二 AND
條件三 AND
條件四 AND
條件五 AND
條件六 AND
條件七 THEN
DO SOMETHING
END IF
我建議先把變數縮減成一個 , 一個變數一個變數的加 , 這樣你才知道是哪個條件在影響 , 才抓得到問題 .
以上幾個是常見新手會遇到的問題 , 有興趣進入程式交易的朋友 , 參考參考囉
留言列表