【FX自動売買】EA入門 自動売買の仕組み なぜ自動売買を使うべきなのか 【MT4】

FX 自動売買(EA)

MT4とは

はじめに、MT4とはMeta Trader 4の略称で、世界中のトレーダーから支持されているオープンソースのFXプラットフォームソフトウェアです。またMT4の中で用いられている自動売買システムのことをEA(Expert Adviser)といいます。

MT4が無料で利用できるので、当然自動売買の作成・テスト・利用も無料でできます。世界中で使われているため、MT4に関するリソースもネット上に豊富にあり、わからないことがあればすぐにGoogleで調べることができるのも強みの一つともいえるでしょう。

MT4のダウンロード

MT4のダウンロードはMT4に対応しているFX業者からしかダウンロードできませんので、今回は日本国内で無料で利用でき、信頼できる業者であるOANDAを使ったダウンロード方法を解説していきます。

OANDA公式サイトに飛んでいただき、下のほうにスクロールしていくと「取引可能なプラットフォーム」という部分があります。

こちらでMetaTrader4のタブをクリックすると以下のようなページが表示されますので、「MT4について詳しく見る」をクリックしてください。

するとOANDAのMT4ページに飛びますので、少し下にスクロールして「OANDAが提供するMT4」を確認してください。

以下のように様々な端末に対応したMT4のダウンロードができるようになっているので、ご自身の環境にあったMT4をダウンロードしてください。

なお、MT4をダウンロードするためにはOANDAのアカウントが必要なので、OANDA会員登録ページから事前に登録しておいてください。(無料です。EAも実際にリアル口座で売買させない限りは一切お金は発生しません。)

自動売買を使うべき理由とは 自動売買のメリット

最も有名なFXトレーディングプラットフォームであるMT4には自動売買のアルゴリズムを自分でプログラミングする仕組みが準備されています。自動売買はその名の通り、自動でトレードをしてくれるため、四六時中パソコンの画面に目を向けていなくてもいいというメリットがありますが、それ以外にも多くのメリットがあります。

トレードに不要な感情を排除できる

人間という生物はどうしても気分・感情というものが切り離せません。特にお金の損得が関わると、それは時には正しいトレードの妨げになり得ます。誰でも負けるときは小さく、勝つときは大きく勝ちたいというのが当たり前ですよね。

しかし想像してみてください。ポジションを持っているとき、含み損があるときに割り切って損切することはなかなか難しいと思います。負けたくないという一心から、利益が出るまで待ち続けてしまうという人は多いのではないでしょうか?

でも逆に、含み益がある状態の時は利益が小さくてもとりあえず利益を確定しておきたいという保身の気持ちが働いて、早急に取引をクローズしてしまうというのが人間の心理です。

以上のことからわかるように、あらかじめ取引ルールを自分で決めていたとしても、「負けを小さく、勝ちを大きく」というのはいざトレードが始まると以外と実践するのが難しく、むしろ真逆の行為を行ってしまいがちなのです。

ですが、その取引ルールをプログラム化してコンピューターに自動売買させることによって、不要な感情を切り離し、確実にルールにしたがって取引することが可能になります。

タイミングを逃さず、時間を節約できる

常にマーケットの動向をパソコンの前で監視し、エントリーするタイミングを待ち続けるのは時間も労力もそれなりにかかります。

しかし自動売買を活用することによって、時間の節約もできますし、あらかじめ設定したアルゴリズムが確実にエントリーサインを捉えてくれるので、取引数が増え、利益の増加が見込めます。

自動売買を利用すればいつでも自分が取引したいマーケットで、パソコンの前で時間を浪費することなく取引することができるのです。

自分の取引戦略が適正かどうか簡単にテストできる

いざトレードを始めようと思ったとき、まずはどんな取引戦略でこれから取引していくかを考える必要があります。

そして思いついた戦略が実際のマーケットで利益を上げられるかどうかは基本的に過去のデータから推測する(バックテストと言います)ことができます。

自分の思いついた戦略と過去のチャートなどを照らし合わせて、手動で計算していては果てしない時間がかかります。2-3か月分であればできないこともないですが、一般的にそれでは十分ではなく、基本的にバックテストは過去数年分のデータを使って、複数の時間軸で行うため、手動では大変です

しかし自動売買プログラムをつくることができれば、そのアルゴリズムをバックテストするための機能がMT4には備わっているので、過去データを取得するだけで数分で簡単に確かめることができるのです。

利益の上げられない戦略を早々に見極め、排除し、利益の出る戦略を洗練していくことで、結果的に利益の増収が見込めます。

自動売買のプログラミング言語は?

世の中の自動売買プログラムでは多くの種類の言語が用いられています。しかし基本的に言語間の違いというものは大した問題ではなく、ほとんど同じ仕組みが用いられているというのが事実です。

自動売買に限った話ではないですが、プログラミングの世界では一つの言語を習得していれば、次に新しい言語を習得するのは容易です。ですのでプログラミング未経験者で何から学べばいいか迷っている方はあまり深く考えすぎる必要はありません。

このブログで解説している自動売買プログラムはMT4というFXプラットフォーム上で動作するもので、MT4自動売買ツール(EA)専用の言語であるmqlという言語を使って作成しています。
mqlはjavaやC、C#、C++といった言語に非常に似ている(mqlがC++をベースに作成されているため)ので、この辺の言語を少し学習したことがある人であればmqlでEAを作成するのは難しいことではありません。

プロフィール

プロフィール
コードラボJP

大学卒業後SEに就職、現在は退職しフリーランスとして活動中。
『初心者でも挫折せずに一人でプログラミングを学べる』をモットーに、コードラボJPを開設
お問い合わせ等はcodelabsjp@gmail.comまで

コードラボJPをフォローする
タイトルとURLをコピーしました