ペアトレーディングに不慣れな方は、まず文献セクションで情報を確認してください。簡単に説明すると、以下のようなアイデアです:
似たような2つの資産のチャートを重ねて比較すると、一定の距離で乖離し、再び収束する様子が見えます。この現象は何度も繰り返されます。それを利用しない手はありませんよね?

このエキスパートアドバイザー(EA)は、EURUSDのH1チャートに設定されています。デフォルトの相関ペアとしてGBPUSDが選ばれています(Symbol2変数または「間接シンボル」)。EAはその計画に従って市場を追跡しますが、合成とは混同しないでください!合成分析は、常に平均化を行い両資産を引っ張るものです。この場合、チャートは単に重ね合わせられています。しかし、重ねる前に、私のEAは無制限の起点を定義します。そこから、2つのペアが初めて交差したと仮定します。その後、Symbol2をスケールして、価格変動の範囲がEAを設置したシンボルの範囲とほぼ同じになるようにします。Range(「トレーニングフィールド」)キャンドルの統計が収集され、この期間の最大シンボル乖離が見つかります。その後、最大乖離からCorrectLimit(「シグナル境界の修正」)による乖離が発生した場合、新しいポジションが開かれます。より正確には、各シンボルごとに1つのポジションのペアが開かれます。シンボルがさらに乖離し続ける場合、同じポイント数の後に2つ目の取引ペアが開かれます。このような取引の最大数は、MaxDeals変数(「最大取引数」)によって制限されます。
CorrectDist変数(「分離の検索の係数長」)は、より深い分析のためのトレーニング期間の値を変更します。
このEAは、直接および逆相関を持つ2つの通貨ペアで取引します。そのためにCorrelationスイッチ(「相関係数」)が使用されます。ただし、2つのペアの乖離を分析して1ペアで取引することもできます。たとえば、EURUSDとGBPUSDの2ペアで取引する代わりにEURGBPで取引できます。これを行うには、Cross変数(「どのペアを2つの代わりに取引するか(クロス)」)に「EURGBP」と入力します。GBPEURで取引する場合は、CrossType(「直接クロスレート」)変数に対してfalse値を指定してください。
最近のトレーニングで獲得した知識の有効期限が切れた後は、Optimum(「再トレーニングの間隔」)キャンドルを使用して再トレーニングが行われます。
このEAには、すべての取引を閉じるための2つのシグナルがあります。シンボルが最大乖離からCloseCorr(「乖離の縮小時にクローズ」)して戻る場合、またはオープンポジションでProfit%に達する場合です。
mqhインクルードファイルには、EAの正しい動作のための補助関数が含まれています。
MyMQL_v2.1.mqh - MQL4プログラミング言語からMQL5へのEA適応のための関数;
PrintLog.mqh - EAテスト時にFilesフォルダにequity.csvテーブルを作成するために必要です。このテーブルには、口座の資産変動履歴が含まれています。この情報は、テスト中のドローダウンの詳細な分析に使用できます。また、さまざまな取引システムの資産変動グラフを重ねて表示することも可能です。
EURUSD H1でオープンプライスによる11年間のデフォルトパラメータでのテスト:

文献:
- ペアトレーディング - Wikipedia
- http://mts-trader.ru/2011/05/30/parnyiy-treyding/ (ロシア語)
- http://forexsystems.ru/ruchnye-torgovye-strategii-i-taktiki/65087-parnyi-treiding-graal%60-est%60.html (ロシア語)
- strategii_parnogo_treydinga.zipアーカイブに添付された雑誌 (ロシア語)
変更履歴:
2012年9月8日 - 間接シンボルの履歴における「穴」に関するコメントを考慮して、EAコードを改善しました。