「MT4 EAなんて無料で使えるのに何で自わざわざ自作するの?」
「プログラムなんて分かんないし自作なんて絶対無理!」
タイトルを見てそう思った方がほとんどではないでしょうか?
しかしながら、実はEAを自作する事はすごく重要で、トレーダーとしてのスキルを格段に向上させてくれます。
また、プログラムが分からなくてもEAを作成できるツールがあり、実は凄く簡単に自作ができるのです。
本記事では、EAの自作が重要である理由と、ツールを活用した簡単なEA作成方法について解説したいと思います。
MT4 EAを自作すべき理由
MT4 EAとは
EAとはExpert Advisorの略で、MT4(MetaTrader4)で稼働させられる自動売買ソフトです。
EAには売買条件がプログラミングされており、FXトレードを自動で実行する事ができるため、感情に左右されずに機械的な取引ができます。
通常は1つのEAにつき1種類の売買ロジックがプログラムされているため、ロジックの異なる複数のEAを入手して同時に稼働し、リスクを分散させて運用するのが一般的です。
MT4 EAの入手方法
EAの入手方法は様々で、大きく分類すると、他人が開発したEAを入手する方法と自主的に開発する方法に分かれます。
それぞれについて以下に解説します。
無料EAと有料EA
他人が開発したEAは、無料のものもあれば、有料のものもあります。
無料で入手できるEAについては、善意でEAを配布している人もいれば、証券会社や法人、個人が口座開設を条件として提供している場合もあります。
有料で入手するEAはほとんどの場合は専用の販売サイトから購入できます。
しっかりとした販売サイトから販売されているEAは丁寧なサポートがありますし、レビューや人気度から購入前にそのEAの多くの情報が得られます。
有料EAも無料EAもバックテストはもちろん、フォワードテストも確認する事ができる事がほとんどなので、EAの性能をある程度把握できます。
しかしながら、このバックテストやフォワードテストが信頼できるものかどうかを判断する事がEAトレーダーの腕の見せどころであり、難しい部分でもあります。
MT4 EAの自主開発(代行と自作)
EAの自主開発はプロに依頼する方法と自作する方法があります。
既に優位性が裏付けされた自信のある売買ロジックを持っているのであれば、EA制作業者に依頼して外注するということができます。
ただし、自分だけが知っている優秀な売買ロジックを開示する必要がある事に加え、当然作成コストがかかります。
簡単なロジックであれば製作費は平均5万から10万円前後、著作権譲渡の場合には別途費用が掛かることがほとんどで、修正の度にコストが発生する場合もあります。
一方でEAは自作する事も可能です。
EAを自作するには、MT4専用の言語で記述するプログラミングで作成します。
ほとんどの人はプログラミングと聞いただけです。メンタルブロックがかかり、手を出そうとしません。
しかしながら、冒頭で述べたように、実はツールを使って簡単にEAの作成ができるのです。なお、私は自作を強く勧めておりますが、その理由は次の項で解説したいと思います。
MT4 EAは自作が圧倒的に有利
1.2で解説した通り、EAの入手方法は様々ですが、全てを試し、試行錯誤して辿り着いた私の結論は、
「EAは自作するのが圧倒的に有利である」という事です。その理由は主に以下の4つです。
ロジックを完全に理解できる
自分で作成したEAでなければ、詳細なロジックを把握する事ができません。
これは実は大きな危険要素です。
正しく理解できないEAをどうやって上手く活かす事ができますでしょうか?
ほとんどの人が調子の悪いEAの稼働を止めて、調子のいいEAを稼働するという事をしていますが、正しいポイントで稼働と非稼働を判断できるのはロジックの詳細を理解している人だけです。
成績が悪くなってきて信頼できなくなり稼働をストップしたと思ったらそこから優秀な成績を収めるはじめ、再稼働したらまた成績が下がる。そうやって資産を減らしていく人がほとんどです。
他人が開発したEAのバックテストはカーブフィッティングでいくらでも結果をよく見せられますが、自作したEAでそんな事をしても全くの無意味です。
客観的なデータで正しく統計を取り、予め決めておいた判断基準に基づいて稼働と非稼働を決める。
これを一番忠実に実行できるのは、EAを自主開発した人だけなのです。
例として普段裁量で取引していて自分の得意なロジックがあったとします。
そのロジックをEA化しバックテストを行う事で自分が気付いてなかったそのロジックの弱点に気付けたりします。
バックテストを行うと…
- 勝率
- 平均損益
- ドローダウン
などの客観的な数字で表示されるので、そのロジックの本当の姿が見える事でしょう。
バックテストのデータを見て「自分の思ってたより勝率が低かった…」としたら、どの期間に利益を損なったのかを目視で確認できるので、インジケータを追加する等、改善を試みる事が出来ます。
それによってロジックをより進化させる事も出来るでしょう。
EAの選定や運用のスキルが大幅に向上する
EAを自作するとEAの正しい評価スキルが身につきます。
また、巷で入手できるEAの嘘が手に取るように分かるようになりますので、一時的な爆益やバックテストに騙されて運用を開始した後にすぐ破産、なんて事はほとんどなくなるでしょう。
EA開発者は良すぎる成績、資産曲線には必ず何かがあると身を持って知っています。
まずは疑ってかかり、慎重に、冷静に他人が作ったEAを評価する事ができます。
自作したEAを販売する事で収益化できる
自作したEAは販売する事ができます。
5万円で売って100人に買ってもらえればそれだけで500万円の売り上げです。
成績優秀なEAを作る事ができれば、これは決して難しくない数字です。
自分だけのオリジナルな優秀なEAを作る事は非常に難しい事ですが、一回作ってしまえばあとは不労所得ですから、チャレンジする価値はあります。
コストがかからない
自作するので当然コストはかかりません。
プロに開発を依頼すると、1つのEAに十万円前後のコストが発生しますので、思いついたロジックを少し試してみると言った事はなかなか難しいのが現実です。
それに対し、自作の場合であればどれだけ試作してもコストはかかりませんので、様々なロジックを試す事ができます。
何十、何百とEAを作っていく間に様々な事を学習し、スキルが向上していくのもメリットです。
MT4 EAの制作は実は簡単
ここまではEAの自作が重要である事を述べてきました。次は、自作は決してハードルの高いものではないという事をお伝えしたいと思います。
MT4 EAの作り方
MT4で使うEAは、MT4のプラットフォームである『メタエディター』で開発します。
プログラム言語は「mql」という専用の言語です。
世の中にはEAのテンプレートが沢山ありますので、1から全て自分でコードを書く必要はありません。
既にあるものをベースにオリジナルにカスタマイズしてEAを完成させるのが一般的です。
といっても、全く新しくロジックを組み直す場合はほとんど1から書き直す事になり、作業量が膨大で、本当は時間をかけたいロジック検証がなかなかできません。
しかしながら、そんな悩みにお応えする、非常に便利なEA作成ツールが存在するのです。
MT4 EAの自動作成ツール
EAの自動作成ツールは、予め用意された項目に、売買ルールを選択・入力していき、最後にボタンをクリックするだけでプログラミングを行わなくてもEAを作成することができる素晴らしいツールです。
複数の指標を組み合わせれば、高度なEAも簡単に作成できてしまいます。
EAの自動作成ツールには以下を代表として様々なものがありますが、今回紹介させて頂きたいのは、「MT4EAエディタ」です。
MT4EAエディタは日野ソフトウェアが販売するMT4用のEA作成ツールで、MT4搭載のインジケーターにくわえ、自分で追加したカスタムインジケーターも組み合わせる事ができるので、高度なプログラムを簡単に作成することができます。
また、設定はプルダウン形式が多く、誘導されながら操作を行っていくイメージですので、初心者にも分かりやすく、直感的に操作する事ができます。
MT4 EA 自動作成ソフト(EAエディタ)の使い方
それでは、EAエディタの操作方法を簡単に解説したいと思います。
ソフトのインストール方法や最初のセッティング方法は購入すると付いてくる説明書に分かりやすく解説されているので省略するとして、ここではロジックの組み方とEA化に関しての方法のみを解説します。
具体的にEAを作る過程を示した方が分かりやすいと思いますので、以下のロジックでEAを作成する過程を解説します。
・売買ロジック
5日移動平均線が25日移動平均を上抜けたら買い、下抜けたたら売り。
100 pipsの利益が出たら、または50 pipsの損失が出たら決済。
いわゆるゴールデンクロス、デッドクロスを用いた簡単なロジックです。
EA詳細作成方法
EAエディタのソフトを起動して新規作成か既存のファイルの読み込みを行うと、図1の画面が現れますので、EA名、開発者名、バージョンを入力します。今回のEA名はMA_CROSSとします。
Nextを押すと図2の画面が現れます。①を押すと売買ロジックに使うインジケーターを選択する事ができますので、②の部分でそのインジケーターのパラメータを設定します。
今回のパラメータは移動平均線の期間を5と25にします。
STEP2の『Next』を押すと、図3の画面が現れます。
③の部分にロジックを入力していくのですが、まずは④からプルダウン形式で条件式を設定します。
今回のロジックはゴールデンクロスですのでクロス条件を指定しますと、図4のような画面となりますので、左側の欄に表示されているインジケーターを指定して条件設定します。
最後にクロスが上抜けるか下抜けるかをこちらもプルダウン形式で選択します。買い条件、売り条件共に設定が完了したら次は決済条件の設定です。
決済条件は固定pipでの利食いと損切りですので、決済条件の項目をアクティブにした状態で、買い損益決済注文を選択します(売りであれば売り損益決済注文です)。
選択すると図5の画面となりますので、所定の欄にpips幅と利食いなのか、損切りなのかを設定します。今回は買いポジションも売りポジションも100 pipsで利食い、50 pipsで損切りをセットします。
全ての売買条件や決済条件を入力し終わった画面が図6です。
⑤を押すとデバッグ用のEAが出来上がり、MT4のプラットフォーム内のエキスパートアドバイザー覧にEA名_debugといった名前のEAができます。
デバッグ用EAは、自動売買が想定通りに実施されるかを確認したり、簡易的に性能を確認したりして使うためのEAですので、機能も制限されており、リアルトレードで使用する事はできません。
リアルトレード用のEAはNextをクリックして図7の画面に飛び、いくつかの必要項目を入手したら⑥をクリックすると本仕様のEAが完成します。
いかがでしたでしょうか?たったこれだけでEAが作成できてしまうのです。
これくらいの単純なロジックであればおよそ5分といったところです。
どんなに複雑でも30分はかからないのではないかと思います。
MT4 EA 自動作成ソフトを利用するメリットとデメリット
MT4 EAがかなり便利なツールですが、当然メリットデメリットがありますので、次は詳しく解説したくと思います。
MT4 EA 自動作成ソフトを利用するメリット
前述の通り、プログラムの知識が必要ないため、初心者でも簡単にEAを作成することができます。
また、EAの作成のスピードが格段に上がるため、ちょっとしたアイディアを試すなんてことも簡単にできます。
そしてコードにも間違いがないため、バグが発生して該当箇所を探したり、コードを修正するといった余計な時間も削減できます。
MT4 EA 自動作成ソフトを利用するデメリット
予めソフトに搭載されている範囲のロジックでしか組めないので、折角見つけた優位性も実装できない場合があります。
例えば、ロジックとしてよく使われる、『高値を切り上げていっていたら買い』といったようなパターン認識の要素があるロジックは苦手とするところです。
また、内部の細かい動作を理解できないため、うまく動作してくれなかった時の理由について深く理解ができず、解決できなかったりします。
例えば、バックテストでは上手くいったのにリアルトレードでは上手くいかないなんて事はよくある事象で、プログラミングコードを理解できた方が解決の可能性は高い事は否めません。
MT4 EAの自作を極める
MT4 EA 自作ツールの限界
3.2のデメリットで述べたように、自動作成ツールを使ってEA開発をしていると、ものすごくいいアイディアを思いついたのにツールでは表現しきれないという事象にいつか必ず悩まされます。
そして最終的にはMQL言語を勉強して作りたいロジックが完全に表現されたEAを開発する必要が出てきます。
もし自作では実現できない複雑なEAをオリジナルで作りたい場合は、EA開発の専門業者に依頼するのがおすすめです。
例えば、FXトレードシステム制作の専門業者「Order System」さんは良心的な価格で、高機能なEAを制作してもらえると評判です。
MT4・MT5のオリジナルEAの作成依頼・制作代行『オーダーシステム』気になる方はぜひチェックしてみてください!
MT4 EAの自作を極めるには
EAの自作を極めるには最終的には自分でプログラミングコード書く必要があります。
しかしながら、1から全て自分で書く必要はありません。表現できる部分は自動作成ツールである程度作り上げ、表現できないところを自分でコードを書いていけばいいのです。
その為にはmql言語を勉強する必要がありますが、自動作成ツールでほぼ作成できるので覚える事も少ないですし、ハードルもそこまで高くないといっていいでしょう。
また、ChatGPTを活用するという手もあります。
最近話題のChatGPTですが、実はプログラムを書いてもらう事も可能です。
ChatGPTは、OpenAIによって開発された大規模な言語モデルで、適切な指示や情報を与える事で、プログラムコードの生成やコードのレビューが行えます。
ChatGPTを活用する際、プロンプトと呼ばれる入力方法によって結果は大きく変わります。
例えば指示を簡素に分かりやすくする、事前に関連する情報を読み込ませる、段階的に指示を出すなどです。
注意点としては、ChatGPTプログラムを行う上で気を付けたい点として「EAの土台を作らせる事に終始すべき」だということです。
詳細なパラメータ等は自分の手で入力し完成させた方が良いかもしれません。
全てChatGPTで完結させるより、若干自分でも手を加えた方がプログラミングやロジックのより深い理解に繋がる為です。
しかし開発の大部分をChatGPTに書いて貰う事が可能になった今、高かったEA開発のハードルはぐっと下がったと言えるのでは無いでしょうか。この分野の今後の進化を期待したい所です。
MT4 EAの勉強方法(入門)
MT4 EA 自作のためのオススメ本
MQL言語の勉強は色々な方法があります。セミナーもありますし、Webでも詳しく解説されています。ここでは、私が初心者の時に勉強した以下の書籍を紹介したいと思います。
タイトル:iCustom(アイカスタム)で変幻自在のメタトレーダー
著者:ウエストビレッジインベストメント
本書では、icustom関数というものを用い、定型文をコピーすることにより出来上がるEAの作成方法を紹介しています。この本の著者自身、プログラミングの知識がなかったところから初めていることもあり、プログラミングの知識の無い方でも比較的容易に自動売買のプログラムを作成できるように構成されています。MT4の基本的使用方法から始まり、簡単なプログラムの作成などを通じプログラムの基本を理解した上で、自動売買プログラムの作成へと移っていきますのでプログラミング初心者でも抵抗なく理解できる内容になっています。
MT4 EA プログラミングの勉強(実践)
mql言語がある程度理解できたら、今度は自動作成ツールを使って開発したEAのコードを見て理解してみる事をお勧めします。
当然、最初は分からないコードが沢山出てきますが、書籍で得た知識があれば、分からないコードはwebで検索すれば必ず理解できます。
最後のステップは、ツールを使って開発したEAのコードを改造してみる事です。
前述の通り、自動作成ツールを使うだけでは表現しきれない部分がありますので、その部分をどこにどうやってコーディングしていくかを考えます。
コードは覚える必要は無く、Webで検索すれば必ずヒントが見つかりますので、粘り強くやっていけば必ず完成させられます。
最後に
いかがでしたでしょうか。EAを自作するメリットはかなり大きく、しかもそんなにハードルが高くないという事をご理解頂けたかと思います。
少しでも共感していただいた方は是非チャレンジしてみてください。きっとあなたのトレードライフをより良いものにしてくれるでしょう。
WikiFX(ウィキエフエックス)は、FX会社の安全性・信頼性を評価している第三者機関です。
全世界3万以上のFXブローカーの情報を収集し・格付けを行っています。
FX会社の安全性スコアや詐欺被害のリアルな口コミは『wikifx.com』で確認できます。
取引に役立つ情報をあなたの元に
WikiFXアプリはこちらから
コメント コメント 0