經FB的XQ社團 江加宏前輩指點
調整程式順序
先計算MACD 之後才執行if邏輯 while迴圈
已經沒有錯誤
**以下保留原本問題**
如題 自己寫while迴圈找近期MACD黃金交叉的股票
結果選出明顯不符合的狀況
測試時間2023/09/14 01:00
(2354鴻準 輸出發生日為0即當天)
謝謝小幫手
程式碼如下************
setbarFreq("D");//定義程式抓取的K線頻率
SetTotalBar(200);
variable: vl_av5(0), ma20(0), ma60(0),//管制用變數
_d(0), _m(0), _o(0),//計算結果變數
i(0), fn(0);//程式流程用
input:lim_v5(2000,"五均量門檻"), tr(10, "回朔建議設定20以下");
fn=0;
i=0;
ret=0;
vl_av5=average(volume,5);
ma20=average(close,20);
ma60=average(close,60);
if vl_av5>lim_v5 and close>ma60 and ma20>ma60 then begin//五日均量篩選
MACD(WeightedClose(), 12, 26, 9, _d, _m, _o);
while i < tr and fn=0 begin//tr天之內
condition1 = _d[i] crosses above _m[i];
if condition1 then begin//MACD黃金交叉
ret=1;
fn=1;
end;
i=i+1;
end;
end;
outputField1(i-1,"日MACD金叉發生日");