MetaTrader 5のヘルプアルゴリズム取引、自動売買ロボットテストの操作ログ

テストの操作ログ

テストと最適化の全プロセスは、操作ログに詳細に記載されます。ストラテジーテスターで『スタート』ボタンを押した後、何が起こっているのかを見てみましょう。

価格履歴の準備

テスト/最適化はすぐに始まるわけではなく、テスターは始めに環境の準備を行います。テストが行われるシンボルの履歴の有無を調べ、取引サーバにある全ての履歴を同期します。プラットフォームにテストするシンボルの履歴がない場合、取引サーバとの同期化に数分かかる場合があります。

Tester  EURCAD: preliminary downloading of M1 history started

EURCADの通貨ペアのM1の履歴のプリロードが始まりました。

Tester  EURCAD: 20% history downloaded

ダウンロードが20%完了しました

Tester  EURCAD: 95% history downloaded

ダウンロードが95%完了しました

Tester  EURCAD: preliminary downloading of M1 history completed in 0:14.640

ダウンロードが完了しました。かかった時間は0:14.640です。

Tester  EURCAD: history data begins from 2014.12.29 00:00

この通貨ペアの分足データは2014年12月29日00:00から始まります

リアルティックをベースにしてテストが行われる場合、プラットフォームはテストの日付の範囲内のティックを同期化します。ティックのダウンロードには時間がかかる場合があります。

Tester  EURCAD: preliminary downloading of history ticks started, it may take quite a long time

EURCADのティックのプリロードが始まりました。これには時間がかかる場合があります

Tester  EURCAD: "bases\MetaQuotes-Demo\ticks\EURCAD\201609.tkc" download

2016年9月分のティックは指定した方法でダウンロードされました

Tester  EURCAD: "bases\MetaQuotes-Demo\ticks\EURCAD\201608.tkc" download (823.38 Kb/sec)

2016年10月分のティックは指定した方法でダウンロードされました

Tester  EURCAD: 21% ticks downloaded (796.02 Kb/sec)

ダウンロードが21%完了しました。ダウンロード速度は796.02 Kb/secです

Tester  EURCAD: "bases\MetaQuotes-Demo\ticks\EURCAD\201604.tkc" download (764.22 Kb/sec)

2016年4月分のティックは指定した方法でダウンロードされました

Tester  EURCAD: preliminary downloading of history ticks completed, 116.78 Mb in 2:32.063 (786.40 Kb/sec)

ティックのダウンロードが完了しました。ダウンロードしたティックのサイズは116.78メガバイトで、かかった時間は2:32.063です

Tester  EURCAD: ticks data begins from 2016.04.01 00:00

EURCADのティックデータは2016年4月1日00:00から始まります

次にクロスレートの有無を調べます。例えば、EURCADでテストが行われ証拠金通貨がUSDである場合、マージンコールと利益の計算の為に取引操作の実行時にEURUSDとUSDCADの通貨ペアが必要になります。その為履歴とこれらの通貨ペアの完全な同期が行われます。必要に応じて、ティックデータも同期化されます。価格データの準備プロセスはテスターの操作ログで詳細に記録されます。

Tester  EURUSD: preliminary downloading of history ticks started, it may take quite a long time

EURUSDのティックのプリロードが始まりました。これには時間がかかる場合があります

Tester  EURUSD: preliminary downloading of history ticks completed, 1021.82 Kb in 0:03.218 (317.53 Kb/sec)

ティックのダウンロードが完了しました。ダウンロードしたティックのサイズは1021.82キロバイトで、かかった時間は0:03.218です

Tester  EURUSD: ticks data begins from 2011.12.19 00:00

EURUSDのティックデータは2011年12月19日00:00から始まります

Tester  USDCAD: preliminary downloading of M1 history started

USDCADの通貨ペアのM1の履歴のプリロードが始まりました。

Tester  USDCAD: preliminary downloading of M1 history completed in 0:00.203

