MQL4の作法
50種類以上の通貨ペア、各種CFD(金、株など)対応
MQL4で、プログラムを組むときに必要な作法を紹介します。
メタトレーダーでインジケータやEA(自動売買)を行うプログラムを組むときに、標準で用意されている関数があります。
基本は、この関数の中にコードを書いてプログラムを実装していきます。
○起動したときに1度だけ呼ばれる関数
int init()
{
return(0);
}
○終了するときに1度だけ呼ばれる関数
int deinit()
{
return(0);
}
○レートが変化したときに呼ばれる関数
int start()
{
return(0);
}
※関数の前にvoid(型がない)を指定してある以外は、最後にreturn(値)で終了する必要があります。
インジケータやEAを作成するときに自動でスケルトン(処理が書かれていない関数)が自動的に作成されますが、initとdeinitは、省略可能です。
使い方としては、initはstartで使う変数を初期化したり、最初に1度だけやりたい計算や設定ファイルからの読み込みなどを書きます。
deinitは、終了するときに変数の内容を書き込んだり、ポジションをクローズしたりするときに利用します。
startは、レートの変化に合わせてグラフを書いたり、ポジションを持ったり、クローズしたりします。
ちなみに、インジケータとEAの差は、
インジケータは、足の数に合わせた変数配列を8個持つことができます。
この配列は、グラフの値とすることができて、ラインを引くと設定しておけば、値を入れるだけでグラフを書くことができます。
売買を行うことはできません。
EAは、インジケータのようなバッファを持つことができません。
ただし、自分で宣言すれば変数配列を利用することは可能でが、グラフを自動的に書くようなことはできません。自分で宣言すればグラフを書くことは可能ですが、数に制限があったりするのでグラフを書くことは不向きです。
売買を行うことが可能です。
ということで、グラフを書くにはインジケータ、自動売買を行うにはEAと使い分けが必要です。
タグ
2009年05月01日 コメント&トラックバック(0) | トラックバックURL |
50種類以上の通貨ペア、各種CFD(金、株など)対応
トラックバック&コメント
この記事のトラックバックURL:
まだトラックバック、コメントがありません。
コメントを投稿する




MyBlog
