現在、金市場でのエキスパートアドバイザーのパフォーマンスを注意深く監視しています。監視手順の一つとして、シグナルアカウントでの取引とストラテジーテスターで得られた結果を比較しています。
私は、新しいバーが開いた時にのみ動作するエキスパートアドバイザーを作成しようとしています。これは、高品質なティックデータが不足しており、テスト用のマシンリソースが限られているためです。そのため、ストラテジーテスターの結果と実データの結果は一致するはずです。しかし、残念ながらそうではありません。
2月最初の10日間のテスト結果
同じ10日間で、エキスパートはリアル口座で70%の利益を上げました。これは取引リストです。
全体的に結果は同じです。どちらのケースでも、エキスパートアドバイザーは最小限のドローダウンで大きな利益を上げました。
しかし、違いがあります!リアル口座では取引回数が多く、平均利益は低いです。テスター口座とリアル口座のチャートで取引を比較してみましょう。
テスター
実スコア
この行動の理由
1) 取引数の違いは、「始値で」テストモードでは、エキスパートアドバイザーがストップロスまたはテイクプロフィットで決済された取引を遅れて学習するため発生します。その結果、同じシステムを使用して新規取引を開始しません。一方、リアル口座では、取引はバー内で決済され、新しいバーが開いた時点でエキスパートアドバイザーは新規ポジションを開くことができます。
2) スリッページ、開始の遅延、その他のリクオートにより、実際の口座での利益は低くなります。
結果と結論
「始値でのテスト」モード(始値)と実際のアカウントでのアドバイザーの作業の比較分析を実施した結果、次の重要な結論を導き出すことができました。
1. 注文完了段階がテストのボトルネックとなる
トランザクション数の不一致の主な原因は、イベント処理のロジックの違いです。 ポジションをクローズします。
-
テスター内: ストップロスまたはテイクプロフィットの発動に関するシグナルがアドバイザーに送信されます 厳密に言えば、次のバーの開始時です。そのため、同じレベルで新たな取引を開始する機会を逃し、1つの時間間隔が取引から「削除」されます。
-
現実世界では: 取引はバー内で成立します。システムは即座にマージンを解放し、結果を確定します。 新しいバー アドバイザーは以前のポジションの負担がなくなり、ティック/バーを受け取った後すぐに新しい取引を開始する権利を持ちます。
結論: 「始値」テスト モードでは、保護注文がトリガーされた後に「デッド ゾーン」を人為的に作成することで、完了した取引の数を過小評価します。
2. 実質的なお金の収益率が低いことの本質
最終利益の差は市場のミクロ構造のみによるもので、ティックデータなしではテスターでシミュレートすることはできません。
-
滑り: 特にボラティリティが高い時期に、提示価格よりも悪い価格で執行すること。
-
実行遅延: システムが注文開始のシグナルを確認する価格と、注文が実際に約定される価格は異なります。
-
再割り当て: 再度価格を尋ねると、時間と潜在的な利益が失われます。
結論: テスターは、注文が常に現在の市場リクエスト価格で発注されると仮定して、エントリーを理想化します。実口座では流動性税がかかります。
3. 方法論の根本的な限界
数学的な矛盾(取引数+利益率)があるにもかかわらず、 システムの動作パターンは保存されます:
-
最小限のドローダウンで大きな利益。
-
多方向信号がない。
これはアドバイザーのコードが正しく、意思決定ロジックが正しく機能していることを意味します。逸脱は 定量的ではなく 定性 キャラクター。







