English Русский 中文 Español Deutsch Português Türkçe
preview
マーケットからエキスパートアドバイザーを選択する正しい方法

マーケットからエキスパートアドバイザーを選択する正しい方法

MetaTrader 5テスター | 18 4月 2022, 14:02
767 0
Evgeniy Ilin
Evgeniy Ilin

目次

はじめに

今日のMetaTraderマーケットは、投資市場から利益を得るという同じ目的を持つトレーダー、ユーザー、プログラマーの最大級のコミュニティです。フォーラムでは、このリソースで紹介されている製品とその品質に関して多くの議論があります。この記事では、これらすべての発言を確認し、まだ疑問を持っているすべての人にマーケットが提供する幅広い機会を示します。さらに、ここで価値のある製品を見つけることができるかどうかを確認し、可能であれば、その方法を見つけようとします。


最高のユーザーエクスペリエンスを実現するためのマーケットの正しい理解

どのマーケットプレイスにも、非常に良いものと非常に悪いもの、そしてその中間のものなど、さまざまな種類の製品があります。マーケットも例外ではありません。MQL5マーケットには非常に多くの製品があります。目的の製品を見つけるのが難しいかほとんど不可能だと感じるのは、このマーケットプレイスに対して否定的な態度を示しているユーザーだけです。そのようなユーザーの言い分は次のようなものです。

  • 何百ものシステムをテストしたが何も見つからなかった
  • 自分が聖杯を書くことができなかったので聖杯は存在しない
  • 聖杯はあり得ない
  • ターミナルが分析に十分なデータを提供できない
  • エキスパートアドバイザーでは人間ができるほど効率的に市場を分析することはできない
  • 本当に機能するシステムを売っている人はいないだろう
  • システムは月に+100%を生成する必要がある。年100%では少なすぎる
  • エキスパートアドバイザーは値段が高くて評価が高いほど優れている
  • 1年間のプラスの監視は信頼できる
  • ここでは利益を得られないので、販売者に誤った情報を伝えてマーケットの信用を傷つけます
  • 私はフォーラムの第一人者です
  • 私はウォール街で生まれました

そして同様のものです。さまざまな発言がありますが、主なアイデアは、悪い経験をした場合、その失敗の理由はマーケット自体にあって自分にはないという考えに関連しています。

マーケットプレイスには、誰かが低品質(購入者の意見では)の製品を購入することについての責任はありません。マーケットプレイスの機能は販売者と購入者を結び付けることであり、それだけです。この機能はうまく実装されていると思います。多数の製品やサービスが競争を引き起こします。競争できないならば、これは自己啓発に投資する良い理由かもしれません。必要な知識があれば、簡単にだまされることはなく、リソースに示されている豊富な製品の中から実用的な解決策を見つけることができます。時間をかけてください。意志があるところには道があります

この記事では、機能する取引システムとシグナルを効率的かつ正確に見つける方法について詳しく検討します。もちろん作者の名前は明かしませんが、マーケットの例を使って、最初から最後までプロセス全体を見ていきます。


自動取引システムを評価するための主要なルール

