インジケーターで内部計算用バッファを使う時の配慮

計算値をデータウィンドウ、チャートに表示させない

インジケーターによっては内部計算用バッファを使いたくなるケースがあります。

内部計算用バッファとは、チャートに表示しても意味がない途中計算の値のことです。

何も考えずにインジケーターを作成すると、チャートとデータウィンドウに内部計算用バッファの計算値がそのまま表示されてしまいます。

ですので、それらをチャートとデータウィンドウに表示させないようにしましょう。

OnInit関数で設定するだけです。

//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int OnInit()
{
  SetIndexBuffer(0, draw);
  SetIndexStyle(0, DRAW_LINE, DRAW_LINE, 1, clrYellow);
  SetIndexLabel(0, "draw");

  SetIndexBuffer(1, drawNone);
  SetIndexStyle(1, DRAW_NONE, DRAW_LINE, 1, clrNONE); // チャートに表示しない
  SetIndexLabel(1, NULL); // データウィンドウに表示しない

  return(INIT_SUCCEEDED);
}

drawが本来表示すべきインジケーターのバッファ、drawNoneが内部計算用バッファと仮定しています。

SetIndexStyle関数でDRAW_NONEを設定することで、チャートに表示されなくなります。

そして、SetIndexLabel関数でNULLを設定することで、データウィンドウにも表示されなくなります。

使いやすさ、分かりやすさはこうした細かい配慮の積み重ねの上に成り立ちます。

ぜひご活用ください。

MT4の無料プログラミング講座

LINE公式アカウントを友だち追加して、MT4のプログラミング講座を無料で受けちゃおう!

超豪華プレゼントも盛りだくさん♪

MT4プログラミングを習得すると、オリジナルEA運用、作成代行、商品販売等、複数の収入源を手に入れられるよ。副業に最適だね!

↓↓↓ 詳細はこちら ↓↓↓

アイキャッチ

>

エターナル・パートナーPRO ~MT4裁量トレード支援ツール~ 「MT4は裁量トレーダーに優しくない」そう思ったことありませんか?もっと快適にトレードするための強力な売買ツールが必要だと考え、開発したのが「エターナル・パートナーPRO」です。元々は自分自身のために開発したツールですので、手抜き無しのガチものです。既に200名近い方に手に取っていただき、喜びの声が続々と届いております。ぜひご覧ください!

CTR IMG