MT5自動売買ソフトの作成1 準備編

はじめに

プログラミングを覚えたいので、どの言語が良いかと聞かれることがあります。

どの言語も覚えるのは大差ありません。プログラミングを覚えるための最大の壁は「何を作りたいのか」です。プログラミングが覚えたいという人は、まず作りたいものを探しましょう。「興味のないことを覚える」のはただの苦行です。

「作りたいものがある」だから「プログラミングを覚えたい」だから「XX言語を覚える」が王道です。

まずは作りたいものを探しましょう。わたしのおすすめは、MT5自動売買ソフトの作成です。

いろいろ理由はありますが、グラフィカルなプログラム(インジケータ)が本当に簡単に作れる、複数の言語を経験できる=言語の敷居が低くなる、プログラミングだけでなく、FX・株式の勉強にもなるし、経済の動きにも興味が出てくる(かもしれない)、一石三鳥以上のお得感!

MT5のソフトウェアはMQL5という言語を使いますが、MQL5というマイナーな言語ではモチベーションが上がりにくいと思いますし、Web上の情報が非常に少ないためストレスになります。

そこでC++でDLLを作成します。

C++でメインの処理を行うことで、より情報が得られ簡単に作成することが可能になります。 簡単に作れる=楽しいです。

最低限のMQL5の知識は必要ですが、MQL5は入り口だけを作成して本体の処理はC++で作成するDLLで行います。

MQL5はMT5でしか使えませんが、C++を覚えればいろいろなアプリケーションが作れ、C言語C#、どちらにも理解が早まります。これもお得感がありますよね。(Javaなど他の言語もC++を覚えれば何となく解ってきます)

C++で作成したDLLを使ったインジケータの例】

DLLで作成したインジケータ例

インストールが必要なソフトウェア

MetaTrader5 (MT5)

各FXブローカーがカスタマイズしたMT5をインストールします。

各FXブローカーのデモ口座を使用しますので、デモ口座がずっと使えるような優しいブローカーのMT5をインストールします。

具体的には、日本のブローカーはデモ口座を長くても数か月で閉じられます。もしくは本口座を作成しないと継続して使わせてもらえません。

(今のところ)ずっと使わせてくれる、海外の有名どころがおすすめです。XM、Titan FX、Axioryなどですね。

2か所作っておくと、後々役立ちます。1か所は開発用、1か所はテスト用です。

XMのMT4/MT5|XMTrading (エックスエム)

ダウンロード - Titan FXの各取引ツールを無料ダウンロード

https://www.axiory.com/jp/platforms/mt5

Visual Studio Code (VSCode)

万能テキストエディタです。まさに万能、なのに無料!

どんな言語 C, C++, C#, Python, Go, Rust, ........ MQL4, MQL5 の開発には欠かせません。

今回はMQL5ソフトウェアの開発に使用します。

Download Visual Studio Code - Mac, Linux, Windows

Visual Studio Community 2022 (VS)

Microsoft の開発ツールですね。

C#, C++, C, Python, F#, .... いろいろ開発できます。

購入しなくても使わせていただけます。個人利用ならば開発したアプリケーションを売ることさえ無料でできます。太っ腹!

今回はC++でのDLL開発に使用します。

Visual Studio 2022 コミュニティ エディション – 最新の無料バージョンをダウンロードする

※使い初めにMicrosoftアカウントを聞いてくるので、もしかしたらMicrosoftアカウントが必要かもしれません。

インストール

MT5

Titan FXを例にしますが、どのFXブローカーでも同様です。

ダウンロード - Titan FXの各取引ツールを無料ダウンロード

MetaTrader5のダウンロードをクリックします。

TitanFX MT5

インストーラは[次へ]で進みます。インストール後に「口座を開く」でTitanしか表示されていないので[次へ]を、「口座を開設する」の画面で「デモ口座を開いてリスクなしのバーチャルマネーで取引する」を選択して完了ボタンをクリックします。

TitanFX account demo

必要事項を入力してデータ保護ポリシーに同意をチェックして「次へ」でログイン情報が表示されます。

口座タイプは日本円-ブレード口座、デポジットは選択では10万円が最高なので100万円にしておきましょう。

ログイン情報は必ず控えてください!

TitanFX account

MQL5 communityにはMQL5サンプルソースや技術情報が盛りだくさんなので、登録しておくことをお勧めします。

MQL5: MetaTraderを使った自動FXトレーディング、ストラテジーテスターとカスタムインディケータ

ログインするとチャートの表示やトレードができるようになります。

全チャートを閉じて、まずはUSDJPYを全画面表示してみます。左の気配値表示のUSDJPYで右クリックして「チャートウィンドウ」を選択します。チャートの□で全画面表示しましょう。

TitanFX login

「ツール」「オプション」でオプション画面を開き、「エキスパートアドバイザ」タブの「DLLの使用を許可する」をチェックして有効にしましょう。

自動売買する場合には「アルゴリズム取引の許可」もチェックして有効にします。

option DLL

MQL5 communityに登録していたら、ログインIDを登録しておきます。

以上でMT5のインストールは完了です。

VSCode

Download Visual Studio Code - Mac, Linux, Windows

ダウンロードはWindows10/11であれば「x64」をインストールしましょう。

インストールすると英語になっていますので、まず日本語にします。

code japanese

インストール済みの画面ですみません。

拡張機能(□が四つ)のアイコンを選択して、「Search Extensions in Marketplace」テキストボックスに「japanese」と入力すると、「japanese Language Pack for Visual Studio Code」という拡張機能が表示され右下に「Install」と表示されているはずです。

「Install」をクリックしてインストールしてください。

Restartしてねというダイアログが表示されますので再起動します。再起動したら日本語になっています。

次にMQL5の拡張機能をインストールします。片っ端から入れていますが、重要なのは「MQL Tools」です。他構文ハイライト系を幾つかがあると良いと思います。

code MQL

VSCodeは、使いたい言語用の拡張機能をインストールすると構文ハイライトや、ビルド・デバッグもできるようになる万能エディタです。

例えばArduinoとか、Jupyter Notebookとか、純正の環境を使うよりも便利になります。

VS

Visual Studio 2022 コミュニティ エディション – 最新の無料バージョンをダウンロードする

インストールするワークロードは「C++によるデスクトップ開発」は必ず選択してください。

Vs2022

ワークロードには魅力的な開発内容が書いてありますが、開発するには「覚える」ことが必須です。そしてインストールすると少なくないSSD/HDD容量が消費されてしまいます。

後からも追加できますので、直近使ってみたい項目を選んでインストールしましょう。

次回

次回はMQL5からC++で作成したDLLを呼び出します。