ここではプログラミング未経験者や超初心者といった方向けに、 EAの作り方・プログラミングについて1から解説しています。
EAを自力でプログラミングして、作ってみたいという方向けです。
EAを作成するためにはMT4というツールが必要になります。FXをやっている場合は割とメジャーなツールだと思いますが、知らない人はまず以下の記事を参考にしてみて下さい。
※入門編は全部で9記事ありますので、順番に読んでみて下さい
プログラミングとは
プログラミングとは、簡単に言うとコンピュータに指示(命令)を出す事です。

コンピュータ(MT4)に対して、分かるようにあれをやってこれをやってと指示を書く事です。そうすることで、指示した通りにコンピュータ(MT4)に動いてもらいます。
当サイトの話でいくと、MT4上で動いてくれるコンピュータ=EA(エキスパートアドバイザ)に対して、あれやってこれやってと指示していくためにプログラムを書くというわけです。
ただし、指示をするといっても日本語とか英語とかで書くのではなく、MT4用のプログラム言語(MQL4)を使って書いていく必要があります。これをプログラミングと言います。
MT4用のプログラム言語
そもそもMT4用のプログラム言語って何?と思われる方も多いと思います。簡単に例えると、日本人の言語は日本語で、アメリカ人の言語は英語です。これと大体同じですMT4用の言語はMQL4といった感じです。※MQL4は言語の種類(ほぼ英語みたいなもの)です
なので、MT4ではMQL4以外の言語を使ってしまうと指示を出してもちゃんとその通りに動いてくれません。
例えば、日本人とアメリカ人がいたとします。この場合、日本人に指示を伝える時はどうしますか?
もちろん日本語で伝えますよね!反対に、アメリカ人の場合は英語で伝えます。
例として「MT4=日本人」と仮定しましょう。 次にMT4とは全く関係の無いもので何でもいいんですが・・・・、身近なジャンルで「スマホゲーム=アメリカ人」と仮定しましょう。
さて、「MT4=日本人」へ指示を伝える場合どうするでしょうか?
もちろん「MT4用のプログラム言語(MQL4言語)=日本語」ですよね。また、「スマホゲーム=アメリカ人」へ指示を伝える場合は「スマホゲーム用のプログラム言語(C++言語等)=英語」という形になります。
つまり、何を言いたかったのかというとプログラム言語も言葉と一緒です。日本人には日本語で、アメリカ人には英語で伝えましょうという流れで、MT4にはMT4用の言語(MQL4)で伝えましょうという事です。
補足情報として、MT4用の言語(MQL4)でスマホゲームは作れません!
結論として、EAに指示を出す場合はMT4用のプログラム言語(MQL4)で指示を出すことが必須となります。
MQL4の実例
MQL4言語は比較的簡単ですし、FXに特化した言語です。
まずは、簡単な実例をご紹介します。FXでエントリーする際の指示の書き方について、日本語とMQL4言語で比較してみます。
例えば自分ではない誰か他人にドル円を売りでエントリーして欲しいという指示を出す場合はどうでしょうか。
日本語で指示する場合 → ドル円を売りでエントリーしてください と書く
今度はEA(自動売買ツール)にドル円を売りでエントリーして欲しいという指示を出す場合はどうでしょうか。
MQL4言語で指示する場合 → OrderSend(USDJPY,OP_SELL・・・) と書く
こんな感じです。
思ってたより簡単ではないでしょうか? めちゃくちゃ大雑把ですがこれがMQL4です。OrderSendって書くだけでEAは自動でドル円をロングやショートでエントリーしてくれます。カッコ内は通貨ペアやロングかショート・・・の箇所等はさらにロット数や指値、逆指値等を指定するのですが今は省略します。自動でエントリーするだけならこれだけでいいんです。あとは、いつエントリーするのかをさらに細かく指示するだけです。
EAを作る前準備
前置きはこれぐらいにして、そろそろ本題のEAのプログラミングを初めて行きたいと思います。

まず、プログラミングはどこに書いていけばいいか?についてです。
EAをプログラミングする(指示を出す)には、体裁が整った(しっかりとした指示書のような)フォーマットが必要です。作文には原稿用紙が必要ですといったようなものです。
ドル円を買ってくれや売ってくれをただ単にデタラメに書いてもEAは動かないという事だけまずは覚えてください。
フォーマット?
心配いりません。フォーマットはMT4があれば誰でも簡単に作れますのでご安心下さい。
フォーマットの作成
ここからは実際にMT4を起動して確認してください。※MT4の画面を見てください
フォーマットはMT4上から作れます。MT4画面の赤枠で囲った以下の箇所をクリックしてください。

そうするとMetaEditorと呼ばれるものが立ち上がります。そうこれが、EAをプログラミングするためのフォーマット作成ツールです。次にMetaEditor画面の赤枠で囲った「新規作成」をクリックしてください。

以下の画面がでるので、エキスパートアドバイザが選択されている事を確認し、「次へ」ボタンをクリックしてください。※エキスパートアドバイザ・・・EAですね!

以下の画面がでるので、 名前[Experts\]の後ろにEAの名前を入力してください。今回は「test」にしておきましょう。次に、著作者とリンクについてですがとりあえず適当で大丈夫です。(著作権:a リンク:b でOK)入力できたら「次へ」をクリックしてください。

以下の画面がでるので、そのまま 「次へ」をクリックしてください。

以下の画面がでるので、そのまま 「完了」をクリックしてください。

以下の画面が出ればOKです。

これでEAを作るためのフォーマット作成は完了です。プログラムのような文章が複数行書き出されていますね。 ドル円を買え、売れはここに書いていきます。
プログラム経験者なら何となく大体書き出された内容が分かると思いますが、未経験者の場合はさっぱりの暗号だと思います。
ここからは1歩ずつ・・・!
未経験者の場合、まずは書くよりも読むところからです!
次の記事、プログラミング入門①で1行ずつ解説していきます。
コメント