ダウンロードが完了しました。かかった時間は0:00.203です。

Tester  USDCAD: preliminary downloading of history ticks started, it may take quite a long time

USDCADのティックのプリロードが始まりました。これには時間がかかる場合があります

Tester  USDCAD: "bases\MetaQuotes-Demo\ticks\USDCAD\201609.tkc" download

2016年9月分のティックは指定した方法でダウンロードされました

Tester  USDCAD: "bases\MetaQuotes-Demo\ticks\USDCAD\201608.tkc" download (683.69 Kb/sec)

2016年8月分のティックは指定した方法でダウンロードされました。ダウンロードの速度は683.69 Kb/secです

Tester  USDCAD: preliminary downloading of history ticks completed, 103.25 Mb in 2:30.109 (704.36 Kb/sec)

ティックのダウンロードが完了しました。ダウンロードしたティックのサイズは103.25メガバイトで、かかった時間は2:30.109です

Tester  USDCAD: ticks data begins from 2015.01.01 00:00

USDCADのティックデータは2015年1月1日00:00から始まります

テスト/最適化の開始

必要な全ての履歴(貴方がリアルティックでテスト/最適化する場合にはティックも)同期化した後にのみ、テスト/最適化のプロセスが開始されます。

単一テストの時には選択したテストエージェントとの接続が設定されます。これはローカルエージェントもしくはネットワークエージェントとなります。

Core 1  agent process started

エージェントプロセスは第一のプロセッサコアで実行されます

Core 1  connecting to 127.0.0.1:3000

127.0.0.1:3000への接続

Core 1  connected

接続が完了しました

Core 1  authorized (agent build 1395)

認証が完了しました。エージェントビルドは1395です

ローカルエージェントのデータフォルダ名はそのアドレスとポートに対応しています。

エージェントへの接続後、テストの設定に応じた環境の同期化が行われます。

Tester  EURCAD,H1 (MetaQuotes-Demo): testing of Experts\Moving Average.ex5 from 2016.04.01 00:00 to 2016.06.01 00:00

通貨ペア:EURCAD、期間:H1、サーバ:MetaQuotes-Demo、テスト期間:2016年4月1日00:00から2016年6月1日まででMoving Averageエキスパートアドバイザのテストが開始します

Core 1  common synchronization completed

総同期が完了しました

この瞬間からエージェントは自分のログやそこから操作ログへ転送されるデータの出力を開始します。ローカルエージェントのログは、テスターの操作ログのコンテキストメニューから開くことができます。このログにはターミナルとエージェントの間の環境の同期の詳細が表示されています。

環境の同期と初期化:

Startup MetaTester 5 x64 build 1395 (19 Aug 2016)

テストエージェントの起動、ビルド1395、2016年8月19日から

Server  MetaTester 5 started on 127.0.0.1:3000

テストエージェントが127.0.0.1:3000で起動されました

Startup initialization finished

初期化が完了しました

127.0.0.1       login (build 1395)

プラットフォームがエージェントに接続されました

Network 38520 bytes of account info loaded

エージェントは取引口座のパラメータについての情報を38520バイトダウンロードしました

Network 1482 bytes of tester parameters loaded

エージェントはテストパラメータについての情報を1482バイトダウンロードしました

Network 2236 bytes of input parameters loaded

エージェントはエキスパートアドバイザの入力パラメータについての情報を2236バイトダウンロードしました

Network 22730 bytes of symbols list loaded

エージェントは金融銘柄についての情報を22730バイトダウンロードしました

テストが行われる銘柄データと設定の同期化

Tester  expert file added: Experts\Examples\Moving Average\Moving Average.ex5. 53048 bytes loaded

エージェントがエキスパートアドバイザのファイルをダウンロードしました。ファイルサイズは53048バイトです

Tester  initial deposit 10000.00 USD, leverage 1:100

テストの為の初期証拠金は10 000 USDで、レバレッジは1:100です

