インディケータ: ハーモニックパターンファインダー・バージョン2 - ページ 5

 

デビッド、

私はあなたのピュアリストPRZのアイデアを試してみました。これは、投影点Dを最初のレシオにしたり、PRZストップを最後のレシオにしたりはしない。その代わりに、ホリストのためだけに存在し、ピュアリストのために存在しない、つまりPRZのすべての比率を含まないパターンをフィルタリングします。

               //--- ピュアリストのPRZは、正確な比率を含んでいなければならない。
               if(true)
                 {
                  if(cd2bcConstraint)
                    {
                     bool contained;
                     if(startsInTrough)
                       {
                        double nearRatio=C-pattern.cd2bc_min*BC;
                        double farRatio=C-pattern.cd2bc_max*BC;
                        contained=nearD>=farRatio && nearRatio>=farD;
                       }
                     else
                       {
                        double nearRatio=C+pattern.cd2bc_min*BC;
                        double farRatio=C+pattern.cd2bc_max*BC;
                        contained=nearD<=farRatio && nearRatio<=farD;
                       }
                     if(!contained)
                        continue;
                    }
                  if(ad2xaConstraint)
                    {
                     bool contained;
                     if(startsInTrough)
                       {
                        double nearRatio=A-pattern.ad2xa_min*XA;
                        double farRatio=A-pattern.ad2xa_max*XA;
                        contained=nearD>=farRatio && nearRatio>=farD;
                       }
                     else
                       {
                        double nearRatio=A+pattern.ad2xa_min*XA;
                        double farRatio=A+pattern.ad2xa_max*XA;
                        contained=nearD<=farRatio && nearRatio<=farD;
                       }
                     if(!contained)
                        continue;
                    }
                  if(cd2xcConstraint)
                    {
                     bool contained;
                     if(startsInTrough)
                       {
                        double nearRatio=C-pattern.cd2xc_min*XC;
                        double farRatio=C-pattern.cd2xc_max*XC;
                        contained=nearD>=farRatio && nearRatio>=farD;
                       }
                     else
                       {
                        double nearRatio=C+pattern.cd2xc_min*XC;
                        double farRatio=C+pattern.cd2xc_max*XC;
                        contained=nearD<=farRatio && nearRatio<=farD;
                       }
                     if(!contained)
                        continue;
                    }
                  if(cd2abConstraint)
                    {
                     bool contained;
                     if(startsInTrough)
                       {
                        double nearRatio=C-pattern.cd2ab_min*AB;
                        double farRatio=C-pattern.cd2ab_max*AB;
                        contained=nearD>=farRatio && nearRatio>=farD;
                       }
                     else
                       {
                        double nearRatio=C+pattern.cd2ab_min*AB;
                        double farRatio=C+pattern.cd2ab_max*AB;
                        contained=nearD<=farRatio && nearRatio<=farD;
                       }
                     if(!contained)
                        continue;
                    }
                 }

設定でピュリストPRZモードのオン/オフを切り替えたい場合は、上記2行目の括弧内の "true "を "InpPuristPRZ "のような変数に置き換え、その変数を入力として宣言することもできる。区間比率は、単なるオーバーラップ、あるいは(単なるたるみではなく)区間の一部がPRZ内にあることでチェックさ れる。

ありがとう、

アンドレ

 

こんにちは、アンドレ、

ファイルをダウンロードし、"Include "フォルダにalexstal_outsidebarをインストールしました。その後、alexstal_ZZprof、swingchart、fastzz、Harmonic Pattern Finder V2を「MQL5IndicatorsExample」フォルダに保存しました。

プラットフォームを閉じて、もう一度開いてから、ハーモニック・パターン・ファインダーをチャートにドラッグしました。Experts タブで以下のメッセージが表示されました:


このインディケータはEUとXAGチャートにロードされています。

どこで間違ったのか、アドバイスをお願いします。


よろしくお願いします。

 
Eckbert Gevers:

こんにちは、アンドレ、

ファイルをダウンロードし、"Include "フォルダにalexstal_outsidebarをインストールしました。その後、alexstal_ZZprof、swingchart、fastzz、Harmonic Pattern Finder V2を「MQL5IndicatorsExample」フォルダに保存しました。

プラットフォームを閉じて、もう一度開いてから、ハーモニック・パターン・ファインダーをチャートにドラッグしました。Experts タブで以下のメッセージが表示されました:


このインディケータはEUとXAGチャートにロードされています。

どこで間違ったのか、アドバイスをお願いします。


よろしくお願いします。

こんにちは、アンドレ。新しいダウンロード・フォルダを作成して、すべてOKです。

ありがとうございます。

 

こんにちは、アンドレ、

このインディケータをEAに使用することは可能ですか?

icustomをすべての入力パラメータで使用していますが、ピークと谷を検出するために必要なバッファにアクセスできません。

最も重要な のは、A,B,C,Dのポイントを持つバッファです。

例のあるEAはありますか?

 
João José:

こんにちは、アンドレ、

このインディケータをEAに使用することは可能ですか?

icustomをすべての入力パラメータで使用していますが、ピークと谷を検出するために必要なバッファにアクセスできません。

一番重要なのは、A,B,C,Dのバッファです。

例題のあるEAはありますか?

こんにちは、ジョアン、

このコードをEAに使用することは可能ですが、チャートに描画されたオブジェクトを解釈するEAを作成しない限り、修正が必要になります。私はEAを見たことがないので例を挙げることはできませんが、私の意見を述べることはできます。

