MT4のEAはMQL4言語というC言語に基づいたプログラミング言語を使用しています。C言語をすでにご存じの方には馴染みやすい言語です。プログラミングはMT4をダウンロードしたときに付随しているメタエディタという機能を使って行うことができます。
EAをプログラミングするには取引ロジックを考えなければいけません。取引のルールです。EAは自分自身で判断して取引を行うのではなく、プログラミングされたロジックに従ってトレードを繰り返します。AIと違い、自己判断をするわけではないので、細かくルールをプログラミングしていきます。たとえば、「ゴールデンクロスでエントリー」というルールに対しても、「どういった条件が揃えばゴールデンクロスとみなすか」という点までプログラミングが必要です。決済にあたっても、ロット数や許容スリッページなどをあらかじめ組み込んでおきます。ルールや数値など細かく指示をしておかなければ、EAとして作動してくれません。
MT4のEAのプログラミングにはいくつかテンプレートがあります。以下一例です。
コード | 名前 | 意味 |
// | コメント | EAの動作に影響しない。コードの説明などを記載する。 |
int OnInit() | OnInit()関数 | EAが稼働開始するときに実行される関数。 |
OnDeinit() | OnDeinit()関数 | EAが稼働終了するときに実行される関数。 |
OnTick() | OnTick()関数 | 値動き(ティック)に合わせて実行される関数。 |
こういった関数を用いながらコードを順番に入力していきます。メタエディタにはテンプレートコードがあるので、最初のうちはテンプレートを利用するのがおすすめです。全てのコード入力が終了したら、コンパイルしエラーコードを修正していきます。地道な作業ですが、自作のEAが作れるようになるとFXトレードがますます楽しくなるでしょう。