English Русский 中文 Español Deutsch Português
30のインジケーターとオシレーターの比較分析

30のインジケーターとオシレーターの比較分析

MetaTrader 4トレーディング | 16 3月 2016, 12:10
903 0
Александр
Александр

はじめに

昨今開発されるインジケーターとオシレーターの豊富さは、その内最も効果的なものを選ぶことへの障害につながっている。よく初心者のトレーダーが最初に利用できる分析・予測ツールの多さに直面し、履歴データやデモアカウントでテストを始めます。その後、特定の状況におけるそのインジケーターの効果や使用性についていくつか結論を下します。


しかしながら、そのような推定は、たくさんのパラメーター(シンボル、チャートの期間、ボラティリティなど)、したがて、分析される情報の量のせいで常に客観的ではありません。特定のインジケーターとオシレーターに関するより信頼できる結論は、それらの比較分析を行った後、下すことができます。


実際、インジケーターとオシレーターの比較分析は、ある価格チャートに縛り付けた同時の考察なしでは不可能です。しかし、チャートに10個もの異なるインジケーターをつけると、オーバーロードです。取得された数字は、複雑で、分析には適さないものになります。この記事で紹介されるエキスパートアドバイザーは、この問題を解決し、比較分析の実行をより便利にします。


エキスパートアドバイザー

このEAは、実際のトレーディングの実行に意図されておらず、従って、資産管理ブロックを持ちません。トレードの実行ブロックはとてもシンプルな形で実装されています。このエキスパートアドバイザーの主なタスクは、価格チャートと接続して異なるインジケーターからのシグナルの有無に関する情報の提供です。


そのプログラムは、以下のインジケーターとオシレーターを分析します;

  1. Acceleration/Deceleration — АС
  2. Accumulation/Distribution - A/D
  3. Alligator & Fractals
  4. Gator Oscillator
  5. Average Directional Movement Index - ADX
  6. Average True Range - ATR
  7. Awesome Oscillator
  8. Bears Power
  9. Bollinger Bands
  10. Bulls Power
  11. Commodity Channel Index
  12. DeMarker
  13. Envelopes
  14. Force Index
  15. Ichimoku Kinko Hyo (1)
  16. Ichimoku Kinko Hyo (2)
  17. Ichimoku Kinko Hyo (3)
  18. Money Flow Index – MFI
  19. Moving Average
  20. MACD (1)
  21. MACD (2)
  22. Moving Average of Oscillator (Гистограмма MACD) (1)
  23. Moving Average of Oscillator (Гистограмма MACD) (2)
  24. Parabolic SAR
  25. RSI
  26. RVI
  27. Standard Deviation
  28. Stochastic Oscillator (1)
  29. Stochastic Oscillator (2)
  30. Williams Percent Range

このタスクの実装のため、"-1"、"0"、"1"からなる数字の列がチャートに描かれています。それぞれの数字の行は、特定のインジケーターやオシレーターに属しています。(選択されたチャートの期間に応じて)その数字のカラムは、毎回形成されます。"-1"の出現は、特定のインジケーター(オシレーター)による売りシグナルの存在を示し;”1”の出現は、買いシグナルの存在、"0"は、何もシグナルがないことを意味します。図1、は、プログラムの処理結果を示します。

図2は、その数列に基づいたRVIの処理の分析を示しています。メインの線がシグナル線の上を通過した際、26行にて”1”が記録され(インジケーターが買いを推奨する)、シグナル線がメインの線の上にある際、"-1"が記録されています(売りシグナル)インジケーターの特徴により、この行は”0”を含んでいません。


インジケーターとオシレーターの特徴のため、その数列に2種類のインデックスを見つけることができます:継続的に重要な0にはならないフラッグと、0を持つことができ、特定の時間にのみをシグナルを生み出すフラッグ(Parabolic SARなど)です。図3に示されています。


取得した情報を分析し、以下の方法でインジケーターのパッケージを作成することが推奨されています。まず、トレンドのあるチャートを選択してください。そして、トレード期間を特定します。そのようなトレンドの初めは、選択されたトレンドの前やトレンドが生まれる前は安定した期間になります;その期間の終わりは、トレードが利益を生む最後の瞬間です。従って、予想した最後のインジケーターは考慮されません。図4にて、そのような期間が緑の線で示されています。その後、インジケーター(オシレーター)による情報がこの期間内で分析されます:トレンドを正しく示すすべてのインジケーターが取得され、その他は除外されます。そして、そのパッケージはその他の期間での類似した分析により拡張されるか、縮小され、結果として最終的なパッケージが完成されます。

