Posted by : 波動馬克
2016年11月21日 星期一
摩台相對台指正逆價差強弱VS電金價差強弱(濾網) |
圖中的最上方為台指期與加權指數的走勢圖,其中綠色為加權指數,另外的是台指期貨;
第二個子圖為摩台期貨與摩台現貨的走勢圖,其中紅色為摩台現貨,另外的是摩台期貨;
第三個子圖為電子期貨;
第四個子圖為金融期貨
第五個圖是個指標,這個指標是一個相對強弱指標,既然有相對,那表示的是誰相對誰呢?
這個指標的程式碼如下:
input:S1(10000*(close of data3-close of data4)/(close of data4)),
S2(10000*(close of data1-close of data2)/(close of data2));
var:Spread(0);
Spread=S1-S2;
plot1(Spread,"Spread");
if spread>0 then setplotcolor(1,red) else setplotcolor(1,green);
close of data1為台指期
close of data2 為加權指數
close of data3為摩台期
close of data4為摩台現
程式碼很簡單,但重要的是意義:上面的程式碼劃出來就是第五個圖,這表示了甚麼呢?
S1表示的是摩台期貨相對摩台現貨正逆價差的幅度,我刻意乘上了一個10000,這只是個規模 的表示。
S2表示的是台指期貨相對台指現貨正逆價差的幅度。
Spread=S1-S2呢?就表示摩台期貨相對現貨正逆價差的幅度是否比台指期相對現貨正逆價差的 幅度大或小。
當Spread>0我表示成紅色,也就是摩台相對台指強。
當Spread<0我表示成綠色,也就是摩台相對台指弱。
S1我當作是外資對市場的看法(外資通常都是拿摩台去操作,主要是外資用美元計價方便)
S2我當作是散戶對市場的看法(島內的人很少會去下新加坡的摩台期貨)
當摩台的正逆價差相對台指期強的時候(Spread>0),盤勢偏強,特別是在S1>0(摩台正價差時)且S2<0(台指逆價差時)特別容易產生軋空行情。像上周五(11/18)就特別明顯。這個指標可以當作一個有效的濾網。我程式上的濾網就只有加兩個條件。
condition1=S1>0 and Spread>0(Long Filter)表示摩台相對台指強,同時摩台又是正價差。
condition2=S2<0 and Spread<0(Short Filter)表示摩台相對台指弱,同時摩台又是逆價差。
當然,這個條件在六-九月除權息的時候因為現貨對息值預估的調整就變得沒那麼準確。
我曾經也嘗試過自己合成一個息值調整過後的加權現貨,跟息值調整過後的摩台現貨去run六-九月,效果也不好,主要是因為加權的結算跟摩台結算的時間不同,造成的偏誤。
基本上程式交易上可以忽略掉六-九月。之後我會針對這發表我測試的結論。
接著我要解釋第六個圖,也是個指標,這個指標的程式碼如下:
input:Nday(1),flag(2),up(0.5),dw(-0.5);
var:WTXAVCost(0),WTEAVCost(0),WTFAVCost(0);
switch(flag)
begin
case 1:
WTXAVCost=(Highd(Nday) of data1+Lowd(Nday) of data1)*0.5;
WTEAVCost=(Highd(Nday) of data5+Lowd(Nday) of data5)*0.5;
WTFAVCost=(Highd(Nday) of data6+Lowd(Nday) of data6)*0.5;
case 2:
WTXAVCost=(opend(0) of data1);
WTEAVCost=(opend(0) of data5);
WTFAVCost=(opend(0) of data6);
end;
value1=100*(c of data1-WTXAVCost)/WTXAVCost;
value2=100*(c of data5-WTEAVCost)/WTEAVCost;
value3=100*(c of data6-WTFAVCost)/WTFAVCost;
value4=value2-value3;
plot1(0,"Zeroline",yellow);
plot2(value2,"WTE%");
plot3(value3,"WTF%");
plot4(value4,"spread");if value4>0 then setplotcolor(4,red) else setplotcolor(4,green);
plot5(up,"up",red);
plot6(dw,"dw",green);
在程式中我用了一個switch的指令,這只是要測試不同的情境。我先說明case2這個情境,
value2表示的是電子期相對當天開盤的強弱。
value3表示的是金融期相對當天開盤的強弱。
value4>0就表示當天開盤後電子相對金融強。反之電子相對金融弱。
那case1的情境呢,在case1 情境中
value2表示的是電子期相對昨天平均成本的強弱。
value3表示的是金融期相對昨天平均成本的強弱。
value4>0就表示以昨天的平均成本當基準,電子相對金融強。反之電子相對金融弱。
我個人試過,用當天開盤為比較基準相對好,不信的話大家可以試試(try and error)。
因為台指中電子股的權重較重,當電子當天相對強的時候盤相對就強。這邏輯很簡單。
所以電金價差的相對強弱也可以當個濾網。
以上的程式有很難嗎?我想高中生都應該會寫吧?但程式交易上強調的不是程式,程式只是一個可以運用回測的工具,重點還是交易的想法,我不太愛用技術指標寫程式,因為,很難判斷是不是最佳化的結果,input太多,就會有過度最佳化的疑慮,相對強弱這個概念是個不錯的想法,丟出來讓大家參考參考。還有,有時候盤中稍微斷了資料我也不怕,因為相對蓋念這東西,不太會因為資料少了某部分就會因此改變,當然,如果當天的開盤價錯了就會有問題,不過這種錯誤是馬上可以修正的。