MT4のEAは、MT4に搭載されている「メタエディタ」機能を使って自作することができますが、一体どのように作られているのでしょうか。
まずはそのEAのロジックを考えていきます。どういった条件でポジションを保有し、どのタイミングで決済を行うか、どういったテクニカル指標を組み合わせるかといった内容です。
そして決めたロジックをプログラミングコードで書いていきます。下記がコードの一例です。
| コード | 意味 |
|---|---|
| OnInit()関数 | EAが稼働し始めたときに実行される関数 |
| OnDeinit()関数 | EAが稼働終了するときに実行される関数 |
| OnTick()関数 | 値動きごとに実行される関数 |
| #property | プログラムの特性 |
テクニカル分析をしたときにどういったシグナルが出たらエントリーをするか、どういった条件を満たしたらシグナル発生とみなすのか、などメタエディタで細かく入力していきます。
コードの入力が終了したら、実行→エラー修正をひたすら繰り返し、一通りエラーの修正が完了したらコンパイルを行います。
最適なパラメータ値を見つけるためには、MT4でEAの最適化を行います。最適化には少なくとも6ヶ月以上の精巧なヒストリカルデータが必要です。ここで誤った最適化を行うと、EAの成績は芳しくない成績となってしまいます。
その後バックテストを行います。バックテストは、そのEAが過去の相場においてどのような成績となるのかを、MT4を使い検証していく作業です。この作業はMT4にかなり習熟している人しかできないような、かなりレベルの高い作業となります。バックテストでうまくいかないところを、ロジックの変更を行い修正していきます。
バックテストの他にはフォワードテストを行います。フォワードテストは未来の相場でどういった成績を出すかを検証する作業です。それにはMT4のデモ口座を使うか、少額の資金で実際にEAを運用して確認していきます。