わいぞーさんの、「FX裁量手法をEA化するまでの最短マニュアル」で実際にマニュアルにあるEAを作ってみました。
<こんなレベルに戻ってやってみました。EA作るのは本当に初めて。>
- 開発にめっちゃ関心がある!
- でもプログラミング触ってみたいけど本を読んで挫折した
- EAは今回が初めて
- EAで最近ドローダウンが発生して激おこプンプン丸
初心者でも本当に自作EAは作れるのか?
コンテンツ執筆者のわいぞーさんについて
ちなみに、わいぞーさんのスペックはこんな人。
ゴゴジャンのEA開発者の中でもPython使っているって謳っている方は珍しいのでは。
25歳愛知のメーカーの真面目系エンジニア
【投資歴5年】日本株/IPO/米国株/FX/仮想通貨,
【使用言語】Python/R/MQL/C++/HTML
【使用フレームワーク】Keras/Django/Kivy,
【ブログ】https://yzofx.com/
コンテンツ概要
わいぞーさんの、コンテンツを転用すると・・・
【対象人物】
・MT4とEAを使ったことがある人
・MT4でバックテストができる人
・EA開発 未経験~初心者【本稿であなたができること】
・EA開発に必要最低限なプログラム知識の習得
・FX裁量手法をEA化するまでのフローの理解
・簡単な自作EAの作成とバックテスト評価
・EAの雛型となるソースコードの入手
ということです。
初心者として知りたいこととしては、こんな感じ。
- どうやってルールをEA化するのか?
- どうやって実際エントリーするのか?
- どうやってエグジットさせるのか?
バックテストは、EA利用者として普段使うので、私の場合はまず上記3つが知りたかったです。
結論から言うと、
上記は初心者でも理解できました。
開発環境を立ち上げる
できるようになります。
このnoteでなくても、各サイトにのっていますので問題ないかと思います。
プログラムの超基礎
開発環境を立ち上げて新規EA用のエディタを立ち上げると、既にいくつかプログラムコードが書かれているのですが、こちらの解説と意味がしっかりと説明されています。
なお、後述しますが、どうしてもif文などの言語特有の構文は、数をこなして覚えるしかないと思います。
このあたりは、実際にMQL言語のリファレンスを参考に取り組む必要がありそうです。
外部パラメーター
いわゆるEAのプロパティの設定です。
変数の型については、プログラム初心者には難しい概念ですがわからない場合はとりあえず「ふーん」という感じで大丈夫です。
ゴミ箱でいうなら、燃えるゴミと燃えないごみ、空き缶とかに選別するためのラベルですね。燃えるゴミに空き缶が入っていると、掃除担当のおばさんが怒るように、数字の型に”こんにちわ”みたいな文字を入れるとエラーになる感じです。
メインロジック
ここは初心者の方だと実際詰まると思います。
プログラミングの基礎的なif 文のような構文の書き方に慣れていないからです。
正直、ここは何度も書いて条件式の書き方を覚えるしかないのではと思います。
noteの中でもエントリーとエグジットの少なくとも2回はコードを書く機会があるので、コピペせずに書いてみると良いでしょう。
パラメーターの解説はありますので、書きながら「これは、こういう意味か、ふーん」といいながら書いてみると良いと思います。
ただ写経するだけでは、身につきませんので。
恐らくパラメータを入れる時に、何の値を入れているんだろう?と思う気がします。
ロジックを組み立てる際に条件の比較は、とあるタイミングのローソク足から取得できる、あらゆる値を利用して組み立てます。
このあたりを意識しながら作ると良いのかなと思いました。
あと、コンパイルエラーの代表的な説明があるともっと良いかなと思いました。
エラーが出たけど、これは初心者辛いかも。
よくあるエラーでした! タイプミスもエラーになるので要注意!
バックテスト
わいぞー母のロジックはEURJPYとのことですが、私はドル円で動かしてみました。
おおお!凄い!プラス収支です。
感想とおすすめする対象
大体この記事と併せて2時間弱となりました。
文字量は17000文字と多くないので、値段に比べると、物足りなさを感じるかもしれませんが、初めてEA作る方にとってはかなりおすすめできるのではないかと思います!
現役のエンジニアならではのコラムなどもあり、バックテストまで飽きずに取り組むことができました。
個人的には、自分のルールをどうやってロジックに落とし込むのか凄くわかりやすかったです。
やはり、実際のコードを見ながら解説があるとわかりやすいですね!
欲をいえば、実際に運用するために必要な残りの処理等をリスト化&補足いただけると、ここを起点に自己学習が進むかなと感じます。(チラッ、チラッw)
【対象人物】
・MT4とEAを使ったことがある人
・MT4でバックテストができる人
・EA開発 未経験~初心者【本稿であなたができること】
・EA開発に必要最低限なプログラム知識の習得
・FX裁量手法をEA化するまでのフローの理解
・簡単な自作EAの作成とバックテスト評価
・EAの雛型となるソースコードの入手
ということで、上記に記載されている内容は全部学ぶことができます。
逆に書籍等で既に学習済みの人が学ぶ場合には少し物足りなさを感じるかもしれません。
興味を持たれた方は是非チャレンジしてみて下さい!