カスタムインジケーターチェック用EA画像

iCustom()関数でカスタムインジケーターを使ってEAを作る際、カスタムインジケーターのラインインデックスが何番のものを使えばよいかは、インジケーター設定ダイアログの「色の設定」でなんとなくわかります。

次の図は、VQの「色の設定」タブで、#0(インデックス0番)の幅を最大にして表示させた状態のものです。


vq_index.png

色や幅で、下記の表の通りの番号になることがわかります。

0番 Yellow ライン
1番 Green 上昇ライン
2番 Red 下降ライン
3番 Yellow ↑矢印
4番 Aqua ↓矢印

使用する番号がわかったら、次にその番号がどのようになればシグナルとするかを知る必要があります。

CustomChecker_EAv2

パラメーターIndicatorNameにカスタムインジケーター名を入力すれば、#0~#7までの3本前・2本前・1本前・現在の値をチャート上に出力してくれるEAです。

→CustomChecker_EAv2ダウンロード

下の図をみてください。

vq_index2.png

もし、現在の足の始値の時点で売りシグナル発生にしたい場合は、「4番のShift1がEMPTY_VALUEではない」という条件にすればよいですね。

double vq4_1 = iCustom(NULL, 0, "VQ", ・・・, 4, 1);
int sign = 0;
if(vq4_1 != EMPTY_VALUE) sign = -1;

という感じです。

もし、矢印を使わず赤色ライン確定で売りシグナルにしたい場合はもう少し複雑になります。

double vq2_1 = iCustom(NULL, 0, "VQ", ・・・, 2, 1);
double vq2_2 = iCustom(NULL, 0, "VQ", ・・・, 2, 2);
double vq2_3 = iCustom(NULL, 0, "VQ", ・・・, 2, 3);
int sign = 0;
if(vq2_3 == EMPTY_VALUE &&
vq2_2 != EMPTY_VALUE &&
vq2_1 != EMPTY_VALUE) sign = -1;

という感じです。

ラインの場合は矢印等とは違い、各バーの間の部分を直線でつないで表示するようになっています。

なので、上記売りシグナルの条件の意味は「3本前と2本前の間は表示なし、かつ、2本前と1本前の間は表示あり」ということになります。

複数のラインインデックスで1本のラインを描画するインジケーターの場合で重なって表示している場合は、インデックスの大きいほうが優先して表示され小さいほうは後ろに隠れてしまうので注意してください。(VQの#0黄色ラインのように。)