まず、バッファのコピーを使ったアプローチを考えているのであれば、ICustom()で共有できるのはダブル・タイピングされた配列だけであることに注意してください。つまり、ポイントごとに1つの配列が必要で、パターンごとにその配列が必要になります。つまり、AB=CDパターンのためだけに4*18=72個のバッファが必要になり、投影パターンとアクティブパターンの両方にはその2倍のバッファが必要になります。古い」パターンが受信EAを混乱させるのを避けるために、これらのアレイを継続的に再処理することは言うまでもないし、PRZストップのように失われる情報もある(しかし、これはパターンごとにさらに別のバッファを用意すれば解決できる)。512の共有バッファというプラットフォームの制限を守りながら行うことは可能かもしれませんが、多くの賢明なプログラマーが行うことではありません。

おそらく、より良いアプローチは、iCustom() の制限を避けるために、インジケータコードの一部を EA に直接組み込むことでしょう。こうすることで、マッチした各パターンと予測されたパターンのメモリーを簡単な方法で委譲することができ、また、パターンが発展していくのをよりよく追跡することができます。言うまでもなく、そのためには、コードのパターンマッチングセクション(408行目の「//---メインループ」から始まる)を、パターンを描画するのではなく、EAの他の部分にそれらの情報を提供するような方法でリファクタリングする必要があります。これは、特定の描画機能を 削除したり、重複を削除するためのオーバーヘッドを維持したりするような詳細を含むかもしれませんが、コード内でパターンを見つけるためにクエリできる基本的な「マッチャー」を持つために必要な主な変更であり、その後、取引注文を送信することができます。

 

とても素晴らしいインジケーター...ウェブ上で最高だと思う。このインジケーターにエリオット波動 パターンを実装することを検討しましたか?予測で本当に面白くなるかもしれない...。

 
Andre Enger:

こんにちは、ジョアン、

このコードをEAで使用することは可能ですが、チャートに描画されたオブジェクトを解釈するEAを作成しない限り、修正が必要になります。私はこのコードを使ったEAを見たことがないので例を挙げることはできませんが、私の意見を述べることはできます。

まず、バッファのコピーを使ったアプローチを考えている場合、ICustom()を使って共有できるのはダブル・タイピングされた配列だけであることに注意してください。つまり、ポイントごとに1つの配列が必要で、パターンごとにその配列が必要になります。つまり、AB=CDパターンのためだけに4*18=72個のバッファが必要になり、投影パターンとアクティブパターンの両方にはその2倍のバッファが必要になります。古い」パターンが受信EAを混乱させるのを避けるために、これらのアレイを継続的に再処理することは言うまでもないし、PRZストップのように失われる情報もある(しかし、これはパターンごとにさらに別のバッファを用意すれば解決できる)。512の共有バッファというプラットフォームの制限を守りながら行うことは可能かもしれませんが、多くの賢明なプログラマーが行うことではありません。

おそらく、より良いアプローチは、iCustom() の制限を避けるために、インジケータコードの一部を EA に直接組み込むことでしょう。こうすることで、マッチした各パターンと予測されたパターンのメモリーを簡単な方法で委譲することができ、また、パターンが発展していくのをよりよく追跡することができます。言うまでもなく、そのためには、コードのパターンマッチングセクション(408行目の「//---メインループ」から始まる)を、パターンを描画しに行くのではなく、EAの他の部分にそれらの情報を提供するような方法でリファクタリングする必要があります。これは、特定の描画機能を 削除したり、重複を削除するためのオーバーヘッドを維持したりするようないくつかの詳細を含むかもしれませんが、コード内でパターンを見つけるためにクエリできる基本的な「マッチャー」を持つために必要な主な変更であり、その後、取引注文を送信することができます。


ありがとうございます。2つ目の方法を試してみます。
 
João José:

ありがとう、2つ目の方法を試してみるよ(そうだね、AB=CDパターンのD点だけになるだろうね)。

アンドレ

最初のアプローチで行くことにしました。

DisplayPattern関数を 呼び出した直後に、A、B、C、D、bull/bearを格納する9つの新しいバッファを追加しました。そしてデフォルトのためにさらにいくつかの調整を加えた。

すでに動作しています。

 
danizani95:

非常に素晴らしいインジケーター...ウェブ上で最高だと思う。このインジケーターにエリオット波動パターンを実装することを検討しましたか?プロジェクションを使えば、本当に面白いものになると思うのですが・・・。



私の知る限り、エリオット波動はそれ自体が調和的な波動ではなく、より緩やかに定義された波動構造の理論です。エリオット波動は、2つのより低いボトム(2つ目のボトムで買い)の前に、3つのより高いトップが連続し、これがどのように発生するかについて、さまざまな構成と分類があります。テクニカルアナリストの中には、ハーモニクスとエリオット波動の関係は、X-Aセグメントがエリオットインパルスフェーズに対応し、ABCD部分がエリオット修正に対応すると信じている人もいるようです。したがって、ガートレーやバットのような異なるハーモニックパターンは、同じエリオット現象の異なる現れです。

エリオット波動マーカーをインディケータに追加しても、パターン自体が完全なエリオット波動であるため、あまり意味がありません。しかし、新しいバージョンでは、パターン・ファインダーにユーザー定義のフィル ターを簡単に追加できるようにするフィルタリング機構を考えています。そうすれば、XA足により細かいスケールのインパルス構造がないハーモニック・パターンを除去する「エリオット波動フィルター」を追加するのも簡単です。これは、例えば、低い時間枠のジグザグが、3つの連続した高い頂点を持つかどうかをチェックすることによって検出することができる。

Regards

 
João José:

アンドレ

最初のアプローチで行くことにした。

DisplayPattern関数を 呼び出した直後に、A、B、C、D、bull/bearを格納する9つの新しいバッファを追加しました。そしてデフォルトのためにさらにいくつかの調整を加えた。

すでに動いている。

素晴らしい!