OnCalculateの注意点

tocchi2023/05/21(日) - 18:08 に投稿

新しいMQL4でインジケータを作成する場合、OnCalculate()を使用して作成することになるが
こいつの引数であるopen, high, low, closeの配列方向に注意。

時系列配列の方向とopen, high, low, closeの配列方向が逆になっているために
これらを使用するときは方向をあらかじめ統一しておかないと上手くいかない。

インジケータは基本的にデバッグしにくい上に、
open, high, low, closeの内容が原因だとは思わないため、バグ調査に時間がかかる。

使用する際は以下のように方向を統一してから使用する。
参考:ATR.mq4
   ArraySetAsSeries(ExtATRBuffer,false);
   ArraySetAsSeries(ExtTRBuffer,false);
   ArraySetAsSeries(open,false);
   ArraySetAsSeries(high,false);
   ArraySetAsSeries(low,false);
   ArraySetAsSeries(close,false);
 

タグ