「MT4」「MT5」で金融商品を自動売買（調査編）


## この記事について
- 有名なFXの自動売買ツールとして認知されている「MT4」「MT5」に関する記事です
- 「MT4」or「MT5」の導入を考えている人向けのヒントになるような内容です
    - 調べてみると概念が中々難しかったので、メーカーやブローカーに質問して解消した点も共有します
- FXや株などの金融商品取引の経験がない人にも興味を持ってもらえれば幸いです
- 今回は製品調査がメインです。実際にアルゴでの自動売買は試せていないので、試したら改めてまとめてみたいと思います

## きっかけ（自分語り）
#### FXを始めていろいろ勉強していくと、必ずと言っていいほど、トレーディングツールとして「MT4」「MT5」や「Trading View」の名前をよく目にします。
- 筆者は当初、両方のツールを調べてみて、「MT4」「MT5」が何なのかよくわからず挫折し、何となく敷居の低そうだった「Trading View」を利用するようになりました
- しかし、最近、アルゴリズムを利用した自動売買に興味が出てきて、やはり自動売買といえば「MT4」「MT5」という話をよく聞くので、再チャレンジすべく、いろいろ調べてみました

## MT4、MT5って？（簡単にいうと）
#### MetaQuotes社の提供する「金融商品取引プラットフォーム」です。
- 日本法人HP：https://metaquotes.co.jp/
- 製品として、MT4（Meta Trader 4）とMT5（Meta Trader 5）が存在します（＊両者は別物と考えてください）
- 個人投資家の利用イメージとしては、MT4、MT5のクライアントソフトをPCにインストールして、チャート分析したり金融商品を売買したりする感じです
    - ツールの利点として、インジケーターの種類が多く、カスタマイズも可能です
    - いろいろなタイプの裁量取引はもちろん、アルゴを利用した自動取引も可能です
    - FX系Youtuberや本を出している人は、よくこのツールを使っているのを目にします

## 初心者の戸惑い
#### いざMT4、MT5のクライアントソフトを導入しようとすると、戸惑ってしまいます。
   1. ツールは無料みたいだが、何らかの口座が必要になる（デモ口座 or リアル口座）
   2. MT4とMT5の利用にあたって、それぞれ専用口座を別々につくらなければいけない
   3. 各証券会社でDLできるMT4、MT5のクライアントツールが違う
       - 例えば、ブローカーとしては、楽天証券、OANDA、XMなどが対応しているけど、それぞれの会社からダウンロードできるクライアントソフトは違う
       - さらに、MetaQuotes社のHPからもクライアントソフトをインストールできる

#### ちなみに、同じようなトレーディングツールとして比較される「Trading View」はとても簡単に使えます。
   - ツールのアカウント登録をして、ただWebブラウザで好きなチャートを分析するだけです（口座開設の必要はありません）
   - 筆者は、「Trading View」は分析のみに利用し、注文・決済は証券口座固有のアプリを利用しています（おそらく、そういう人がとても多いと思います）
   - 実際の注文・決済もブラウザで行う場合は、持っている口座とツールの連携を設定する必要があります
    
#### これらを踏まえると、「あれ、MT4、MT5って単なるトレーディングツールじゃないの？」という疑問が湧いてきます。
###調べてみると実はその通りで、MetaQuotes社が提供しているMT4,MT5は、あくまで「金融業者向けサービスソフトウェアパッケージ」で、個人投資家が触れるのはその結果つくられたツールの一部なのです。（要は、製品自体はB向けであって、C向けではない）




## MT4、MT5って？（厳密にいうと）
#### 繰り返しになりますが、MetaQuotes社が提供する「MT4」「MT5」はB向けサービスです。
- サービス提供の対象は「ファンド」と「ブローカー」です
    - ファンド：資産運用業を営んでいる会社（ヘッジファンドなど）
    - ブローカー：金融取扱業を営んでいる会社（相対取引などを実施する証券会社など）
- ファンドやブローカーは、MetaQuotes社から「MT4」や「MT5」のライセンスを購入し、独自のサーバ上に自社システムを構築して事業を運営しています
- 個人投資家は、このようなブローカーと契約して口座開設＆金融商品取引をすることになります

#### 個人投資家が一般に「MT4」や「MT5」と呼んでいるのは、「MT4もしくはMT5を契約しているブローカーが作ったシステムを利用するために、口座開設者向けにつくられた専用のクライアントソフト」ということになります。
- しかし、個人投資家が触るクライアントアプリは「ブローカー」ごとに異なるものの、基本的なつくりは一緒です
- なので原理的には「他のMT4、MT5対応のブローカーの証券口座」も利用できるらしいです
- なお、MetaQuotes社でDLできるクライアントソフトは、デモ用のものです。MetaQuotes社自体はブローカーではありません。
    - ですが、やはりやろうと思えば、MetaQuotes社でDLできるクライアントソフトで他社のリアル口座を取引することもできるとのことです
- 一方、筆者はあるブローカー２社に確認すると、「弊社の口座は弊社のMT4、MT5のクライアントアプリでしか利用できません」「他社の口座は弊社のクライアントアプリで利用できません」という回答でした
    - ポリシー的な問題などがあるような感じもするので、ここら辺の事実関係はグレーとさせてください

