比較常見的當然是以開盤跳空位址在哪邊來記錄…另外還有依指標等情況來記錄的情形。
我自己對於跳空還滿在意的。所以對於開盤價來說…我會有一些特定的方式作進出場。在這邊先以指標來講…
以 MACD 來說…一開盤就可以區分為兩種情況。一種就是指標在 0 軸下方…另一種就是指標在 0 軸上方。
vars: status(0);
Value1 = MACD(close, 12, 26);
Value2 = XAverage(MACD(close, 12, 26), 9);
if date <> date[1] and Value1 < 0 then
status = -1;
if date <> date[1] and Value1 > 0 then
status = 1;
在分成這兩種狀態後…或許還可以對 MACD 均線的情況再下去分成個別的另外兩種情況:
if date <> date[1] and status = -1 and Value2 < Value1 then
status = -2;
if date <> date[1] and status = -1 and Value2 > Value1 then
status = -3;
if date <> date[1] and status = 1 and Value2 > Value1 then
status = 2;
if date <> date[1] and status = 1 and Value2 < Value1 then
status = 3;
所以現在的 status 會有 2, 3, -2, -3 這四種情況,分別代表 MACD 和 MACD 均線在一開盤的四種區別。
接下來就可以對這四種狀況分別寫上進出場的判斷了。
例如:
if status = 3 and Value1 cross under Value2 then
sell next bar at market;
if status = -3 and Value1 cross over Value2 then
buy next bar at market;
等等…可以運用的東西也不少…
不過這樣子的寫法是不是好?我很難用肯定的方式去回答。也許只當作一個教學會比較好吧…
迷惘的人
回覆刪除小弟接觸程式交易到現在有一點感想,特別提出來與各位大大分享,純屬個人想法,還請各位大大不吝指教。
程式交易不外乎用一些指標、數據去加減乘除一番出現買賣訊號的一種交易方式,但股市是一種非邏輯性的變化,而寫程式是一種要很有邏輯性才能寫出來的東東,用很邏輯性的東東去套用在非邏輯性的東東上會有效果嗎?我本人是抱持懷疑的態度。
我們都知道所有的指標都不見得準,有時候準有時候不準,用這樣的指標再去加加減減就會變得準嗎?這點我是很懷疑,我們一般寫程式的方法都是先找出邏輯、流程,看人工作業怎麼做程式再模擬其做法,但股市用人工在做都不會賺錢了,再用不會賺錢的想法寫成程式就會賺錢嗎?起碼也要人工做會賺,電腦程式再模擬其做法吧!
不過話說回來程式交易而不是全然沒用,它可以克服人性的恐懼、貪婪,很有紀律的執行買賣命令,這就是人性不容易做到的,只不過這賺錢的邏輯很難想得出來,最重要的東西都想不出來,那後續的如何讓電腦抓資料源、下單機的運作、如何從遠端來監看電腦似乎不是那麼重要了。