例の分析に進む前に、まず、マーケットプレイスで取り上げられている製品を分析するためのルールと基準を定義しましょう。奇妙なことに、ほとんどの人は、有益なエキスパートアドバイザーやシグナルが何であるか、そして実際に機能するソリューションと模倣を区別する方法を理解していません。MQL4とMQL5で自動取引システムを作成した経験に基づいて、私は完全に実行された場合にいわゆる「聖杯」に変わる可能性のあるエキスパートアドバイザーを選択するための非常に明確で効果的な基準を開発しました。まずこれらのルールを共有してから、それぞれの意味を説明します。ルールは次のとおりです。

  1. ストラテジーテスターでテスト期間を正しく選択する
  2. エキスパートアドバイザー操作を正しい評価する(バーまたはティックによる)
  3. 利用可能なターミナルデータを評価する
  4. 可能であれば、作成者が提供した時間枠に近い時間枠でテストする
  5. さまざまな取引商品の独立したバックテストの数が正しい
  6. テストを視覚化し、背後にあるものを確認する機能
  7. 適切なテストパラダイム(テストシーケンスとそれから正しい結論を出す能力)
  8. ストラテジーテスターで取引システムをテストするときに正しいスプレッドを使用する(MetaTrader 5では実際のティックでテストすることで達成)
  9. 実行されたすべてのバックテストを正しく評価する
  10. リアル口座監視の可用性
  11. リアル口座監視の正しい分析
  12. 過剰適合を検出する方法の1つとしてのフォワードテスト
  13. 最適化プロセスとそのフォワード期間への影響の理解
  14. ランダムウォークプロセスの理解とその取引への影響
  15. MetaTrader 4とMetaTrader 5テスターの詳細とそれらの違い(長所と短所)を理解する
  16. 可能であれば、取引システムの開発における自分自身の経験
  17. 礼金管理メカニズムおよび/またはそれらの取引への影響に関する知識
  18. バックテストと実際の取引の違いを理解する
  19. デモ口座とリアル口座の違いを理解する
  20. 最も人気のある取引システムの知識と理解
  21. 市場に関連する確率論を含む数学の知識
  22. 市場についての真実の知識(「経験」)

ご覧のとおり、かなり長いリストがあります。さらに、各アイテムには多くのニュアンスと秘密があります。これらのニュアンスはそれぞれ、独自の方法で結果に影響を与えます。ここでは、マーケットプレイスで取り上げられている製品の効率的な分析を開始するのに役立つ最低限必要な基本事項について検討します。リストの大部分が利用できないことを理解していれば、問題はありません。この記事では、特に難しいことは何もないことがわかります。プラットフォームを初めて使用する人でも、一連の簡単なルールを使用して、恐れを取り除き、手頃な価格で優れた製品を選択できるか、少なくとも 重要な質問のいくつかに対する簡単な答えをみつけることができると思います。記事を最後まで読むと、それがいかに簡単であるかがわかります。


エキスパートアドバイザーの主要な操作メカニズム

リストの最初の3つの項目を組み合わせて検討します。自分や他の開発者のシステムをテストした経験、および他のユーザーの経験に基づいて、エキスパートアドバイザーにはいくつかの種類があると言えます。

  • ティックを使用するEA
  • バーを使用するEA
  • タイマーで動作するEA

ご覧のとおり、種類は多くありません。たとえば、EAがティックで機能する場合、EAは、このイベントの発生後にのみすべての計算と取引アクションを実行します。2種類目はもう少し複雑です。私は以前はティックベースのロボットを開発していましたが、現在はバーで動作するEAに切り替えています。残念ながら、MQL4およびMQL5エキスパートアドバイザーでは、新しいバーの出現イベントを受け取る可能性はありませんが、追加機能を使用して、別の方法で実装できます。これは、テスト間隔の長さに直接関係しています。3種類目のエキスパートアドバイザーはタイマーで動作します。そのようなEAのすべてがストラテジーテスターで正しくテストできるわけではありません。多くの場合、開発者はこの選択を正当化できますが、私はそのようなソリューションに非常に懐疑的です。

エキスパートアドバイザーがティックに従う場合、自動的に追加のリスクが生乱され使用が困難になります。このようなEAは通常、特に成行注文を使用して取引する場合、pingに非常に敏感です。50ミリ秒の遅延でさえ重要になる可能性があります。このような場合、そのような影響を最小限に抑えるために取引サーバーの近くでVPSを借ります。

ロボットが未決注文を使用する場合、そのような否定的な状況をほぼ完全に排除することが可能です。いずれにせよ、そのようなシステムはより多くの利益を生み出すか、起こりうる損失を減らすことができます。

私の経験によると、最も安定しているのはバーに従うシステムです。記事の最後で、私自身の開発を使用してそれを証明します。もちろん、ティックのデータに基づいて利益が見込めるシステムを見つけることは可能ですがはるかに困難です。この記事の目的は、正しい決定を下すための最も簡単な方法を提供することです。

上記のアイデアによると、最も重要な部分は、次の原則に基づいてシステムをテストすることです。

  1. EAがティックに従う
  2. EAがバーに従う