Tester  successfully initialized

テストが初期化されました

Network 68 Kb of total initialization data received

初期化時にエージェントによって取得した情報の総量は68キロバイトです

Tester  Intel Core i7-3770  @ 3.40GHz, 16351 MB

エージェントが動作するコンピュータの構成の説明

Symbols EURCAD: symbol to be synchronized

EURCADの同期

Symbols EURCAD: symbol synchronized, 3384 bytes of symbol info received

通貨ペアは同期され、3384バイトの情報を取得しました

History EURCAD: load 4.51 Mb of history data to synchronize in 0:00:00.594

594秒で4.51メガバイトの履歴データがダウンロードされました

History EURCAD: history synchronized from 2015.01.02 to 2016.06.01

EURCADの履歴は2015年1月2日から2016年6月1日まで同期されました

Ticks   EURCAD: ticks synchronization started

EURCADのティックの同期が始まります

Ticks   EURCAD: load 48.66 Mb of tick data to synchronize in 0:00:00.969

969ミリ秒に48.66メガバイトの情報が同期時にダウンロードされました

Ticks   EURCAD: history ticks synchronized from 2016.04.01 to 2016.05.31

EURCADのティック履歴は2016年4月1日から2016年5月31日まで同期されました

History EURCAD,H1: history cache allocated for 8862 bars and contains 7729 bars
       from 2015.01.02 09:00 to 2016.03.31 23:00

8862バーに履歴のキャッシュが作成され、キャッシュは2015年1月2日09:00から2016年3月31日までの7729バーを含んでいます。

History EURCAD,H1: history begins from 2015.01.02 09:00

EURCADの履歴は2015年1月2日09:00から始まります

Tester  EURCAD,H1 (MetaQuotes-Demo): generating based on real ticks

テストはリアルティック上で実行されます。

Tester  EURCAD,H1: testing of Experts\Examples\Moving Average\Moving Average.ex5
       from 2016.04.01 00:00 to 2016.06.01 00:00 started with inputs:

2016年4月1日00:00から2016年6月1日00:00までのMoving Averageエキスパートアドバイザのテストは次の入力パラメータで実行されます。

Tester    MaximumRisk=0.02

MaximumRisk=0.02

Tester    DecreaseFactor=3.00

DecreaseFactor=3.00

Tester    MovingPeriod=12

MovingPeriod=12

Tester    MovingShift=6

Tester    MovingShift=6

Moving Average (EURCAD,H1)      2016.04.01 00:00:00   expert initialized

Moving Averageエキスパートアドバイザが初期化されました

Ticks   EURCAD : real ticks begin from 2016.04.01 00:00:00

EURCADのリアルティックは2016年4月1日00:00:00から始まります

クロスレートの同期:

Symbols EURUSD: symbol to be synchronized

通貨ペアEURUSDの同期

Symbols EURUSD: symbol synchronized, 3384 bytes of symbol info received

通貨ペアは同期され、3384バイトの情報を取得しました

History EURUSD: load 27 bytes of history data to synchronize in 0:00:00.000

000ミリ秒に27バイトの履歴データがダウンロードされました

History EURUSD: history synchronized from 2014.01.01 to 2016.09.02

EURUSDの履歴が2014年1月1日から2016年9月2日まで同期されました

Ticks   EURUSD: ticks synchronization started

EURUSDのティックの同期が始まりました

Ticks   EURUSD: load 34 bytes of tick data to synchronize in 0:00:00.000

969ミリ秒に48.66メガバイトの情報が同期時にダウンロードされました

Ticks   EURUSD: history ticks synchronized from 2016.01.04 to 2016.09.02

EURUSDのティック履歴は2016年4月1日から2016年5月31日まで同期されました

Symbols USDCAD: symbol to be synchronized

USDCADの同期

Symbols USDCAD: symbol synchronized, 3384 bytes of symbol info received

