テストと最適化の全プロセスは、操作ログに詳細に記載されます。ストラテジーテスターで『スタート』ボタンを押した後、何が起こっているのかを見てみましょう。
テスト/最適化はすぐに始まるわけではなく、テスターは始めに環境の準備を行います。テストが行われるシンボルの履歴の有無を調べ、取引サーバにある全ての履歴を同期します。プラットフォームにテストするシンボルの履歴がない場合、取引サーバとの同期化に数分かかる場合があります。
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 |
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 |
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でエラーによってテストが停止しました |