これらのイベントがコードでどのように実装されているかを見てみましょう。これが新しいティック出現イベントです。

//+------------------------------------------------------------------+
//| Expert tick function                                             |
//+------------------------------------------------------------------+
void OnTick()
  {
  //some logic
  }

ティックは、サーバーから受け取った新しい価格です。サーバーの価格が変更された場合、サーバーはこのイベントをすべてのクライアントに送信します。バー単位の操作は、このイベントを使用し、さらにフィルタリング機能を適用して実装できます。
//+------------------------------------------------------------------+
//| Expert new bar function                                          |
//+------------------------------------------------------------------+
datetime PrevTimeAlpha=0;  
bool bNewBar()
   {
   if ( Time[1] > PrevTimeAlpha )
       {
       if ( PrevTimeAlpha > 0 )
          {
          PrevTimeAlpha=Time[1];
          return true;
          }
       else
          {
          PrevTimeAlpha=Time[1];
          return false;
          }
       }
   else return false;
   }  

これは私がそれを行う方法の例です。他にも可能な方法があります。重要なのは、これらすべての関数が最終的にOnTickイベント内で使用されるということです。
void OnTick()
  {
  if ( bNewBar() ) { /*some logic*/ }
  }

以下はタイマーイベントです。
//+------------------------------------------------------------------+
//| Timer function                                                   |
//+------------------------------------------------------------------+
void OnTimer()
  {
  //some logic
  }

前のイベントと同様に、すべてのロジックはイベントから発生し、エキスパートアドバイザーのコードはこれらのイベントのおかげで正確に機能することがわかります。タイマーイベントは、EAの起動中にミリ秒単位で目的の期間に事前に設定する必要があります。
//+------------------------------------------------------------------+
//| Expert initialization function                                   |
//+------------------------------------------------------------------+
int OnInit()
  {
   EventSetTimer(60);
   return(INIT_SUCCEEDED);
  }

それだけです。3つの可能なEAロジックパラダイムを見てきました。これは、さらに分析するのに十分です。もちろん、他にも多くのイベントが発生する可能性がありますが非常にエキゾチックで状況に依存するため、アルゴリズムトレーダーが使用することはめったにありません。


エキスパートアドバイザーテストの主なニュアンス

まず、基本を理解することで、エキスパートアドバイザーがどのように機能するかを理解できます。この問題をより詳細に検討すると、たとえば、ティックベースのテストはストラテジーテスターで2つの方法で実装できることがわかります。

  • 事前定義された式を使用したバー内のティックの人工的な生成
  • 証券会社サーバーからの実際のティックのロード

両方のオプションは、MetaTrader 4とMetaTrader 5の両方に実装されています。唯一の違いは、第5ターミナルバージョン(MetaTrader 5)では、ティックによるテストがすぐに利用できるのに対し、前世代のプラットフォーム(MetaTrader 4)では追加のソフトウェアが必要なことです。したがって、MetaTrader 5を使用できる場合は、ストラテジーテスターでテストする方がはるかに便利です。

実際のティックとバーのデータは多くのディスクスペースを使用することに注意してください。このため、証券会社がサーバーに保存できる関連データの量は限られています。商品で利用可能なデータの量を知るのは、問題ではありません。この機能はMetaTrader 5に実装されています。ターミナルのメインパネルには[銘柄]ボタンがあります。

銘柄ボタン

クリックすると、ティックとバーに関する必要な情報が表示されたウィンドウが開きます。証券会社のデータベースで利用可能なティック数を確認するには、目的の銘柄と時間間隔を指定して、[リクエスト]をクリックすると、関連するティックデータがサーバーからダウンロードされます。

ティックのダウンロード

サーバーから受信したティックが指定した期間よりも短い場合は、関連するメッセージが表示されます。これは、上の図で赤い境界線で強調表示されています。このメッセージは、リアルティックモードでテストを開始できるデータを示しています。実際のティックが使用できない期間を設定すると、プラットフォームはモデル化されたティックを生成します。モデル化されたティックを使用してティックベースのエキスパートアドバイザーをテストすると、歪んだ結果が生成されることがありますが、これを回避する方法がわかりました。この欠点のない、バーベースのエキスパートアドバイザーを使用できます。