通貨ペアは同期され、3384バイトの情報を取得しました

History USDCAD: load 27 bytes of history data to synchronize in 0:00:00.094

94ミリ秒に27バイトの履歴データがダウンロードされました

History USDCAD: history synchronized from 2013.01.01 to 2016.08.01

USDCADの履歴は2013年1月1日から2013年8月1日まで同期されました

Ticks   USDCAD: ticks synchronization started

USDCADのティックの同期が始まりました

Ticks   USDCAD: load 43.10 Mb of tick data to synchronize in 0:00:00.890

890ミリ秒に43.10メガバイトの情報が同期時にダウンロードされました

Ticks   USDCAD: history ticks synchronized from 2016.04.01 to 2016.05.31

USDCADのティック履歴は2016年4月1日から2016年5月31日まで同期されました

ティックシーケンス

テストの開始前に、ティックシーケンスが生成されます。より多くのティックを使用するほど、テスト開始前の遅延が大きくなります。

リアルティックでテストする場合は、ダウンロードされた分足バーのティックデータが正確なものであるかどうかのチェックが行われます。データが正確である場合には、操作ログには記録は1つだけとなります(各銘柄につき)。

Ticks   EURCAD : real ticks begin from 2016.04.01 00:00:00

EURCADのリアルティックデータは2016年4月1日00:00から始まります

それ以外の場合は、ユーザがティックヒストリーの質を結論付けるベースとなる詳細な統計情報を表示します。

Ticks   EURUSD : real ticks begin from 2015.01.01 00:00:00

EURUSDのリアルティックデータは2015年1月1日00:00から始まります

Ticks   EURUSD : 2015.01.01 00:00 - 2016.01.01 00:00  tick volumes not matched for 4 minute bars

2015年1月1日00:00から2016年1月1日00:00の間はティックボリュームは4分足バーに一致していません

Ticks   EURUSD : 2015.01.01 00:00 - 2016.01.01 00:00  last prices absent for 16217 minute bars, bid prices used

2015年1月1日00:00から2016年1月1日00:00の間は16217の分足バーに最後の取引価格がないため、代わりにBid価格が使用されました

Ticks   EURUSD : 2015.01.01 00:00 - 2016.01.01 00:00  last prices absent for 22 whole days, bars built by bid prices

2015年1月1日00:00から2016年1月1日00:00の間は22日間に最後の取引価格がないため、バーはBid価格で形成されました

Ticks   EURUSD : 2015.01.01 00:00 - 2016.01.01 00:00  last prices translation turned off for 881 minute bars, bid and last prices used

2015年1月1日00:00から2016年1月1日00:00の間は881の分足バーで最後の取引価格の送信が中断したため、Last価格とBid価格が使用されます

テスト終了後にエージェントのログに統計情報の詳細が表示されます。

Tester  final balance 7905.30 USD

テスト終了時の残高は7905.30 USD

Tester  EURCAD,H1: 50056687 ticks, 6195 bars generated. Environment synchronized in 0:00:02.656.

50056687のティックと6195のバーが生成され、環境の同期は0:00:02.656で行われました

Test passed in 0:01:40.906 (including ticks preprocessing 0:00:27.047).

テストは0:01:40.906で行われました(ティックの準備にかかった0:00:27.047を含む)

Tester  EURCAD,H1: total time from login to stop testing 0:01:43.562 (including 0:00:07.329 for history data synchronization)

エージェントへの接続からテストの終了までにかかった時間は0:01:43.562(履歴データ同期にかかった0:00:07.329を含む)

Tester  132757966 total ticks for all symbols

全シンボルで132757966ティックが生成されました

Tester  EURCAD: generate 50056687 ticks in 0:00:08.703, passed to tester 50056687 ticks

EURCADでは0:00:08.703で50056687のティックが生成され、テスターに50056687のティックが送信されました

Tester  EURUSD: generate 42615166 ticks in 0:00:09.235, passed to tester 42587228 ticks