#### ちなみに、「ファンド」と「ブローカー」でライセンス形態は分かれていますが、Suits製品なので各社に提供しているコンポーネントは基本的に同じとのことです。
- 取扱口座数などの規模によってライセンスが変わります
- なので、基本的に多くの口座を取り扱う「ブローカー」の方がライセンスコストは高くなるようです

## MT4とMT５の違い

#### 主な特徴としては、次のような違いがあります。

| 比較 | MT5 | MT4 |
|---|---|---|
|対応マーケット|FX、先物市場、オプション、株式、債券|基本的にFXのみ|
|注文部分執行|⚪︎|×|
|注文実行ポリシー|FOK(Fill or Kill)、IOC(Immedeate or Cancel)、Return|FOKのみ|
|板注文画面|⚪︎|×|
|銘柄上限数|無制限|1024|
|対応時間軸数|21|9|
|アルゴ開発言語|MQL5|MQL4（MQL5とは別物）|
|アルゴ開発環境|テキストエディター、GUIエディター|テキストエディターのみ|

- その他、個人投資家ユーザの意見としては次のようなものがあるようです
    - MT4の方が「枯れている」ので、チップス・カスタムインジケーター・EA（後述）が豊富
    - MT5の方が、動作スピードが早い

#### 「MT4」「MT5」の互換性は基本的にありません。
   - そもそもブローカーが構築しているシステムが依拠するソフトウェアが別物なので、当然と言えば当然です。
    - 一つのブローカーが「MT4」「MT5」それぞれに対応している場合は、ブローカーがそれぞれのライセンス契約をしており、構築しているシステムも裏側では分けていることになります。なので、口座も別々に作る必要が出てきます。
   - また、アルゴを開発するための言語も全くの別物と考えた方が良いとメーカーは言っていました。
    - そのため、例えばMT4の言語（MQL4）で作られたアルゴは、MT5の環境では動きません

#### MetaQuotes社が「ファンド」「ブローカー」向けに新規ライセンス契約をしているのはMT5のみです（2020.12.04時点）
- MetaQuotes社はMT4は運用・保守は実施しているものの、新規契約はしていないとのことです
- 注意：MT4を利用しているブローカーが個人投資家との新規契約をしていないということではないで
- 個人的には、今後の普及を考えると、「一から触っていきたい、学んでいきたい」場合はMT5でスタートする方が良いと考えます
- 一方、既存のEA（後述）やチップスを思う存分に使いたい場合は、MT4を選択する方が良いとい思われます

## MT5の面白い特徴
### アルゴリズムトレード
- MT5の独自の開発言語MQL5を利用してアルゴリズムを組み、ロボットトレード（アプリによる自動売買）をすることができます
- 売買ロジックだけでなく、インジケーター自由に作ることが可能です
- 上記のアプリやアルゴリズムのことをEA（Expert Advisor）と呼び、自作するだけでなく、コミュニティを利用して「購入」「レンタル」することができます
- さらには、アルゴリズムを作成する開発者と投資家をマッチングさせるためのコミュニティも運営されています

### シグナルトレード
- プラットフォーム上でパフォーマンスの高い投資家が登録されており、無料 or 有料で特定の人の取引を「真似して自動実行」することができます
- シグナルを受け取ったら必ずエントリーすることになります
    - 「シグナルだけ見て裁量でエントリー判断する」ということはできません
    - エントリー後ポジションを持っている状態では、シグナル元の人が決済する前ならば、任意のタイミングで裁量決済することは可能です
    - エントリー後ポジションを持ったまま状態でシグナル元の人が決済すると、自動決済されます（これは裁量不可です）
- 人によって与信能力は異なるため、エントリーする際のロット数は割合計算で決まるとのことです
    - 例：シグナル元が1000万の与信能力で、自分が100万しか与信能力がない場合、シグナル元が100万分のロット数でエントリーしたら、自分は10万円分のロット数でエントリーすることになります


## 注意（いまさら）
- 今回、何件か証券会社の名前を出していますが、それらの口座開設を推奨しているわけではありません
- 特に海外口座については、日本金融庁の許可や信託保全の有無などについて、慎重に確認した方が良いと考えています
- デモ口座の開設にしても、ブローカーに対して個人情報の提出することになるので、チャレンジする場合は自己判断＆自己責任でお願いします


## まとめ
#### 筆者が単なるトレーディングツールだと思っていた「MT4」「MT5」が、スケールの大きな「金融業者向けサービスソフトウェアパッケージ」だったことに驚き、今回の記事を作成しました。
#### これを機に、EAによるアルゴやインジケーター作成にもチャレンジしたいと思います。
#### 最後に個人投資家がMT4、MT5を利用するために必要なものをまとめて締めます。
  - MT4、MT5に対応している証券会社の口座開設（リアル口座 or デモ口座）
      - 証券会社によっては、プライマリ口座とMT5用サブ口座が分かれていて、それぞれ別のアカウントが必要になったりします
  - MT4、MT5を利用するための端末環境（ブローカーによって異なります）
       - デスクトップクライアント（WindowsOS版が中心）
       - モバイルクライアント
       - Webアプリ　＊EAは使えません
  - ~~FXで有り金全部溶かさない程度の金融リテラシー~~