バーでも同じです。

バーのダウンロード

ほとんどの銘柄のバーは、通常、テストの時間枠に応じて、2000年またはそれ以前まで使用できます。上の画像では、メッセージは、内部ターミナルストレージの制限に従って100,000本のバーがダウンロードされたことを示しています。他のケースのメッセージは異なります。以下のフォームは、端末のストレージ設定を示しています。

MetaTrader 5のストレージ設定

構成されている相場のストレージサイズは次のとおりです。サイズがテストに十分でない場合は、サイズを大きくしてターミナルを再起動します。利用可能な希望の履歴は、次のリクエストでダウンロードされます。重要な機能は、履歴内のバーの数が「Maxbarsinchart」であるチャート上のバーの数と等しいことです。

MetaTrader 4でも同様です。メインメニューを使用して[ツール]->[履歴サーバ]に移動します。

MetaTrader 4のヒストリーセンター

同様のウィンドウが開きます。

ストレージサイズのMetaTrader 4セットアップ

MetaTrader 5の共通変数はここで2つに分けられます。

  • Max barsinhistory - 履歴に含めることができるバーの数
  • Max barsinchart - チャートに表示できるバーの数

ストレージは最初の変数によって制限され、2番目の変数は、アーカイブに表示されるデータの量と、ターミナルのチャートに表示されるバーの数を制限します。たぶん、以前のターミナルバージョンでは、これはメモリを節約するために必要でした。それでは、このアーカイブがMetaTrader 4でどのように見えるかを見てみましょう。

MetaTrader 4の相場のアーカイブ

履歴をダウンロードするには、目的の記号を選択して[ダウンロード]をクリックします。MetaTrader 5との唯一の違いは、履歴の一部のみをリクエストすることはできないということです。設定の制限に従って、すべての時間枠で完全にダウンロードされます。これらの制限を設定または削除する方法はすでに知っています。

テストする前に、履歴を準備する必要があります。これはMetaTrader 4にとって特に重要です。このターミナルでは、必要な履歴が手動でダウンロードされますが、MetaTrader 5は自動データロードを備えています。履歴を事前にダウンロードせずにバックテストを開始すると、ターミナルが必要なデータをダウンロードします

履歴を準備した後の次の手順は、どのポイントからバックテストを実行するか、どのグラデーションを使用するかを決定することです。、現在の日付から開始する場合は、最初のテストに履歴の最後の年または前年全体と現在の年を使用することをお勧めします。このようなテストに基づいて、テスターのパフォーマンスについての最初の結論を出すことができます。EAがこの間隔で間の抜けたパフォーマンスを示さない場合は、すぐに次の分析に切り替えることができます。

パフォーマンスが許容範囲内である場合は、利用可能な履歴全体を使用してEAをテストし、ストラテジーテスターに​​大きな入金を設定して、EAがこのバックテストを通過できることを確認します。可能であれば、実際のティックを使用してテストします。正しい評価を行うには、EAで許可されている場合はすべての資金管理メカニズムを無効にすることをお勧めします。厳密に言えば、そのような機会を提供しないエキスパートアドバイザーは、取引システムの最も重要な指標の1つであるポイント単位でのストラテジーの当初の期待される見返りを失うため、慎重に検討する必要があります。このパラメータは、取引システムを評価する上で重要な役割を果たしており、その重要性を過大評価することはできません。

テストする前に、MetaTrader 4とMetaTrader 5テスターの違いを理解することが重要です。新しいターミナルバージョンでは、スプレッドには下限があります。この制限を下回るスプレッドを指定した場合でも、テストはその最小制限で実行されます。この値よりも高いスプレッドを設定すると、テストでは指定された値が正確に使用されます。このメカニズムは購入者を保護します。テストで非現実的な低スプレッドを設定することはできませんが、1ポイントでも費用がかかる可能性があります。この最小値は、EAをテストしている銘柄の価格履歴からの平均スプレッド値にリンクされていますが、この値は銘柄仕様には示されていません。この機能を忘れないでください。他の取引システムをテストするときは、現在のスプレッドを使用することをお勧めします。この場合、ターミナルは各バーの履歴に保存された値を使用します。すべてのティックを使用してテストする場合、ターミナルはすべてのティックで関連するスプレッド値を認識し、ティックベースのエキスパートアドバイザーのテストは実際の状態に非常に近いことになります。

