ニュースの話題の半分はコロナ関連で埋め尽くされ、外出自粛を強く求められている昨今、なにげにネット上での情報コンテンツも「在宅で副業」とか「コロナ相場で爆益」とかいった時局に乗った謳い文句が踊るようになりました。
そういうわけで当サイトでも、外出自粛で暇を持て余している(かもしれない)トレーダーの皆様のために、本稿を提供することにしました。
自動売買のEAソフトというのは、専門家か、あるいはプログラムに精通した人の専売特許だと思っていませんか。
実は、世の中にはお優しい方もいるもので、簡単な入力だけでEAを作れるサイトを提供してくださっている方もいるのです。
かくいう私もパソコン音痴ですが、当サイトで検証用に使用しているEAはこのサイトで作っています。
これ、正直、かなり使えます。
使えば使うほど、病みつきになります。
自分のアイデアをEAのロジックに組み込んで、MT4でバックテストして、ロジックを調整して、やり直して、また別のロジックアイデアが浮かんできてそれを試す〜という繰り返し。
これが、時間も忘れるほどおもしろい。
皆様もぜひ、時間のあるうちに遊んでみてください。EA作成を通して、システムトレードに対する理解が大きく変わるかもしれませんよ。
そしてひょっとすると、自分でトレードするより便利な最強のEAを開発してしまうことも、不可能ではありません。
EA作成機の使い方
自動売買EAを作るといっても、その稼働検証までできてようやくEAの完成です。いや、勝てるEAかどうかは別として、まずはここがスタートライン。
まずここから説明していきます。
無料サイトFX LogBook
私が利用しているEA作成ツールは、次のウェブサイトで誰でも無料で利用できます。(2020年4月現在)
>> FxLogBookβ版
『EA作成機』 のリンクからEA作成ツールに進みましょう。
EA作成機では、基本的に3段階のステップがあります。
まず、「基本設定」。
MT4の EAにするのか、MT5のEAにするのか。
基本のロット数は?スプレッド制限は?曜日制限や時間制限など、ロジックとは別の条件の多くをここで設定することになります。
EAでなくインジケーター(サインツール)を作るという選択もここでできます。
次に「エントリ」。
ここではEAに組み込むロジックを、インジケーターとその設定から選ぶことができます。
あなたの欲しい機能を100%備えているとは限りませんが、無料にしてはかなりの選択肢が用意されていると思います。
ちなみに、ここで設定した数値等はデフォルトということになり、後にMT4/MT5のチャート上でもパラメーターで変更することができます。
最後の設定が「エグジット」。
ポジションをどのようにエグジットさせるのかを設定します。
固定のpips幅で利食い/損切りとするか、トレーリングストップを発動するか。
または一定時間経過後に強制決済するかどうか、週末にかかる前に強制決済するかどうかなども選択することができます。
ここまでできたら、「セーブ&EA作成」に進んで「EA作成」ボタンを押しましょう。MT4/MT5 のEAのソースファイル(MQLファイル)に書き込むためのプログラムコードが生成されます。
「データーセーブ」を押して、ここまでの設定を保存しておきましょう。
コンパイルしてMT4で使用できるようにする
次に、パソコンのMT4上に上記で作ったEAを反映させる必要があります。
そのやり方はEA作成機の「MT4/5登録方法」に記されていますので、ここでは割愛します。
ただ、コンパイルエラーが出たときのことについて一言。
よほどおかしな設定でもなければ、コンパイルエラーが出ることはないと思いますが、それでもときどき次のようなコンパイルエラーが出ることがあります。
これは、ソースコードの中で重複している指示があることをいっています。
なので、指定されている箇所を削ります。少なくとも、私はこの作業をしてEAがおかしくなったことはありません。
これで再度コンパイルして、エラーがなくなるかどうか見てみましょう。
これでもまだエラーが出たら、、、、プログラミングの素養のない私と同じレベルの方はもうなす術がありません。ネット上でMT4のプログラミングを勉強してみるか、早々にあきらめて別のロジックでのEAにとりかかるか、ですね。
ストラテジーテスター
MT4にEAのファイルを設置したら、正常に稼働するかどうか試してみる必要があります。
MT4に標準搭載されているストラテジーテスターを使いましょう。テストと同時に、有用なEAになっているかどうかの検証にもなります。
MT4の次のアイコンをクリックしてください。これがストラテジーテスター、つまり戦略検証ツールです。
一番上にあるEAの選択欄から、先ほどコンパイルしたEAを選択しましょう。ここにそのEAがなければ、まだMT4に反映されていません。ナビゲーターのエキスパートアドバイザーでの右クリックから「更新」するか、あるいはMT4を一度閉じて開き直してみてください。
ここでどうしてもお目当てのEAが表示されなければ、そのEAはどうも失敗しています。作り直してみましょう。
何度作り直してもやっぱりよくわからない時は、PCの問題ということもありました。
私の場合、Windows10 で作ったEAが使えず、Macで作った全く同じものは使えたことがありました。なので、Macで作ったMQL4ファイルをWindows10 にメールで送って、今は問題なく使っています。
さて、お目当てのEAを選択したら、色々な設定を試して検証してみましょう。
思っていたロジックの通りのところでエントリーしているかどうか、ビジュアルモードで確認してください。
思った通りの勝率にならないとき、きっと「え、こんなとこでもエントリーしちゃってるの??」となることもあるでしょう。
例えば、3本の移動平均線のパーフェクトオーダーをロジックにしていても、レンジ状態で移動平均線がこんがらがっているような時でもエントリーしていたりします。しかも、何度も。(上の画像がそうです)
これは、移動平均線が上へ下へとウネウネしている時に「パーフェクトオーダーの並び」になれば、EAは条件合致とみなすからです。
そういった「想定外」をいかに少なくして理想通りのエントリーに絞っていくかの行程が、意外と楽しいんですよね〜。
色々なEA作りのヒントがFXLogBookのサイトにありますので、ぜひご参照ください。
オススメの使い方
テスト用EAでアイデア乱れ打ち
私の場合は、ですが。
FXLogBookで試作したEAを手早く試せるように、MT4のエキスパートアドバイザーフォルダに「test」という名のテスト用のMQLファイルを入れています。
ちょっとこのロジックどうだろ〜、というときにFXLogBookで作ってみて、テスト用ファイルにコンパイルします。思った通りの効果がなければまたこのファイルは次の試作に使い回しますし、良さそうであれば何度も改良しつつコンパイルを繰り返して、納得できるロジックになったら改めて別ファイルにひとつのEAとして完成させます。
FXLogBookでは3つまでしかロジックを保存できないので、こうやってスペースを節約しているということですね。
それに、適当に使い回せるEAファイルがひとつあれば、それはそれで、楽。
とゆうわけで、このようにお試しコンパイル用のファイルを設定したところで、EA作成機の活用方法を確認しておきましょう。
検証用EAなら普段のトレード環境に近い設定を
EA作成機で作ったEAで、トレードロジックの有効性を確認したい。つまり、裁量のロジックが有用かどうか、バックテストで検証するためのソフトにしたいという場合について。
トレードの環境はトレーダーによって様々ですよね。
夜中の10時から12時までしかできない、とか。
月曜日は仕事休みだから月曜日だけトレードする、とか。
そういった前提も、EA作成機の「基本設定」で設定できます。
また、厳密な資金管理でエントリーロット数を決められるという方にとっては、○○pipsの損切りで口座残高の××%を失う設定でエントリーロットを決める、という形で資金管理を兼ねた複利機能を持たせることも可能です。
そのようなトレードをすることでどれだけのメリットがあるか、こちらの記事でご参照ください。
参考記事:資金管理は算数で上等!勝ちトレーダーになるための簡単な3ステップ
ストラテジーテスターの方では、初期証拠金も設定できますので、よりリアルな検証ができることでしょう。
ただし、前述しました通り、EAは条件さえ揃えばエントリーするものですので、思いもよらぬところでエントリーしたりします。
例えば先ほどの例で「3本の移動平均線のパーフェクトオーダー」のロジックであれば、「高値安値の更新が続いてトレンドが継続している状態」などの条件を加えて、これを検証結果のビジュアルモードのチャートの中で手動でトレンド部分を確認していくことで、実際にどれだけの信頼性があるかを見極めることができます。
あるいは逆に、「トレンド発生の条件を満たしているのは●月●日から■月■日まで」とあらかじめ範囲を絞っておいて、その期間だけの検証をすることもできますね。
実戦用EAなら条件のナローダウンを
次に、上のような裁量ロジックの検証目的などでなく、実戦投入して稼いでもらうためのEAを作りたい場合。
これはもう、「確率の高さに投資する」という投資本来の、あるいは投機的な考えに立ち返ることが肝要ではないかと思います。
このロジックで勝率の高いのは何曜日か。
東京時間が良いのか、欧州時間が良いのか、はたまたニューヨーク時間か。
週末はポジション保有のままのほうが稼げるか、あるいは強制決済しておいたほうがいいのか。
などなど。
このように、より「稼げる」確率の高くなるように、条件を絞り込んでいくのがオススメです。
ただし、これはいわゆるカーブフィッティング。やり過ぎもまた危険。
過去数ヶ月程度の相場ではこれで勝てていたであろう〜という設定を研究しても、今日から未来の相場でも通用するかといえば、それもまた微妙。
できるだけ長い期間で良好な検証結果を出せているのであれば、それは今日時点とこの先しばらくも通用する可能性はあるでしょう。
そういう意味では、やはり「最高傑作」と呼ばれるEA「Master Piece FX」は過去15年間分のバックテストで勝率98%かつ資産曲線右肩上がりだというから、只者ではありません。
参考記事:最高傑作のFX自動売買 Master Piece FX / 特典:複利を加速させる裏技
逆に、私が自分で作るEAの理想形としては、相場環境なんていう しゃらくさい概念もぶっとばすぐらいの超絶シンプルなロジックで、勝つべくして勝つ自動売買ですね。
これなら、トレードする条件をナローダウンしていくことで勝率の高さを追求しても、カーブフィッティングではなく「理論固め」ともいえる、そのようなEAがいいなと思っています。
メール通知機能は別で付加する
ところで、このEA作成機はEAの応用として、サインツールとしてのインジケーターも作れるわけですが、せっかくのサインツールであればメール通知してくれる機能も欲しいところですよね。
残念ながら、FXLogBookのEA作成機には、メール通知機能はありません。
なので、必要であれば別の追加インジケーターを使用します。
外部サイトで恐縮ですが、以下をご参考ください。
>> 任意のインジケータのシグナルでアラートやメール機能を追加する(Wizard In The Market)
また、メールを飛ばすためにはMT4からあなたのウェブメールなどを経由して発信してもらう必要がありますので、設定する必要があります。
Yahoo!メールでよろしければ、こちらのウェブサイトをご参考ください。
>>MT4(メタトレーダー4)メール送信の設定方法|外出先でもアラートやシグナルサインをスマホに送信(A-KU Forex)
同時に、メールを受け取るアプリがスマホに必要ですね。普段お使いのメールボックスにサイン通知メールが溜まっていくのはいやだな、、と思った私はmyMailをインストールして受信専用ボックスとして使っています。
EAつくーるも、良い!
以上で紹介しましたFXLogBookのEA作成機は、管理者様がひとりで制作、運用されているものですが、EA作成ツールといえばもうひとつあります。
いや、これは、もしかすると有名でしょうか。
「投資家の英知をすべての人に。」でおなじみのGogoJungleで販売されているEA作成機、その名も
そして姉妹品の
これらの活用方法と本稿でご紹介した『EA作成機』、どちらを使うべきか徹底解説した記事がありますので、よろしければご参照ください。ご購入者様へのおまけ特典も充実!
関連記事:プログラミング不要!「EAつくーる」vs「EA作成機」できること比較
なお、『EAつくーる』にはメール通知機能もばっちりついています。
EA作成の醍醐味に目覚めてしまった方は、試してみてはいかがでしょうか。
こちらは企業体が売り出しているだけあって、利用者から寄せられたQ&Aが充実しています。その点も、嬉しいですね。
まとめ
・ 自分のアイデアでEAが作れる有り難いサイトがある
・ 裁量ロジックをEAに落とし込んで、ロジックが有益かどうかバックテストできる
・ 自動売買のためのEAを作るなら、過去相場のためのカーブフィッティングにならないように注意