エキスパート: VR Breakdown level - 過去の高値または安値のブレイクアウトを利用したトレーディング戦略

 

VR Breakdown level - 過去の高値または安値のブレイクアウトを利用したトレーディング戦略:

過去の高値または安値の単純なブレイクアウトによるトレーディング戦略

VR Breakdown level - 過去の高値または安値のブレイクアウトを利用したトレーディング戦略

作者: Vladimir Pastushak

 

ノイズが多いし、コードもおかしなところがある。

例えば、ロット検証の部分。

// シンボルの最小ロットステップを取得する
  double stepvol = ::SymbolInfoDouble(_Symbol, SYMBOL_VOLUME_STEP);
  if(stepvol > 0)
    // 有効なステップの直近に丸められたロットサイズを計算する
    lt = stepvol * (int)(iLots / stepvol);
// 計算されたロットが最小許容ロットより小さいかどうかをチェックする。
  if(lt < ::SymbolInfoDouble(_Symbol, SYMBOL_VOLUME_MIN))
    lt = 0.0;  // 最小値を下回る場合は0に設定(無効)
// 初期化に成功した場合
  return(INIT_SUCCEEDED);
}

我々はロット0.0を得た。

そしてOnTick()に行き、ロット「0.0」でポジションを建てる。

if(trade.Buy(lt))

これは面白いアプローチだと思う。

--

十分な資金があるかどうかの簡単なチェックがない。このチェックがないと、デモ・モードではもちろん、テスターでもEAを動かすのが怖い。

--

なぜこのようなアプローチにしたのか、「他のみんなと同じように、どこにでもあるような」ものとは違うものにしたいという意図が理解できない --。

  if(new_time != old_time)
    // old_timeを更新し、trueを返す(新しいバーを検出)
    if((old_time = new_time) != NULL)
      return(true);

--

TPとSLのオーダー設定チェックが正しく実装されていない - 失敗した場合、ポジションはゼロ値でランダムに放置される。



 
Vitaly Muzichenko #:

ノイズが多く、コードが奇妙なところもある。

例えば、ロット検証の部分

ロット0.0

次にOnTick()でロット "0.0 "でポジションを建てる。

興味深いアプローチで、おそらく取引に利益をもたらすだろう。

--

十分な資金があるかどうかの簡単なチェックがない。このチェックがないと、デモ・モードでは言うまでもなく、テスターでもEAを実行するのが怖い。

--

私は、なぜこのようなアプローチをするのか、「他のみんなと同じように、どこでも」違うようにする意図が理解できない。

--

TPとSLのオーダー設定チェックが誤って実装されている - 失敗した場合、ポジションはゼロ値でランダムに放置される

初心者プログラマーが見慣れたコードを見ることができるように、コードの一部はヘルプを使って作られた。

そうすることで、コードが1行短くなり、私にとってはより便利で身近なものになり、さらに初心者はこの言語のさらなる可能性を知ることができる。

if(new_time != old_time)
    // old_timeを更新し、trueを返す(新しいバーを検出)
    if((old_time = new_time) != NULL)
      return(true);

и

if(new_time != old_time)
    // old_timeを更新し、trueを返す(新しいバーを検出)
      {
       old_time = new_time;
       return(true);
      }
 
Vitaly Muzichenko #:

TP注文とSL注文を設定するためのチェックが正しく実装されていません。

これはどうすればいいのでしょうか?

私の構想では、どのような場合でもTPとSLを 設定し、距離が許容される最小値より小さいというエラーが出た場合=許容される最小値に設定 することです

現在の形では、注文は設定されず、ポジションは無作為に放棄されたままです。

 
こんにちは。MT4版のEAではコードが修正されたという投稿を見ましたが、MT5版ではコードは修正されているのでしょうか?
 

こんにちは。 このExpert Advisorは、価格が動いていて平坦でない場合、低い時間枠(設定で0-3分)でうまく取引しますが、高い時間枠ではグリッドをタイムリーに開くことができず、ドローダウンになります。

デモで検証してみたところ、その中でtrawl-stopを挿入する必要があり、外部trawlを使用することが可能で、注文のグリッドの開始の距離を設定で追加するように修正する必要があります。外部trawlを使用すると、距離のストップなしでプラスで取引され(owlの設定でtrawlなしでは、開始時の注文にストップなしで利食いすることはできません)、フラットの注文の開始の距離が小さいとドローダウンになります。

ロックしてドローダウンを少なくするために、反対注文の建玉数が偏っているためにエラーが発生しているようである(直前のローソク足の水準をブレイクしたときの建玉と、一定距離経過後の建玉は別物であり、長い分足のローソク足が撃ち抜かれて利確やロックのための注文が建たなくなることもある)、このような注文数が特別に偏っているのであれば、より正確なエントリーを行い、トータルの利益を確定した上でトレンドインジケーターに従って最初の注文を建玉し、全ポジットのグリッドを決済する。より正確な注文の開始と正確なニッシングにより、ストップなしでドローダウンしないことが望ましい。

 
つまり、注文がクローズされることなく、グリッドが成長し、最終的にドローダウンになります。