MetaTrader 4でのテストは、よりシンプルなスプレッド設定を提供します。スプレッドは、1から任意の値に設定できます。テスターは正確に指定された値を使用します。スプレッドはテスト期間全体を通して固定されますが、これはあまり良くありませんが、現在のスプレッドを確認し、手数料、スワップ、スリッページの可能性、そしておそらくシステムが拡大されたスプレッドに耐えることを確認するための追加の価値を追加できます。これはテストにおける重要な側面です。

MetaTrader 5では、スプレッドは次のように設定されています。

MetaTrader 5スプレッド

MetaTrader 4では、より簡単です。

MetaTrader 4スプレッド

MetaTrader 4での設定は簡単ですが、このバージョンでのテストはあまり好ましくないはずです。マーケットで提供されているほとんどすべてのEAは2つのバージョンで実装されているため、MetaTrader 5バージョンをテストすることは問題ありません。テストの詳細に関する知識は非常に役立ちます。


複合指標

テスト結果が肯定的の場合は、次の2つのカスタム指標に注意してください。これらの変数には、最大ドローダウン相対ドローダウンシャープレシオなど、バランスとエクイティの両方による多くの指標の利点が組み込まれています。指標は簡単に計算できます。

  • Alpha = TotalProfit / MaximumEquityDrawdown
  • Betta = TotalProfit / MaximumBalanceDrawdown
  • MaximumEquityDrawdown – –最大エクイティドローダウン
  • MaximumBalanceDrawdown – 最大バランスドローダウン
  • TotalProfit =  (EndBalance - StartBalance) – 総利益
  • EndBalance - テスト間隔終了時のアカウント残高
  • StartBalance - テストを開始した初期バランス

この式の最終利益を計算するために、開始残高が初期バックテスト残高から差し引かれます。エクイティバランスの両方での最大ドローダウンは、MetaTrader 4とMetaTrader 5のバックテストで利用できます。予想されるポイントの見返りの後、この変数は、ストラテジーテスターレポートでも提供される利益係数と同じくらい重要です。これらのことを説明するとき、私は読者が最低限必要な知識を持っていることを想定しています。

もう1つの重要な指標は、取引数です。取引が多ければ多いほど良いです。この数は妥当な範囲内である必要があります。つまり、大きすぎたり小さすぎたりしないようにする必要があります。これらの値の動作範囲を以下に示します。また、取引グラフ自体も見栄えがよいはずです。直線のように見えるほど、見栄えが良くなります。

評価範囲の値は次のとおりです。

  • MathWaitingPoints  >=  3*MiddleSpread  (ポイントでの期待ペイオフは銘柄のスプレッドを大幅に超える必要があります)
  • ProfitFactor >= 1.1 … 1.2 (ストラテジーには優れた予測能力が必要です)
  • Alpha >= 5 … 10 (良好なアルファはリスクが低いことを示し、良好な予測能力を確認します)
  • Betta>= 5 … 10 (良好なベータは、統計と安定した動作の観点から、このサンプルの重要性が高いことを示します)
  • TradesPerYear  >= 20 … 30  (1つの取引商品に高品質のエントリポイントはほとんどありませんが、商品はたくさんあります)
  • MiddleSpread – 平均銘柄スプレッド
  • MathWaitingPoints – ポイント単位の期待される見返り
  • ProfitFactor – 収益性
  • TradesPerYear – 年間の取引数

これらの変数は非常に柔軟性があり、より良い結果に向けて調整できます。私の経験によると、そのような指標は、マーケットで見つけることができる利益を生み出すストラテジーに対応していることがよくあります。もちろん、除外が存在する可能性はありますが、頻繁には発生しません。その他の特徴については、補助的なものであり、必ずしも知る必要はありませんが、その意味を理解することをお勧めします。


注意点

