前回までは、MetaTrader 5のServer のインストールについて見てきました。様々なインストール方法が用意されており、これによって状況に応じた方法でプラットフォームを準備することが可能となっているのでした。
今回からはインストールしたServerで、どのような設定が可能なのかを確認していきます。*1
*1この記事では、「Server」はソフトウェアを構成する各要素の呼称を表す際に、「サーバ」はハードウェアとしてのサーバを指す際に用いています。
Server設定について
MetaTrader 5のSever設定は、どのServerでも必要になる共通の設定項目と、一部のServerでのみ必要になる個別の設定項目に分けることができます。
前提としてMetaTrader 5の取引プラットフォームは、下図のように様々なServerによって構成されています。Serverによって役割が異なっているため、個別に設定すべき部分もあるというわけです。


例えば、取引内容の管理等を行うTrade Serverの設定項目には、次の通り「注文一覧」や「取引一覧」など、取引管理に関するものがあります。


一方で、プライス情報等の受け取りや管理をするHistory Serverの場合、設定項目は次の通りです。「履歴」では過去データの管理方法が、「フェイルオーバー」では障害時の対処方法などが設定できます。


もう一つ、Access Serverについても見てみたいと思います。
Access Serverはアカウントからの接続を管理するコンポーネントですので、設定項目には、「アクセス」や「権限」などの接続に関するタブがあります。


このように設定すべき項目はServerごとに違いますが、共通タブとネットワークタブ、サービスタブは共通項目となっています。
今回は各Serverに共通する3つの設定項目に焦点をあて、個別設定については次回以降の記事で見ていきたいと思います。
共通タブ
共通タブではServerの概要を設定します。含まれている設定は下図の通りです。


番号 | パラメータ | 説明 |
---|---|---|
1 | 取引種別 | Serverの種別を選びます。 |
2 | 名前 | 任意のServer名を入力します。 |
3 | ID | IDを指定します。IDは内部識別子として使用されます。*1 |
4 | パスワード | プラットフォームの他のServerが、このServerと接続する際に使用される内部パスワードを入力します。*1 |
5 | 緯度・経度 | Serverの地理的座標を指定します。指定すると、Cluster map機能によるパフォーマンスのモニタリングが可能になります。 |
*1「mt5srvsetup.exe」を使ってインストールした場合、Serverのインストール時に設定されます。アドミン端末(MetaTrader 5 Administrator)の展開機能を使用する場合は、インストール前に事前に設定しています。
先述の通り、Serverの設定項目は種別によって異なるので、「取引種別」で適切なタイプを選べているかは、念のために確認しておきましょう。
ネットワークタブ
ネットワークタブでの設定は、共通設定の中で最も重要だといえます。設定が不適切な場合、Server間の通信や外部からのアクセスが失敗してしまう可能性があるため、特に丁寧に設定していきたいところです。
ネットワークタブで実際に行う設定について見ていきましょう。下図にある通り、Outgoingアドレス、Listenアドレス、Publicアドレスの3つを設定する必要があります。


番号 | 項目名 | 説明 |
---|---|---|
1 | Outgoingアドレス | このServerから送信をするために使うアドレスです。 |
2 | Listenアドレス | このServerが外部からの接続要求を待ち受けるために使うアドレスです。 |
3 | Publicアドレス | 外部のユーザーやシステムがこのServerに接続するために使うアドレスです。 |
以降では、3つのアドレスについてより詳しく見ていきます。
Outgoingアドレス
Outgoingアドレス(送信用アドレス)は、このServerから他のServerへの送信接続実行時に使われます。Server認証の用途でも使われており、このServerからの接続中は、実際の接続のアドレスがここで設定したアドレスと一致するかが確認されます。
Outgoingアドレスが指定されていない場合、IPアドレスによる認証なしでServerがクラスターに接続される仕様です。
IPv4とIPv6
MetaTrader 5プラットフォームは、IPv4とIPv6の2つのネットワークプロトコルをサポートしていて、ネットワークタブ内ではどちらのアドレスも入力可能となっています。Outgoingアドレスの入力に関しては、IPv4アドレスは左側の入力欄に、IPv6アドレスは右側の入力欄に入力します。
ちなみに、IPv4アドレスとIPv6アドレスでは、前者が使われることが多いはずです。一般的に、よほど特殊なケースでない限りどちらを使っても問題はありませんし、現状でより使われているのがIPv4のため、MetaTrader 5のServerのネットワークでもIPv4アドレスのほうがよく使われていると思われます。
いずれにしても、この部分は一度設定すると簡単には変えられないので、慎重に設定する必要があります。
Listenアドレス
Listenアドレス(受信用アドレス)は、このServerが外部からの受信接続を待ち受けるために使うIPアドレスとポートです。ドメイン名ではなくIPアドレスを指定することが推奨されています。
ネットワーク構成に応じてローカルIPアドレスや外部IPアドレスを指定することができ、例えば、Serverが直接インターネットに接続され、ファイアウォールで保護されていない場合は、外部IPアドレスを指定します。一方、インターネット接続がローカルネットワーク内のファイアウォールを通じて行われる場合、外部IPアドレスからAccess Serverの内部IPアドレスへのルーティングを適切に設定し、ローカルアドレスを指定します。
また、すべての利用可能なアドレスで特定のポートを受信するには、「0.0.0.0:ポート番号」という形式で指定します。
Publicアドレス
Publicアドレス(接続先アドレス)の項目では、このServerへの接続を受け付けるアクセスポイント(IPアドレスまたはDNS名)を指定します。
これらのアクセスポイントは、プラットフォームの他のコンポーネントからの接続や、端末からのクライアント接続に使用されます。Access Serverの場合、ここで指定したアクセスポイントはAPIからのクライアント接続のためにも利用されます。
なお、設定画面にある「グローバルIPとして自動的に使用」を有効にすると、指定したListenアドレスがPublicアドレスとして使用されます。


サービスタブ
サービスタブでは、Serverが適切に動作を続けるために必要な設定を行います。具体的には、下図のパラメータの設定を行います。


番号 | パラメータ | 説明 |
---|---|---|
1 | ネットワークアダプター | どのネットワークアダプターをServerの状態の監視に使用するかを指定します。 |
2 | 最適化処理実行時刻 | 最適化するための処理を実行する時刻を入力します。Serverの負荷が最小限になる時間を選択する必要があります。 |
それぞれの設定について補足していきます。
ネットワークアダプター
ネットワークアダプターを選択することで、以下のようにServerの状態を確認できるようになります。


上記のようにネットワークトラフィック状況やServerリソースの利用状況、Serverの稼働状況などのデータを受領することができます。
最適化処理実行時刻
最適化処理実行時刻として指定した時刻になると、最適化のために必要な処理が一つずつ実行されていきます。毎日実行される処理もあれば、日曜日にのみ実行される処理もあります。
なお、実行される処理の種類はServerの種別によって異なりますので、各Serverでどのような最適化処理が行われるかについては、次回以降に個別に確認していきます。
まとめ
今回は各Serverの共通設定を見てきました。上記でも見たように、共通設定としてあるのはアクセス情報とメンテナンス設定になります。
次回からはServerごとの個別設定を見ていきます。今回の共通設定を併せて個別設定を知ることで、MT Serverの適切な運用と、緊急時の対応が可能になってきます。