FX裁量手法をEA化するまでの最短マニュアル
初めまして、わいぞー ( GogoJungleプロフィール )と申します。
FX自動売買プログラム(EA)を開発・公開して、5年が経ちました。
本稿では、私が学んだEA開発のエッセンスを凝縮して公開したいと思います。
習得に知識・時間を要する、エラー処理などは、私の見本コードを記載いたします。
是非、コピペできるマニュアルとしてご活用ください。
【対象人物】
・MT4とEAを使ったことがある人
・MT4でバックテストができる人
・EA開発 未経験~初心者
【本稿であなたができること】
・EA開発に必要最低限なプログラム知識の習得
・FX裁量手法をEA化するまでのフローの理解
・簡単な自作EAの作成とバックテスト評価
・EAの雛型となるソースコードの入手
■はじめに
「プログラムと聞いただけで、私には無理な気がして。。。」
「専門の人じゃないとできないでしょ?」
という言葉が、EA開発の依頼を受ける際の、決まり文句でした。
(EA開発者を気持ちよくさせるための文言だともわかっていますが。。。)
ですが、決してそんなことはありません。
EAだけであれば、半年もあればそれなりに自作できるようになります。
なぜなら、
EA開発は、FX取引プラットフォームMetaTrader4(MT4)のMetaQuotes社が展開している、MQL言語にてプログラミングをしていきます。
このMQL言語では、”FX取引に関わる関数”、すなわち "四足値・標準インジケータ値の取得や注文などの一連の処理"、があらかじめ豊富に定義されています。
なので、この”関数”を上手く組み合わせるだけで、意外と簡単に自動取引プログラム(EA)は作れてしまうのです。
少しお作法を覚えてしまえば、あとはレゴブロックのようなものです。
プログラムからEAを作れるようになれば、単純な条件分岐によるEA生成ソフト等よりも、柔軟に思い通りにトレード手法を再現できます。
・組合せで新たな指標を考えたり、、、
・Webから経済情報を引っ張ってきたり、、、
ちょっとした工夫だけで、優位な(に思える)独自手法が見つかったりします。
テクニカル分析は、長期間の仮説検証が出来てなんぼです。
そのためにも、戦略をプログラムに落とし込むスキルは今後も重宝されるでしょう。
【注意事項】
・本稿は、自作EAを作成するまでの、本当に最小限の理解とToDoになるように構成しています。製品化に向けた更なる実装(フェールセーフ処理など)の内容は含まれておりません。
・本稿によって生じた如何なる損失も補償は致しません。自己責任にてご活用ください。
・無断で複製、転用、転載、交換、または転送等を行わないようお願い致します。
それでは、本編へ入ります。
ここからは有料となりますが、EA開発をしてみたい、という方のお役に立てるよう精一杯、価値を高めて執筆いたしました。
いままであまり触れられてこなかった、実は比較的容易な、EA開発について、ソースコードまで余すことなく公開しています。
初心者の方でもわかりやすいように、図を多く用いています。
プログラムの習得は、サンプルプログラムを実際に手を動かして学んでいくのが一番効率が良いです。
コピペで読者もすぐに実践できるこのようなWeb上の媒体は、書籍以上の"体験"を読者に提供できると私は信じています。
私の5年分の経験を糧にしてください。ともにシステムトレードの最先端を目指しましょう。
修正・疑問点ありましたら、いつでもご連絡ください。
[初版]
2019年3月13日
【内容チラ見せ】
今回の題材ロジックですが、
前々から言われていた母(FX歴10年)の裁量手法をEA化してみようと思います。
そして、現在ポジション数のチェックを初めにします。
最大ポジション数以上の時には、エントリーを考える必要がないですからね。
ここは、少し説明が煩雑になるので、そのままコピペで使ってください。
処理内容はコメント文に記載しています。
_pos に、このEAによるポジションの数が格納されます。
お!すごい!
無修正のこのシンプルロジックで右肩上がりはなかなかですね。
・〇〇
・〇〇
などすると、良いものができるかもしれません。
【有識者によるレビュー(抜粋)】
■開発環境の構築
MT4でバックテストができる皆様なら、既に環境は整っています。
まずはMT4を起動してください。
茶色の紙のようなアイコンをクリックするか、
F4キーを押してください。
「MetaEditor」というのが開いたでしょうか?
これがプログラムを編集するエディタです。
それでは早速、新規EA作成に進んでいきましょう。
よろしいですか?