過度に高い取引結果年間利益率を持つシステムを見つけた場合、詐欺の可能性があるため、そのようなシステムはより注意深くチェックする必要があります。EAの説明に記載されている年間利益の結果に基づいて、将来のリスクについて結論を出し、説明の読み取り段階で取引システムの大部分を除外することができます。次の範囲は、安全な年間収益性をカバーしているようです。

  • 10~200 %

ただし、200%はリスクが高すぎると思います。年間100〜150%が良い結果です。もちろん、年間最大1000%を生成できるシステムもあります。しかし、著者がそのようなアルゴリズムを他の人と共有する可能性は低いため、そのようなシステムがマーケットで見つかるとは思えません。


グリッド、マルチンゲール、ピラミッド、平均化などのトリッキーな資金管理システムを使用するエキスパートアドバイザーは、取引履歴で結果が最適化されていないことがよくあります。これらのトリックは、預金を失う前に、フォワード期間のかなり長い期間利益を生み出すことができます。ただし、このような疑似聖杯を検出することは可能です。必要なのは、リアル口座の監視を確認することだけです。


ライブ口座の監視

監視が利用できる場合は、多くの場合、隠されているものを確認できます。取引システムを賢明に分析すれば時間を節約することができます。以下に危険なシグナルと安全なシグナルの2つの例を示します。悪いものから始めましょう。

危険なシグナル

ご覧のとおり、非常に美しい利益ラインがあります。しかし、下の図に注意を払うと、緑色の下向きのスパイクが表示されています。これは非常に奇妙です。スパイクは、上記の重要なalphaカスタム指標が非常に低いことを示しています。そのようなスパイクの1つでさえが初日に預金を完全に破壊する可能性があるので、数字を知る必要さえありません。これは、資金管理の乱用または長期の損失維持時間を示しています。結果はクリティカルエクイティドローダウンという悪いものになる可能性があります:

次に、完全に安全な別のシグナルを見てみましょう。

安全なシグナル

バランスラインはそれほど美しくまっすぐではありませんが、それでも十分です。これは、シグナルの作成者が利益の錯覚を作り出すためにトリッキーな資金管理手法を使用していないことを示しています。このシグナルでは、alphabetaの両方が良好な結果を示しています。緑と青の線はほぼ同期しており、安定して上に移動します。年間利益率は非常に低いですが、著者は、預金の50%以下のドローダウンで、100〜150%の年間利益を生み出すリスクを高めています。私が示したシグナルは、マーケットで取り上げられている実際の製品のシグナルです。このシグナルを見つけるのに費やしたのはたった20分です。シグナルの中では、これが製品の監視であることがわかりました。これが、時間を節約し、ほとんどの偽物を回避するために逆アルゴリズムを使用する方法です。もちろん、そのようなエキスパートアドバイザーはかなり高価になる可能性がありますが、最終的にはその代償が報われる可能性があります。


いくつかのトリック

無料のシグナル許容できる特性を持つエキスパートアドバイザーを見つけることもできます。市場には選択できる非常に多くの製品があります。たとえば、無料シグナルコピー機RAを取得し、そのシグナルのEAがない場合は、取引を無料でコピーできます。したがって、製品に何も支払わずに利益を生み出すことができます

最適化についても触れておきたいと思います。使用するEAを最適化する必要があるのでしょうか。多くの著者は、特定の時間間隔でEAを最適化する必要があると書いています。これはまれにに本当で場合がありますが、自動取引システムの開発における私の経験に基づくと、最適化は決して良い結果にはならないと言えます。最適化は非常に慎重に実行する必要があります。また、実行していることを常に理解する必要があります。そうしないと、過去の結果に合わせてシステムを過度に最適化することができます。ほんとうです。単純な詳細な最適化では、特定の時間制限を追加しなくても、過剰最適化と過剰適合が発生する可能性があります。そして、結果は.setファイルの一部になります。EAの自由変数が多いほど、最適化が過剰になります。したがって、EAの安全性を評価するためのもう1つの単純で重要な基準は、入力パラメータの数です。入力の数が少ないほど、EAの使用が容易になり、 EAの過剰適合が困難になります。

