『新メタトレ入門本』MQL4プログラミングの流れ
『新MT4対応 FXメタトレーダープログラミング入門』(新メタトレ入門本)連動企画です。
今回は本書の第1章「1-3 MQL4プログラミングの流れ」のアップデート情報と、関連するMT5情報について説明します。
【目次】
第1章 メタトレーダーの紹介
1-1 MT4のダウンロードとインストール
1-2 チャートの使い方
1-3 MQL4プログラミングの流れ
第2章 スクリプトのプログラミング
第3章 カスタム指標のプログラミング
第4章 エキスパートアドバイザー(EA)のプログラミング
本書アップデート情報
このセクションでは、MT4のプログラミングに利用するメタエディターの使い方を説明しています。
本書出版時のMT4では、新規にインストールしたMT4が日本語表記になっていても、メタエディターが英語表記になっていることがありました。
そこで、メタエディターの表記言語を日本語に変換する方法を説明していました。ただ、現在、インストールしたMT4が日本語表記になっていれば、メタエディターも日本語表記になっているので、特に言語を設定し直す必要はありません。
一応、表記言語の変更の仕方として説明は残してあります。
ほか、プログラムの種類、およびプログラムのコンパイルの説明に変更はありませんが、サンプルプログラムをまとめてダウンロードできるリンクを追加しています。
関連するMT5情報
MT5のプログラミングの方法も基本的にはMT4と同じです。
MT5からメタエディターを起動するには、「ツール」メニューから「MetaQuotes言語エディタ」を選択するか、ツールバー上の「IDE」と書かれたボタンを押します。
あとは、本書の説明で、以下のように「4」を「5」に変えると、MT5用の説明になります。
- プログラミング言語
「MQL4」⇒「MQL5」
MT5のプログラミング言語なので、「MQL5」と呼びます。
- プログラムの格納されるフォルダー名
「MQL4」⇒「MQL5」
プログラムファイルはデータフォルダの下の「MQL5」というサブフォルダーの下に格納されます。プログラムの種類ごとのサブフォルダーの名前「Scripts」「Indicators」「Experts」はMT4と同じです。
- プログラムファイルの拡張子
「mq4」⇒「mq5」
「ex4」⇒「ex5」
メタエディターで作成するソースファイルの拡張子は「mq5」となります。また、そのファイルをコンパイルしてできた実行ファイルの拡張子は「ex5」となります。
メタエディタのバージョン
MT4のメタエディタとMT5のメタエディタ、どちらもバージョンは「5.00」となっています。どちらも同じバージョンなら同じ使い方ができるはずですが、MT4、MT5本体のアップデートのタイミングでメタエディタのビルドが違うため、MT4とMT5とで違いがあります。
現在、MT5のアップデートが頻繁に行われている関係で、MT5のメタエディターの使い方が変わってきています。
以前「コンパイル」は、メタエディタの「ファイル」メニューの下にありましたが、最近のMT5のメタエディタでは、「ビルド」メニューの下に配置されています。
もちろんツールバー上の「コンパイル」ボタンを押すことでコンパイルできますが、「コンパイル」ボタンでちょっと注意するところがあります。
「コンパイル」ボタンの右端を押すと「最大最適化」と「最適化なし」が選べるようになっています。
ここでいう「最適化」とは、実行ファイルが高速に実行できるよう、無駄な処理をカットしたりする処理のことです。ただ、そういう手間をかける分、コンパイルには時間がかかってしまいます。
MT5では、大規模で複雑なプログラムも作成できるようになっているので、場合によってはコンパイル自体に時間がかかってしまうケースもあり得ます。
そのため、とにかくコンパイルの時間を短縮したい人のために「最適化なし」という選択ができるようになりました。
ただ、「最適化なし」の場合、作成された実行ファイルの実行速度は遅くなってしまいます。なので、「最適化なし」を選択した方がいいのは、もともとコンパイルに時間がかかっていて、コードを修正してエラーがないかを素早く確認したい場合などだと思います。
初心者の方など簡単なプログラムを作成している段階では、コンパイルに時間がかかることはないので、基本的には「最大最適化」をチェックした状態でコンパイルすればよいでしょう。