MQL4のコーディングで、MetaEditorの代わりに使えるエディタを探して見つけたのが VSCode(Visual Studio Code)です。
矩形選択ができるうえに、Grep(複数のファイルを横断した検索)も使えるので、EAやインジケーターのファイルが増えても目的の箇所をすぐに探せます。
(以前は Notepad++ も使っていましたが、MT4側の仕様変更で使いづらくなったため、VSCodeに切り替えました)
Visual Studio Code
もう何年もVSCodeを使っていますが快適です。日本語のコメントも入れやすく、動作が軽くて検索も速いのが気に入っています。
MQL5の設定方法はこちらの記事にまとめています。
Download
まずはダウンロードです。Visual Studio Code の公式サイトから、Windows版をダウンロードします。
Mac版やLinux版もありますが、VSCodeからコンパイルするには MetaEditor が必要です。
MetaEditorはMT4をインストールすると一緒に入りますが、MT4は基本Windows向けのソフトなので、MetaEditorもWindowsが前提になります。そのため、Windows版を選んでおくのが一番手間がかかりません。

ダウンロードが終わったら、インストールを始めます。

VSCodeがインストールされました。

Compile Setting
次に、VSCodeからコンパイルできるように設定します。
左側のアイコンから「拡張機能(Extensions)」をクリックし、検索窓に MQL4 と入力すると、いくつか候補が出てきます。

最低限、以下の2つをインストールします。
- MQL4 Syntax Highlight(MQL4のコードを色分け表示)
- compilemql4(VSCodeからMetaEditorを呼び出してコンパイル)
インストールしたら、compilemql4 のREADME(説明ページ)に目を通しておきましょう。ポイントをまとめると次のとおりです。
- MetaEditorがインストールされている必要がある
- どこかのブローカーのMT4をインストールしておく、ということです
- Compile After Save にチェックを入れると、保存したときに自動でコンパイルされる
- Metaeditor Dir に metaeditor.exe のパスを設定する(必須)
- ヘッダーファイル(.mqh)を使う場合は、Includeフォルダのパスを Include Dir に設定する*1
- コンパイルログが出力される。何も設定しなければ、コンパイルしたファイルと同じフォルダに compilemql4.log として出力され、Log Dir で出力先を変えることもできる
これらを順に設定していきます。compilemql4 の歯車(設定)アイコンから「Extension Settings」を開きます。

パス設定の画面

ここで注意したいのは、MT4関連のパスが2種類あることです。
① MT4本体(exeファイル)があるフォルダ
C:\Program Files (x86)\… 以下にあり、metaeditor.exe もここに入っています。

② インジケーターやEAが置かれている「データフォルダ」
C:\Users\…\AppData\Roaming\MetaQuotes\Terminal\…\MQL4\… のようなパスです。MT4のメニュー「ファイル」→「データフォルダを開く」で開けます。

この2つを区別したうえで、各項目を次のように設定します。
| 設定項目 | 設定する値(例) | ポイント |
| Compile After Save | チェックを入れる | 保存(Ctrl+S)するだけで自動的にコンパイルされる |
| Include Dir | C:\Users\…\AppData\Roaming\MetaQuotes\Terminal\…\MQL4\Include | ②のデータフォルダ側。Includeファイルを使わないことも多いので、必須ではない |
| Log Dir | C:\Program Files (x86)\Dukascopy MetaTrader 4\compile.log | コンパイルログの出力先。空欄ならコンパイルしたファイルと同じフォルダに出力される |
| Metaeditor Dir | C:\Program Files (x86)\Dukascopy MetaTrader 4\metaeditor.exe | ①のMT4本体側(必須)。テスト・デバッグに使うMT4のものを指定しないと、IncludeやLibraryの場所が合わなくなる |
試しに、MT4のメニューから「データフォルダを開く」を選び、\MQL4\Experts にある MACD Sample.mq4 をVSCodeで開いてコンパイルしてみます。
Compile After Save を有効にしているので、メニューから保存を選ぶか、Ctrl+S を押すだけでコンパイルされます。

問題なくコンパイルできています。

(*1) #include のパスに注意
この例では、Metaeditor Dir に Dukascopy のMT4の metaeditor.exe を指定し、Include Dir もそのMT4のデータフォルダに合わせています。そのため、別のMT4でテスト・デバッグしようとすると、includeファイルの場所が食い違ってエラーになることがあります。
標準ライブラリだけを使っているなら問題ありませんが、自作のincludeファイル(.mqh)を使っている場合は、ファイルを移動するか、パスを設定し直してください。
MQL Toolsを使う方法
MQL5の記事で紹介している拡張機能 MQL Tools でも、MQL4のコンパイルができます。
MQL Toolsの設定で Mql_tools.Metaeditor: Metaeditor4 Dir にMT4の metaeditor.exe のパスを入れれば、MQL5と同じ環境でMQL4も扱えます。コードの色分けやコンパイルに加えて、F1キーでMQLのヘルプを開く機能などもあるので、MT4とMT5の両方を使う場合はこちらにまとめるのも一つの方法です。
設定手順は「Visual Studio Code による MQL5 の開発環境を設定」を参考にしてください。
VSCodeをMQL4のエディタとして使う上でのエラーやTipsは、こちらにまとめています。




