EURUSDでは0:00:09.235で42615166のティックが生成され、テスターに42587228のティックが送信されました

Tester  USDCAD: generate 40134644 ticks in 0:00:09.109, passed to tester 40114051 ticks

USDCADでは0:00:09.109で40134644のティックが生成され、テスターに40114051のティックが送信されました

Tester  546 Mb memory used including 0.94 Mb of history data, 320 Mb of cached tick data (total memory for tick data 3135 Mb)

履歴データの0.94メガバイトとティックのキャッシュの320メガバイトを含む、546メガバイトのメモリが使用されました(ティックデータには全部で3135メガバイトが使用されました)

Tester  log file "E:\MetaTrader5\Tester\Agent-127.0.0.1-3000\logs\20160908.log" written

操作ログのファイルは指定された方法で保存されました

テストに入った銘柄が1つだけの場合、操作ログには各銘柄の統計ティックを伴う個別の列の代わりに総統計だけが表示されます。

Tester  final balance 1199.73 USD

テスト終了時の残高は1199.73 USD

Tester  EURUSD,H1: 42668248 ticks, 6195 bars generated. Test passed in 0:00:41.360 (including ticks preprocessing 0:00:06.672).

42668248のティックと6195のバーが生成されました。テストは0:00:41.360で行われました(ティックの準備にかかった0:00:06.672を含む)

Tester  489 Mb memory used including 0.94 Mb of history data, 320 Mb of cached tick data (total memory for tick data 1023 Mb)

履歴データの0.94メガバイトとティックのキャッシュの320メガバイトを含む、489メガバイトのメモリが使用されました(ティックデータには全部で1023メガバイトが使用されました)

Tester  log file "E:\MetaTrader5\Tester\Agent-127.0.0.1-3000\logs\20160908.log" written

操作ログのファイルは指定された方法で保存されました

同じ履歴データでの再テスト時に、プラットフォームとエージェントの間で最小のデータ交換が同期時に行われます。エージェントメモリではキャッシュされた履歴が使用されます。ティックの生成モデルが変更されていない場合も、キャッシュされたティックデータが使用されます。これらの条件でテストは直ちに開始されます:

Tester  account info found

取引口座についての情報が検出されました

Network 1482 bytes of tester parameters loaded

テストのパラメータの1482バイトがダウンロードされました

Tester  initial deposit 1000.00 USD, leverage 1:100

テストの為の初期証拠金は1 000 USDで、レバレッジは1:100です

Tester  successfully initialized

テストが初期化されました

Network 1614 bytes of total initialization data received

初期化時にエージェントによって取得した情報の総量は1614キロバイトです

Tester  Intel Core i7-3770  @ 3.40GHz, 16351 MB

エージェントが動作するコンピュータの構成の説明

History EURUSD,H1: history cached from 2014.01.01 23:00

EURUSD H1の履歴はキャッシュされました、2014年1月1日23:00開始

Tester  EURUSD,H1 (MetaQuotes-Demo): every tick generating

全ティックでテストが行われました(MetaQuotes-Demoサーバ)

Tester  EURUSD,H1: testing of Experts\Tester\MultyPairCrossMA.ex5 from 2015.01.01 00:00 to 2016.01.01 00:00 started with inputs:

2015年1月1日00:00から2016年1月1日00:00までのMoving Averageエキスパートアドバイザのテストは次の入力パラメータで実行されます。

Tester    InpLots=0.10

Tester    InpStopLoss=50

Tester    InpTakeProfit=50

Tester    InpTrailingStop=30

Tester    InpFastMAPeriod=21

Tester    InpSlowMAPeriod=34

InpLots=0.10

InpStopLoss=50

InpTakeProfit=50

InpTrailingStop=30

InpFastMAPeriod=21

InpSlowMAPeriod=34

History EURUSD,M5: history cached from 2014.01.01 23:00

