データフォルダのパスを MQL で取得
弊社のウェブサイトの方でご質問を頂いたので、ブログにも掲載しておきます。
MT4 ビルド 600 から、MQL の EA/インジ/スクリプトを含めたデータファイルの類いはデータフォルダというフォルダの下に配置されるようになっています。
データフォルダが利用されるときと利用されないときの違いなどは、「MT4 のデータフォルダについて」という記事で詳しく説明していますが、データフォルダのパスを取得するにはどうしたらいいのでしょうか。
このような場合には、ビルド 600 で追加された
TerminalInfoInteger
TerminalInfoString
という MQL 関数を利用します。その名の通り、ターミナルに関する情報を、前者は整数値で取得し、後者は文字列で取得することができます。
データフォルダに関して言えば、後者の TerminalInfoString
を使って
TerminalInfoString(TERMINAL_DATA_PATH)
という形で呼び出しを行ってください。
また、MT4 のインストールフォルダ (いわゆる MT4 本体である terminal.exe
が置かれているフォルダ) のパスは
TerminalInfoString(TERMINAL_PATH)
で取得することが出来ます。