また、EAの動作ロジックを理解できるとは限りません。この場合、バックテストとリアル口座の監視で必要な情報を提供できると思います。EAをコピーせずに利益を得ることは、関連する経験と知識があれば可能です。時間は限られています。利益を生み出すことになると、EAのすべての詳細を分析したり、その動作原理を精査したりする時間はあまりありません。多くのシステムは非常に複雑なアルゴリズムに基づいており、その作成者でさえすべての詳細を覚えていない可能性があります。


リスクを軽減して利益を増やすためのポートフォリオの分散

次に、見つかった解決策から、リスクを減らして利益を増やす方法を考えてみましょう。ここでの解決策とは、エキスパートアドバイザーを意味し、無料または有料で枯渇します。上で述べたように、無料のEAも効率的です。投資における一般的な概念は、分散です。この概念は、リスクを軽減し、利益を増やすために、資産間で資金を合理的に分配することを意味します。これはどのように達成されるのでしょうか。すべてが非常に簡単です。つまり、さまざまな特性を持つさまざまなエキスパートアドバイザーを採用し、次のロットと同時に実行するのがよいということです。

  • LotPerDepositDivesrsified[i] = LotPerDeposit[i] / N
  • N - 見つかったエキスパートアドバイザーの数
  • i = 1 … N – 預金に基づいて決定された各ストラテジーの最適ロットのインデックス
  • LotPerDepositDivesrsified [i] – i番目のストラテジーを多様化するために削減されたロット
  • LotPerDeposit [i] – i番目のストラテジーに最適なロット

つまり、まず各ストラテジーに最適なロットを見つけ、次にそのようなストラテジーの数で割る必要があります。その後、1つの口座でこれらすべてのストラテジーを個別に開始し、さまざまなマジックナンバーを設定できます。この場合、alphabetaの値は確実に大きくなります。実行するEAが効率的であるほど、値は高くなります。これは、ポートフォリオを多様化するだけで、リスクを安全に高め、年間利益率を高めることができることを意味します。これは本当の数学的事実です。この数学的真実を実証するために、機械学習を使用していくつかのエキスパートアドバイザーを作成しました。これらのエキスパートアドバイザーは、記事の添付ファイルで入手できます。多様性を高めるために、異なるチャートの時間枠を使用していくつかの主要なペアを取引するようにEAを訓練しました。また、添付ファイルを使用して個々のバックテストをチェックアウトすることもできます。EAは、現時点から10年間で訓練されました。このようなEAの1つの平均的な運用結果を示すために、すべてのバックテストの平均バックテストをいくつか示します。一部のEAは優れており、他のEAは劣っていますが、結果は平均は次のとおりです。

平均バックテスト


私のEAはバーに従うため、これらのテストは、すべてのティックモードではなく、バーモードで実行できます。すべてのバックテストを組み合わせるにはMetaTrader 4を使用する必要がありましたが、添付ファイルにはMetaTrader 5バージョンもあります。ご覧のとおり、一般的な利益傾向がありますが、betaはあまり良くなく、alphaを改善する必要があります。同じ時間間隔で9つのストラテジーを訓練しました。

それでは、特別なプログラムを使用してバックテストに参加しましょう。インターネットで見つけることができます。このプログラムは「ReportManager」と呼ばれます。他の同様の解決策もあり得ますが、これは私たちの目的には十分です。任意のアプリケーションを使用できます。もちろん、MetaTrader 5は複数通貨のテストをサポートしていますが、そのような機能はコードレベルで実装する必要があるため、解決策が役立ちます。共同バックテストの結果は次のとおりです。

複合ストラテジー

他のグラフの逆波により、すべての波が滑らかになりました。同じことが実際の取引中にも起こります。強力なエキスパートアドバイザーは弱いものをサポートし、逆もまた同様です。強いEAでドローダウンが発生すると、弱いものが補助として機能し始めます。これにより、alphabetaが狭い範囲に収まります。また、取引数は許容レベルまで増加しています。これは、9つの個別のストラテジーに参加した結果です。ただし、常に機能するため、ストラテジーが多ければ多いほど、グラフは滑らかになります。