そのプログラムは、形成されたパッケージのテストを提供します。このため、その戦略の一致する行にて、ブロックの処理が売り(買い)の最終的な決定がなされる際に基づく条件を列挙します。

それぞれの特定のインジケーターに生み出されたシグナルと価格の行動の組み合わせられた分析が、さらなるインジケーターのパッケージの形成のために最も効果的なものを選び出します。


アルゴリズム

最初の段階にて、 "flags" (-1, 0, 1)の値はそれぞれのインジケーター(オシレーター)において定義されます。あるインジケーター(例えば、MACD)がシグナルを異なる方法で生成したと想定します。そのプログラムは、その定義原則の詳細を含んでいます。例えば、オシレーター”Williams Percent Range”の分析は以下のように実装されます:

//30. Williams Percent Range
//Buy: crossing -80 upwards
//Sell: crossing -20 downwards
if (iWPR(NULL,piwpr,piwprbar,1)<-80&&iWPR(NULL,piwpr,piwprbar,0)>=-80)
{f30=1;}
if (iWPR(NULL,piwpr,piwprbar,1)>-20&&iWPR(NULL,piwpr,piwprbar,0)<=-20)
{f30=-1;}

その後、'Text'型のユニークなオブジェクトがフラッグの取得された数値から形成され、表示されます。(オブジェクト名の複製を避ける為、現在の時間の値が使用されています)

timeident=TimeCurrent(); //Time to form the unique object name
for (i=0;i<=29;i++) //Loop for displaying values
 
//Forming unique object names
{ident=DoubleToStr(30-i,0)+"   "+DoubleToStr(timeident,0); 
 
//Creating objects, indicating their location
ObjectCreate(ident,OBJ_TEXT,0,timeident,WindowPriceMin()+Point*5*(i+1));
 
info=DoubleToStr(f[30-i],0); //Forming a text line to be displayed
ObjectSetText(ident,info,6,"Arial", Black);} //Describing the format of displaying and displaying

作成されたパッケージをチェックするために、そのプログラムは「戦略を処理し、Main Flagを配置するブロック」を含みます。このブロックは、EAが買う必要のある(Main Flagが1の場合)、また得る必要のある条件(Main Flagが-1の場合)を含んでいます。もし記載された条件が満たされないのであれば、Main Flagは0で止まり、トレードは実行されません。EAは、クロージングポジションのブロックを含んでいます。(コメントされています)

if(f8==1&&f21==1) //Set of conditions, providing which Buy is executed
flag=1;
if(f8==-1&&f21==-1) //Set of conditions, providing which Sell is executed
flag=-1;

それぞれのインジケーターのパラメーターは変数の形で記載され、自動的な最適化を可能にします。


まとめ

すでに述べた通り、提供されているエキスパートアドバイザーはすぐ使用できる自動トレーディングシステムではありません。その主なタスクは、さらなるパッケージの作成のためのインジケーター、オシレーターの比較分析を行うことです。そのEAは、インジケータから生成されるシグナルを示し、トレーダーのデスクトップに過度な負荷をかけず、その分析を便利にしています。


EAの柔軟性は、以下の通りです;新しいインジケーターは、その数列に組み込め、作成されたパッケージは履歴データでテストできます。

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

添付されたファイル |
Matrix.mq4 (32.39 KB)
拡張MACD分析に基づいたトレーダーアシスタント 拡張MACD分析に基づいたトレーダーアシスタント
トレーダーアシスタントが、いかなるタイムフレームでの実際のトレーディングの最後の3つのバーにおいて、MACDステータスの拡張分析に基づいて、オープンポジションの判断を手伝います。バックテスティングにも使用できます。
テストビジュアライゼーション:口座状況チャート テストビジュアライゼーション:口座状況チャート
残高を表示し、チャートでテストプロセスを楽しみましょう - 必要な情報はすべて常に表示されています!
注文の管理ーこれは簡単です 注文の管理ーこれは簡単です
この記事では、オープンポジションや指値注文の様々な管理方法を紹介し、エキスパートアドバイザの作成の簡素化について記述しています。
マーチンゲールとは何で、試用するのは妥当なのか? マーチンゲールとは何で、試用するのは妥当なのか?
この記事は、マーチンゲールシステムを詳しく説明すると同時に、「マーチンゲールを試用することは妥当なのか?」という質問に答えるために必要な正確な数学的計算を紹介します。