EURUSD M5の履歴がキャッシュされました、2014年1月1日23:00開始

History EURJPY,M5: history cached from 2014.01.01 23:00

EURJPY M5の履歴がキャッシュされました、2014年1月1日23:00開始

History USDJPY,M5: history cached from 2014.01.01 23:00

USDJPY M5の履歴がキャッシュされました、2014年1月1日23:00開始

テストの停止

Stop out. 取引に失敗した場合に、Stop Outによってテストが停止する場合があります:

Tester  final balance 44.81 USD

テスト終了時の残高は44.81 USD

Tester  stop out occurred on 3% of testing interval

ストップアウトはテストが3%経過した時に起こりました

セルフストップ。指定した条件が起こった際にExpertRemove関数を呼び出し、エキスパートアドバイザ自体から終了前にテストを停止させることができます。操作ログには次のように表示されます:

MACD Sample (EURUSD,H1) 2015.03.13 03:00:00   Testing stop. Balance is 299.29

テストは停止しました、残高は299.29です

MACD Sample (EURUSD,H1) 2015.03.13 03:00:00   ExpertRemove() function called

ExpertRemove関数が呼び出されました

Tester  removed itself within OnTick

エキスパートアドバイザはティックプロセッサで動作を終了しました

Tester  final balance 299.29 USD

テスト終了時の残高は299.29 USD

Tester  removed itself on 19% of testing interval

エキスパートアドバイザはテストが3%経過した時に動作を終了しました

メモリエラー。 重大なエラーに起因してテストは完了前に終了することがあります。例えば、ArrayResize関数で常に繰り返し割り当てをすると、余計なメモリの分裂につながり、その後必要なサイズのメモリブロックの欠如につながる可能性があります。その結果、メモリ不足の重大なエラーが発生します。

MemoryException 8192 Mb not available

8192メガバイトのサイズのメモリブロックが利用できません

MACD Sample (EURUSD,H1) 2015.01.02 09:00:15   cannot resize ExtDoubleArray4 from 536870912 to 1073741824

2015年1月2日09:00:15にエキスパートアドバイザは536870912から1073741824バイトにExtDoubleArray4配列のサイズを大きくすることができませんでした

Tester  memory error in OnTick

OnTickでのメモリエラー

Tester  stopped on 0% of testing interval

3%経過した時に動作を終了しました

Tester  not enough available memory, 37371 Mb used, 9178 Mb available, maximal available block is 4096 Mb

37371メガバイトのメモリが不足、9178メガバイトが利用でき、メモリブロックの最大サイズは4096メガバイト

配列の範囲越え。 配列の範囲を越える、つまり配列要素のインデックス値が配列要素の数(インデックスは0から始まる)と等しいまたは大きい場合に重大なエラーとなります。

MACD Sample (EURUSD,H1) 2015.01.06 18:42:59 array out of range in 'MACD Sample.mq5' (473,28)

'MACD Sample.mq5'ファイル内の配列の範囲越えによるエラー (列473、ポジション28)

Tester  OnTick critical error

OnTickでの重大なエラー

ゼロ除算。 ゼロ除算もまた重大なエラーとなります。

MACD Sample (EURUSD,H1) 2015.01.06 18:42:59 zero divide in 'MACD Sample.mq5' (465,35)

'MACD Sample.mq5'ファイルでのゼロ除算エラー(列465、ポジション35)

Tester  OnTick critical error

OnTickでの重大なエラー

初期化時のエラー。 OnInit関数がプログラムでINIT_SUCCEEDEDとは違うコードを返す場合にテストは開始されずに終了します。このようにして、入力パラメータの制御が行われることがあります。

MACD Sample (EURUSD,H1) 2015.01.01 00:00:00 Deinit reason is 8

2015年1月1日00:00:00にエキスパートアドバイザの初期化解除が起こりました

Tester  tester stopped because OnInit failed

OnInitでエラーによってテストが停止しました