最近喜歡找三角收斂的股票 但在條件的設定上不管怎麼抓,跑出來的資料都很奇怪,尤其是抓出來最低或最高點的位子,看起來是因為位子抓錯才導致極值也錯,但是不太懂是哪裡出了問題 事了很多方法修正,但好像都沒有解決道問題
抓高低點那邊 我主要是希望在抓完最近的高低點之, 能避免再把同一隻K棒的高低點算進去,所以把上個抓出來的K棒數,當成下個抓K棒高低點的起點,所以用Highestbar(H[HKB1],13),然後低點的部分因為想要讓低點出現在最近的高點之後,所以用lowestbar(LowW(HKB1),5)來抓,可是這樣抓出來的資料都超級奇怪的,然後下面有今天跑出來的結果,就真的怎麼看怎麼怪...,希望有人可以幫忙解惑~
setBarFreq("W");
settotalBar(100);
//抓高低點
var: HKB1(0), HKB2(0), HKB3(0), HK1(0), HK2(0), HK3(0);
HKB1 = highestbar(HighW(0),5); HK1 = HighW(HKB1); //最近的高點
HKB2 = highestbar(HighW(HKB1),13); HK2 = HighW(HKB2); //第二個高點
HKB3 = highestbar(HighW(HKB2),34); HK3 = HighW(HKB3); //第三個高點
var: LKB1(0), LKB2(0), LKB3(0), LK1(0), LK2(0), LK3(0);
LKB1 = lowestbar(LowW(HKB1),5); LK1 = Loww(LKB1); //最近的低點
LKB2 = lowestbar(LowW(LKB1),13); LK2 = Loww(LKB2); //第二個低點
LKB3 = lowestbar(LowW(LKB2),34); LK3 = Loww(LKB3); //第三的低點
//抓高點斜率跟低點斜率
var: HS(0), LS(0) ;
HS = (HK1 - HK2) / (HKB2 - HKB1);
LS = (LK1 - LK2) / (LKB2 - LKB1);
//波幅收斂
if absValue(HK1-LK1)/LK1 < absValue(HK2-LK2)/LK2{波幅收斂}
and (HKB2-HKB1 < HKB3-HKB2 {or lKB[2]-lKB[1] < LKB[3]-LKB[2]}){時間段收斂}
and absValue(HK2-LK2)/LK2>0.07
then ret = 1;
outputField1(HKB1);
outputField2(HKB2);
outputField3(HKB3);
outputField4(HK1);
outputField5(HK2);
outputField6(HK3);
outputField7(LKB1);
outputField8(lKB2);
outputField9(lKB3);
outputField10(lK1);
outputField11(lK2);
outputField12(lK3);
outputField13(HS);
outputField14(LS);

6 評論