インジケータの情報を取得する2
50種類以上の通貨ペア、各種CFD(金、株など)対応
前回に引き続き、「ZigZag」インジケータを利用します。
この「ZigZag」インジケータをつかって、別のインジケータを作ってみましょう。
「簡単インジケータ作成テンプレート」を使ったサンプルを作ってみます。
テンプレートを適当なファイル名にコピーして、
インストールパス\MetaTrader\experts\indicators
に入れてください。
コピーした、テンプレートのinit()を以下のように修正してください。
int init()
{
//—- indicators
SetIndexStyle(0,DRAW_ARROW, EMPTY, 4);
SetIndexArrow(0,159);
SetIndexBuffer(0,ExtMapBuffer1);
SetIndexStyle(1,DRAW_ARROW, EMPTY, 2);
SetIndexBuffer(1,ExtMapBuffer2);
SetIndexStyle(2,DRAW_ARROW, EMPTY, 2);
SetIndexBuffer(2,ExtMapBuffer3);
//—-
return(0);
}
次は、DataSet()を以下のように修正してください。
void DataSet(int i)
{
ExtMapBuffer1[i]=iCustom(NULL, 0, “ZigZag”,12,5,3,0,i);
ExtMapBuffer2[i]=iCustom(NULL, 0, “ZigZag”,12,5,3,1,i);
ExtMapBuffer3[i]=iCustom(NULL, 0, “ZigZag”,12,5,3,2,i);
}
これで終了です。
今回注目する点は、
iCustom(NULL, 0, “ZigZag”,12,5,3,2,i);
インターフェース仕様は、
double iCustom( string symbol, int timeframe, string name, …, int mode, int shift)
で、symbolにNULLを入れることで、今利用している通貨ペアを使用します。
timeframeに0を入れることで、今利用している通貨ペアの時間軸を使います。
nameは、利用したいインジケータ名「ZigZag」。
ファイル名の拡張子をのぞいた名前を使います。
問題は、次の…。
ここは、利用元のインジケータのパラメータを入れます。
「ZigZag」は、3つパラメータがあるので、3つ。
12,5,3
を指定しています。
利用元のインジケータのパラメータが0なら0、20なら20。
引数が可変になるので、分かりにくいところです。
modeは、何番目のバッファから取得するか。
shiftは、何番目の足の情報を取得するかです。
パラメータ設定部分が、わかりにくいので注意してくださいね。
コンパイルして、動かすと元々線が出ていた場所は、赤丸。
バッファ1が青い×。
バッファ2が緑の×。
が表示されるはずです。
この方法は、いろいろなインジケータから情報を取得できるので、おもしろいことができると思います。
タグ
2009年06月06日 コメント&トラックバック(3) | トラックバックURL |
カテゴリ: インジケータ メタトレーダー入門 簡単インジケータ作成テンプレート
50種類以上の通貨ペア、各種CFD(金、株など)対応
トラックバック&コメント
トラックバック
-
[...] インジケータの情報を取得する2で説明しているので、そっちの方向でまずがんばってみてください。 [...]
ピングバック投稿者: インジケータからEAを作ってみるときに | メタトレーダープログラミング めたぷろ — 2009年11月10日
コメント
コメントを投稿する
インジケータの情報を取得する »
« ねた募集!


![[image]投資で失敗しない7つの法則:無料CDプレゼント](http://www.affiliatecenter.jp/invest/img/FX_freeCD/banner165x100seven_rule5e.gif)
![[image]無料レポートプレゼント:ドルが紙くずになった時に資産を守る方法](http://www.affiliatecenter.jp/invest/img/dollar/MNL4_165x100.jpg)



MyBlog

こんにちは。
最近mt4とこのサイトを知り、毎回更新を楽しみにしています。
先月、zigzagの値からRSIダイバージェンスの有無を表示させるプログラムを創ろうとがんばりましたが、うまくいかず挫折中です。(足の更新とともになぜかラインがずれていってしまう)
プログラム中の解説が絶妙で、とてもわかりやすいです。わからないところがあったら質問させてください。これからもよろしくお願いします。
コメントありがとうございます。
分からないことがありましたら、できる範囲で答えますのでコメントにでも書き込んでください。
これからもよろしくお願いします。
[...] インジケータの情報を取得する2で説明しているので、そっちの方向でまずがんばってみてください。 [...]