MT4でTD Sequentialの「9」を矢印に変更する方法|バッファ表示・オブジェクト描画の違いと実装手順

外国為替、FX

MT4で人気のインジケーター「TD Sequential Ultimate」を使っていると、セットアップ完了の「9」をもっと視覚的に分かりやすく表示したいと考える方も多いです。特に矢印表示に変更したいというニーズは多く、本記事ではその実現方法と注意点を分かりやすく解説します。

TD Sequentialの「9」はどのように表示されているか

多くのTD Sequential系インジケーターでは、「9」はテキスト(オブジェクト)として描画されているケースが一般的です。

つまり、チャート上に数字を直接描画するため、通常のインジケーターバッファとは別の仕組みで表示されています。

この仕様の違いが、矢印への変更を難しくしているポイントです。

矢印表示に変更する2つの方法

「9」を矢印に変更する方法は主に2つあります。

① オブジェクトの矢印に変更する方法

現在の「9」がオブジェクト表示であれば、コード内のObjectCreate部分を修正することで矢印に変更できます。

具体的には、OBJ_TEXTをOBJ_ARROWに変更し、Wingdingsコードを指定します。

例:
ObjectCreate(0,name,OBJ_ARROW,0,time,price);

この方法は比較的簡単ですが、オブジェクト管理が増えるため、動作が重くなる可能性があります。

② インジケーターバッファで矢印表示する方法

もう一つは、インジケーターバッファを使って矢印を描画する方法です。

この場合、SetIndexStyleでDRAW_ARROWを指定し、SetIndexArrowで矢印コードを設定します。

例:
SetIndexStyle(0,DRAW_ARROW);
SetIndexArrow(0,233);

この方法は軽量で高速ですが、元のコードがバッファ非対応の場合、大幅な改修が必要になります。

実際にできるかはソースコード次第

重要なポイントとして、.ex4ファイル(コンパイル済み)では変更できません

矢印に変更するには、必ず.mq4ファイル(ソースコード)が必要です。

もし配布されたインジケーターがex4のみの場合は、基本的にカスタマイズは不可能です。

実例:よくある変更パターン

例えば、buysetupの9だけ矢印を出したい場合、条件分岐部分に以下のような処理を追加します。

・カウントが9になったらバッファに価格を代入
・それ以外はEMPTY_VALUEにする

これにより、9の位置だけに矢印が表示されるようになります。

一方、sellsetupも同様に別バッファで管理するのが一般的です。

どちらの方法を選ぶべきか

用途によっておすすめは異なります。

  • 簡単に変更したい → オブジェクト方式
  • 軽量・高速にしたい → バッファ方式

特に複数チャートで使用する場合は、バッファ方式の方がパフォーマンス面で有利です。

まとめ:矢印化は可能だが難易度は中〜上級

TD Sequentialの「9」を矢印に変更することは可能ですが、ソースコードの構造によって難易度が変わります。

オブジェクト方式なら比較的簡単ですが、バッファ化する場合はロジックの理解が必要です。

まずは自分のインジケーターがどの方式で描画されているかを確認し、それに合った方法でカスタマイズを進めることが重要です。

外国為替、FX
最後までご覧頂きありがとうございました!もしよろしければシェアして頂けると幸いです。
最後までご覧頂きありがとうございました!もしよろしければシェアして頂けると幸いです。
riekiをフォローする

コメント

タイトルとURLをコピーしました