MQL4の作法

MQL4の作法

4XP => メタトレーダー対応、固定スプレッド、最小1000通貨
50種類以上の通貨ペア、各種CFD(金、株など)対応

にほんブログ村 為替ブログ FX システムトレード派へ

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と使い分けが必要です。

 

にほんブログ村 為替ブログ FX システムトレード派へ 人気ブログランキングへ

タグ

トラックバック&コメント

この記事のトラックバックURL:

まだトラックバック、コメントがありません。

コメントを投稿する



この記事のコメントだけのRSSフィードを取得

Spam Protection by WP-SpamFree


MQL4という言語 »
« MQL4で利用できる変数