無料のEAがたくさんある場合でも、個々のEAをポートフォリオに追加する前に慎重に分析すれば、そのような結果を得ることができます。印象的な結果を達成したい場合は、恐れずに有料EAを購入してください。それらの多くには実際に価格に見合う価値があります。また、無料のEAと有料のEAを効率的に組み合わせて、成功するポートフォリオを作成することもできます。


概要

この記事は、エキスパートアドバイザーを使用してマーケットで収入を得る方法についてのシンプルで理解しやすい推奨事項を提供していると思います。すべての詳細とアクションは非常に単純なルールにまとめることができ、それを使用して誰でも取引結果を改善できます。これらのルールは次のとおりです。

  • テストは多ければ多いほど良い
  • レビューは必ずしもパフォーマンスを反映しているわけではない(特にベストセラーに注意)
  • 実際のティックに基づくテストの方が望ましい(EAがティックで実行される場合は、遅延を伴うストレステストを実行してみる)
  • テストには固定ロットが必要(お金の管理を無効にする)
  • リアル口座の監視には、適切なalphabetaの値があり、バックテストと一致している必要
  • バーベースのEAはテストが高速で、ティックに依存しないため、可能であればそのようなEAを選択する
  • 利用可能な最大のサンプルでテストを実行する(サンプルが多いほど良い)
  • 利益率は妥当な範囲内であることが必要
  • 過剰適合を必ず確認する
  • 視覚的にテストできて原理を理解している場合は、動作原理を研究することが大きな利点になる
  • 多様化を適用し、利益を増やす(EAが多いほど良い)

基本を理解している場合は、他にも多くの詳細があります。


終わりに

この記事では、エキスパートアドバイザーを購入または使用するときにユーザーが抱える可能性のある主な問題に焦点を当てようとしました。わかりやすく簡単な方法で情報を提供しようとしました。市場から製品を選ぶのはそれほど難しいことではないことをご理解いただければ幸いです。ここで適切な製品を見つけるための鍵は、正しい検索にあります。

以下に添付されているEAをテストし、Report Managerを使用してさまざまなストラテジーを組み合わせ、マーケットで収益性の高いEAを見つけてポートフォリオに追加し、MetaTrader 4とMetaTrader 5のEAをテストして違いを確認します。間もなく、先物期間を確認できるようになります。EAは非常にシンプルで、学習に最適です。


MetaQuotes Ltdによってロシア語から翻訳されました。
元の記事: https://www.mql5.com/ru/articles/10212

添付されたファイル |
ExpertAdvisors.zip (1983.5 KB)
MetaTrader 5のWebSocket — WindowsAPIの使用 MetaTrader 5のWebSocket — WindowsAPIの使用
この記事では、WinHttp.dllを使用してMetaTrader 5プログラム用のWebSocketクライアントを作成します。クライアントは最終的にクラスとして実装され、Binary.com WebSocketAPIに対してもテストされます。
取引における数学:シャープレシオとソルティノレシオ 取引における数学:シャープレシオとソルティノレシオ
投資収益率は、投資家や初心者のトレーダーが取引効率の分析に使用する最も明白な指標です。プロのトレーダーは、シャープレシオやソルティノレシオなどのより信頼性の高いツールを使用して、ストラテジーを分析します。
アルゴリズム取引システムを設計する理由と方法を学ぶ アルゴリズム取引システムを設計する理由と方法を学ぶ
この記事では、MQL5のいくつかの基本に言及した後で、単純なアルゴリズム取引システムを設計することによって初心者がアルゴリズム取引システム(エキスパートアドバイザー)を設計するためのMQLの基本を示します。
DoEasyライブラリのグラフィックス(第93部): 複合グラフィカルオブジェクトを作成するための機能の準備 DoEasyライブラリのグラフィックス(第93部): 複合グラフィカルオブジェクトを作成するための機能の準備
本稿では、複合グラフィカルオブジェクトを作成するための機能の開発を始めます。 ライブラリが複合グラフィカルオブジェクトの作成をサポートし、それらのオブジェクトが任意の接続階層を持つことができるようになります。このようなオブジェクトの後続の実装に必要なすべてのクラスを準備します。