こんにちは、
これをダウンロードできますか?リンクが見つからないのですが。
よろしくお願いします
ハリー
速度検出器にアルゴリズム上の問題があります。
ArraySort(d);
買い方向では正常に動作していますが、
しかし、マイナス方向の動きについてはソートが正しく行われていないようです。
これを個別に処理するか、インデックスの計算式を変更する必要があります(売り方向のマイナス値のソートについて!!!)
if(delta>0)
{
for(int i = 1; i < VelocityHistoryBars; i++)
d[i - 1] = velHistory[0] - velHistory[i];
ArraySort(d);
}
if(delta<0)
{
for(int i = 1; i < VelocityHistoryBars; i++)
d[i - 1] = velHistory[i] - velHistory[0];
ArraySort(d);
}
int idx= (int)MathRound((VelocityPctile / 100.0) * (ArraySize(d) - 1));
double velTh = d[ArraySize(d) - 1 - idx];
bool okVel = MathAbs(delta) > velTh;
ピボットラインの引き方にはいくつかのバリエーションがあります。
これがより良い方法かどうかは分かりません。
(ピボット価格を上回った場合、上昇を待ちます……)
bool okZone = false;
if((delta > 0 ) && (priceNow > pivot)) okZone = true;
if((delta < 0 ) && (priceNow < pivot)) okZone = true;
bool okZone = false;
if((delta > 0 ) && (priceNow > pivot) && (priceNow < ( pivot + ZONE_Points * _Point))) okZone = true;
if((delta < 0 ) && (priceNow < pivot) && (priceNow > ( pivot - ZONE_Points * _Point))) okZone = true;
速度検出器における「正しい方向」のバーの評価:
緑色/赤色のバーをパーセンテージでフィルタリングできます。
(負の方向は正の値に反転されています)
0.8 = 80%のバーが正しい方向でした。
double goodBars = 1;
for(int i=ArraySize(d) - 1; i>=0; i--)
if(d[i] < 0) goodBars=1 - (i+1.0)/ArraySize(d);
- 無料取引アプリ
- 8千を超えるシグナルをコピー
- 金融ニュースで金融マーケットを探索
新しい記事「プライスアクション分析ツールキットの開発(第29回):Boom & Crash Interceptor EA」はパブリッシュされました:
Boom & Crash Interceptor EAは、このような厳格な考え方を市場データ分析に応用しています。 ローリング方式の価格変動速度ウィンドウにより、現在の価格変動が最近の値動きを大きく上回っているかを判定し、ATRに基づくボラティリティ急増フィルタによって市場変動が実際に拡大していることを確認します。さらに、移動平均線によるトレンドフィルタが方向性を検証します。 加えて、オプションのピボットゾーンフィルタやセッション時間フィルタによって、流動性の低い時間帯に発生する不要なシグナルを抑制します。
これらすべての条件が満たされたときのみ、EAはチャート上に「BOOM」または「CRASH」の矢印を表示し、ユーザーが指定した色や表示位置を適用するとともに、CSVファイルへイベントを記録します。これにより、トレーダーは確率の高いトレードチャンスだけに集中することができます。 本記事では、それぞれの検出レイヤーの調整方法と、このMQL5ツールを堅牢なシグナル生成コンポーネントとしてトレードシステムへ組み込む方法を紹介します。
作者: Christian Benjamin