トレーダーの皆さん、こんにちは!今回はトレーディング戦略の評価に役立つインジケーターについてお話ししたいと思います。
多くのトレーダーが、特定のトレーディング戦略の欠点を視覚的に確認したいと思ったことがあると思います。また、客観的なトレーディング統計を同時に見ることができれば、さらに良いですよね。
MT4にはバックテスターがありますが、EAの変更ごとにビジュアルモードでバックテストを実行するのは非常に時間がかかります。また、そのビジュアル能力も限られているため、効率的にマルチカレンシー戦略をテストすることが難しいのが現実です。
これらの問題を解決するために、視覚的にトレーディング戦略をテストできるオープンソースのインジケーターを作成しました。すべての目的に完全にユニバーサルなインジケーターを作ることはできませんが、現在のフレームワークは特定のニーズ(例えばマルチカレンシー)に合わせて簡単に修正・拡張可能です。

特にスプレッド管理に注意を払いました。このインジケーターは、実際の取引やMT4のバックテスターにおけるスプレッドを考慮しています。インジケーターを自分の目的に合わせて修正する場合は、スプレッド管理を詳細に研究する必要があります。さもないと、M1タイムフレームで素晴らしい戦略結果が見られても、実際には大惨事になることがあります。:-)
この戦略テストインジケーターのデモとして、シンプルなトレーディング戦略を持つトレーディングインジケーターを追加します。この戦略のルールは、プライスアクションに基づくMAクロスを用いており(実際にクロスする前に取引を行うことができるため、ラグを解消できます)、エグジット戦略も含まれています(逆信号と逆方向の遅いMAクロスを使用)、さらにストップロスの処理は修正されたシャンデリアSL戦略を通じて実装されています。このインジケーターは、特定のニーズに合わせて拡張できるサンプルとして機能しますが、一部の人々は手動取引に十分に良いと感じています。
このシステム全体のアイデア
インジケーターシステムはモジュラー方式で構築されています。まず、トレーディング戦略をトレーディングインジケーターに実装する必要があります。現在、エントリー信号用に2つのバッファ、エグジット信号用に2つのバッファ、ストップロス用に1つのバッファを使用しています。完全な機能を持つインジケーターのサンプルとして、添付のStrategyIndi_1.0を参照してください。
この戦略は戦略テストインジケーター StrategySym_1.0で評価できます。結果に満足できない場合は、トレーディングインジケーターを最適化し、リアルタイムで客観的に変更の結果を統計で見ることができます。

後でEAを実装したい場合も、カスタムトレーディングインジケーターを呼び出すことで、すべてのエントリーとエグジット信号、さらにはSL値を取得できるので、非常に簡単です。
このシステムをどのように使用し、自分のニーズに適応させるか?
システムをそのまま使用するには、両方のインジケーターをMetaTrader\experts\indicatorsフォルダーにコピーするだけです。使用する前にターミナルを再起動して、コンパイルされることを確認してください。
変更したい設定がいくつかありますが、ほとんどは名前から明らかですので、その他の設定のみを説明します:
StrategyIndiパラメータ:
- ChandBars = 7(シャンデリアSL戦略のためのバー数)
- ChandATRFact = 2.0(長期ATRを掛け算するファクター、シャンデリア距離を得るため)
- RiskPercent = 2.0(ロット計算のためのリスク%、手動取引情報のみに使用)
- Offset = 10(チャート上の矢印を配置するためのバーからのオフセット、4桁ピップ)
- BarsBack = 2000(過去から処理するバーの数)
- AlertSound = "alert.wav"(サウンドアラート用のWAVファイル)
- UseSoundAlert = true(音声アラートを希望する場合)
- UsePopupAlert = true(ポップアップウィンドウアラートを希望する場合)
- WriteToLog = false(ログ詳細を記録したい場合)
StrategySimパラメータ:
- MaxLossAtSL = 200.0(各SLで失う準備がある金額)
- BarsBack = 2000(戦略評価のために処理するバーの数)
- WriteToLog = false(ログ詳細を記録したい場合)
システムを自分のニーズに合わせて適応させる場合は、StrategySymインジケーターに、シミュレーションに関わるStrategyIndiインジケーターのすべてのパラメータを追加する必要があります。それらは後にGetIndiSignalsメソッドで使用され、他のパラメータ(UseSoundAlertなど)の固定値を設定します。StrategySimには、他の目的(マルチカレンシー戦略など)のために変更したい場合を除き、他に変更は必要ありません。その場合、コードのコメントや変数名が役立つことを願っています。サポートが必要な場合は、下記のウェブアドレスからご連絡ください。
このシステムを通じて、トレーディング戦略(手動システムやEA)の評価における客観性に貢献できればと思います。現在のマーケティング手法はしばしば非常に操作的であり、多くの初心者が手に入れたお金を失う原因となっています。
それでは、皆さんの成功を祈っています!ロバート
何かコメントやMT4プログラミング、またはこのテーマに関してのアドバイスが必要な場合は、robert [dot] leskovar [at] gmail [dot] comまでご連絡ください。MQLToolsのウェブサイトは現在アクティブではありません。