僭越ながら初心者向けのEA入門書を作りたいと思い本シリーズをはじめた。いつまで続くかわからないが初心者が簡単なEAを作れるようになる段階まではモチベーションを維持したい。シリーズ第一回はEAはそもそも何ぞやと言うところから入る。EAのメリットや必要な知識などについてまとめてみた。筆者はEA(自動売買プログラム)を勝手に難しいものだと思い込んで手を付けないでいたのだがやってみたら想像以上に簡単であった。画面操作が無いので小学生の作るスクラッチプログラムよりも難易度は低い。FXをやるのであればEA作成スキルは有用なので是非とも身に付けておきたい。
本記事はFXの自動売買について紹介していますが内容を保証するものではありません。金銭にかかわる内容であるためご注意ください。参考にする場合は自己責任でお願いします。
FX(外国為替証拠金取引)の初歩的な知識が必要となります。簡単なFXの入門書程度の知識があれば問題ありません。
FXについて全く知識がない方へのおすすめ書籍。超初心者向けの書籍で知識ゼロの人でも読みやすい。ただし、入門書なのでFX初心者以外にはおすすめできない。
こちらは中級者向けの内容でFXの難しさについて解説している。
エキスパートアドバイザー(EA)
Expert Advisor(EA)とはFXの自動売買プログラムのこと。わかりやすく言えば為替の自動売買プログラムである。
裁量取引のデメリット
裁量取引(手動で売り買いすること)の問題は感情が邪魔すること。一番問題なのがプロスペクト理論。簡単に言うと利益確定は早まり損益確定が遅れること。よくある損切りできずに強制ロスカットされるようなことはプロスペクト理論に当てはまる。ほとんどの人がこのプロスペクト理論から逃れられない。詳しくは以下の記事を参照。
感情に左右されない取引
裁量取引をしていると短期目線で「負け分を何とかして取り返そう」といった思考に陥りやすい。結果感情に任せロットを上げ資産を溶かすなどよくある話である。FXにおいて感情は非常に邪魔であり負ける根本原因となる。
冷静でいられれば裁量で負けない
筆者は一時期裁量取引にチャレンジしたが上手くいかなかった。冷静でいられるときは良いのだがちょっとでも精神がブレると際限なく負を積み重ねてしまう。特に連敗した時に「何とかして負けを取り返したい」と思い無理な場所でエントリーを繰り返してしまう。よほどメンタルが強くないと裁量で勝つのは難しいと思う。
EAに感情は存在しない
裁量取引の一番のウイークポイントである感情がEAにはない。連敗しても連勝しても同じトレードを延々と繰り返す。最大のメリットはこれ。
時間に拘束されない
スキャルピング(短期での取引)ではスプレッドを考えると流動性の高い時間でトレードするのが望ましい。流動性の高いNY市場がはじまる22、23時に時間を高速されてしまう。EAであればメンテナンス以外の時間に拘束されることはない。
EAはどうすれば使える
MT4をインストールしてEAを作れば無料で使える。
環境はMT4かMT5
EAを使うにはMT4(MT5)と呼ばれるソフトウェアが必要となる。MT4は各証券会社から無料で入手できる。インストールは普通のソフトウェアと変わらないので難しくない。
MT4かMT5か
開発、実行環境にはMT4かMT5の二択となる。触った感じ最新のMT5の方が性能がよく使いやすいのだが対応する業者が少なくいので現時点ではMT4を使うのが無難。MT4はインジケーターやサンプルコードなどの情報量も多いので使いやすい。
EAは買うか作るか
EAは販売サイトから購入するか自ら作るかの二択。基本的に自作することをおすすめする。長い目でみたら自作した方がいい。毎月10万円稼げるEAが2万円で売っていたら誰もがお金持ちになってしまう。そんなうまい話はないのだ。5年、10年かけて稼げるEAを作るくらいの心構えが必要。長い人生を考えれば5年間趣味の時間をEAに投資してもいいと思う。もし儲かるEAがあるとしたら自身で運用し販売したりしない。
【EA開発ガイド】Part 1 EA開発概論 – Chapter 11 儲かるEAを作ったら絶対に売らない
EA作成に必要な知識など
自党売買システムと聞くと難しそうに思えるが実際は違う。難しい処理やロジックはないので小学生でも作れるレベル。逆に最近の小学生の方がもっとすごいプログラムを作ってる。どんなにスローペースでも三カ月もやればEAを作れるようになる。中学校の数学より100倍簡単だと思う。
FXの基礎知識
FXの基本的な知識は最低限必要。窓埋め、ごとうび、ロンドンフィックス、東京市場、NY市場、経済指標、MTF分析、インジケーター、云々・・・。そもそも裁量取引である程度勝てる知識がないと勝てるEAは作れない。デモトレードでもいいので月の収支がプラスかとんとんになるくらいまでFXをやり込んだ方がいい。
プログラミングの基礎知識
MT4で動作するEAはMQL4と呼ばれる言語で作られている。MQL4はC言語と呼ばれる言語と基本構造は同じ。プログラミング言語としてはかなり古いタイプ。C言語の難しいところはメモリ管理、ポインタ、アドレスなどだが簡単なEAを作るだけなら深く理解する必要はない。変数、関数呼び出し、繰り返し、分岐など基本的なことだけできれば問題ない。C言語入門のサイトでひと月くらい勉強すればマスターできるはず(1日2時間ペース)。
C言語の入門書を買って一通りやればEAが作れるくらいの知識はつく。ひとりで勉強するのが難しいようであればプログラミングのできる知り合いを探して教えてもらうしかない。プログラミング教室などお金と時間の無駄なのでおすすめできない。基本的な使い方であれば小学生でもで出来るレベルなので安心して挑戦してほしい。実際最近の小学生はスクラッチなので普通にガンガンプログラミングしているのだ。
メタエディターの使い方
メタエディターとはMT4にあるMQL4でEAを作成するためのツールである。開発環境としては物足りないが無料なのでしかたない。使っていくうちになれるのでそんなに難しくない。
MT4とストラテジーテスターの使い方
MT4にはストラテジーテスターがありバックテストができる。バックテストとは過去のチャートを使って作成したEAを評価する機能。使い方はそれほど難しくないが結果の分析や評価にはある程度の経験や知識が必要となる。
習得までの期間
どんなに苦手な人でも本気でやったら三カ月でEAを作れるようになると思う。勝てるかどうかわからないEAを何万もだして買うなら絶対に自分で作った方がいい。資産運用のために10年EAを使うとしたら早い段階でを作れるようになっておいて損はないだろう。費用もプログラミングの書籍代だけなのでコスパ最強である。
前提条件 | 習得までの期間 | コメント |
---|---|---|
プログラミング経験あり | 1~2週間(1日2時間ペース) | C言語の知識があれば最短3日も可能。MQL4では難しい処理がないので時間はかからない。 |
プログラミング経験なし(パソコン得意) | 2~6週間(1日2時間ペース) | 個人の能力にもよるがさすがに6週間あれば習得できると思う。 |
プログラミング経験なし(パソコン苦手) | 1~3カ月(1日2時間ペース) | 諦めなければ3カ月でイケるはず。プログラミング経験のある人に師事するのが近道。 |
ほんとに簡単な売買プログラムであればサクッと作れる。EA作成が難しいといった幻想は捨てた方が良い。
まとめ
長い目でみたら裁量よりも自動売買に早い段階で取り組んだ方がいい。裁量での経験はEA開発に生かされるので無駄にはならない。EAを使えば過去10年以上のエントリーポイント検証が一瞬にして終わる。自身が良いと思っていたエントリーポイントが実際にどうなのか定量的に判断できるのだ。感覚や感ではなく数値化されることによって期待値も明確になる。EAを作れるようになればエントリーポイントの検証が劇的に楽になりそれだけでも価値がある。
裁量の判定基準をプログラムに落とし込めれば画面に貼りついてトレードする必要がなくなる。しかもEAは感情に左右されないので負けを取り返そうとロットを上げたりしない。どんなに負けようがルール通りに売買するだけ。FX裁量取引の最大の弱点はトレーダーの感情(メンタル)だと思うのでそこを補えるEAの価値は計り知れない。
EAでは裁量のときのように柔軟な対応はできない。あらかじめプログラミングしておかないといけない。逆にプログラミングに落とし込んでおけば必ず実行してくれる。
裁量では直感というか微妙なチャートの変化やティックの動きなどプログラミングには落とし込めないような職人芸みたいなものもある。究極を言うとEAよりも熟練したトレーダーの裁量取引の方が優れている。なので鋼のメンタルと徹底した資金管理ができる人は時間拘束されてでも裁量の方が良い場合もあるだろう。
- EAには感情がないので安定してトレードできる
- EAを使えばFXで拘束される時間が激減する
- 長い目で見たらEAは自作するべきである
長い目で見たらEAを自分で作れるようになっておいた方が絶対にいいです。