トレンドラインの傾斜角度の算出。 - ページ 21

 

トレーディング、自動売買システム、ストラテジーテストに関するフォーラム

MQL4、MQL5に関する初心者からの質問、アルゴリズムやコードに関するTips、ディスカッションなど。

ニコライ・セムコ さん 2020.10.26 00:34

スピードを恐れてはいけない。あくまで型変換のための条件付けです。
角度定義機能のバリエーションとして。

struct PointPriceTime
  {
   double            price;
   datetime          time;
                     PointPriceTime(double p, datetime t) { price=p; time=t; };
   void              Set(double p, datetime t){ price=p; time=t;};
                     PointPriceTime(PointPriceTime &p){ price=p.price; time=p.time; };
                     PointPriceTime() { price=0.0; time=0; };
  };

double Angle(PointPriceTime &p1,PointPriceTime &p2) // возвращает угол в градусах в приведенной системе координат price-price, где по оси X 
  {                                                 // расстояние между x1 и  x2  = N*_Point, где N - количество минутных баров во временном промежутке отрезка. 
   static int tf[9]= {PERIOD_M1,PERIOD_M5,PERIOD_M15,PERIOD_M30,PERIOD_H1,PERIOD_H4,PERIOD_D1,PERIOD_W1,PERIOD_MN1};
   int i=0;
   while(i<9 && SeriesInfoInteger(_Symbol,tf[i],SERIES_FIRSTDATE)>p1.time)
      i++;
   if(i==9)
     {
      Print("Время левой границы вне диапазона исторических данных");
      return DBL_MAX;
     }
   int bar1 = iBarShift(_Symbol,tf[i],p1.time);
   int bar2 = iBarShift(_Symbol,tf[i],p2.time);
   if(bar1==bar2)
      return 0.0;
   return atan((p2.price-p1.price)/((bar1-bar2)*PeriodSeconds(tf[i])*_Point/60))*180/M_PI;
  }

MT5以降、MT4の使用感がとにかくひどい。歴史へのアクセスは、どこかemasculatedなのです。ダニの話でもないんですけどね。




 
Nikolai Semko:

そうすると、その「角」はどこに行くのでしょうか?

 
Dmitry Fedoseev:

そして、その「角度」をどこに置くか?

1分間に1点持ってきて、その長さを見て結論を出す)

 
Valeriy Yastremskiy:

1分間に1点持ってきて、長さを見て結論を出す)

1分で何がわかるの?もうとっくに全てが1本あたりのポイントに還元されているのに、なぜどこかに持ち込むのか。

 
Dmitry Fedoseev:

そして、なぜ1分後なのか?もうとっくの昔に全てが小節あたりのポイントに誘導されているのに、なぜどこかに誘導するのか。

哲学的な質問です。異なるTFでのフラクタル性を考慮すると、私は時々バーで速度を推定しますが、それはちょっと面白いし、同じ分母に来る。あまり意味はありませんが、小さい時間軸の方が速度が速いのは明らかです。

確かに何か、どう表現したらいいのかわかりませんが、ダイナミクスの反映のようなものがありますね。ムーブメントの構造は同じです。

 
Valeriy Yastremskiy:

哲学的な質問です。そのため、"崖っぷち "と呼ばれることもあります,モンクレール ダウン 激安。私は価値を見いだせないが、小さなタイムフレームでの速度が高いことは明らかである。

確かに、力学の反映というか、なんというか、そういうものがありますね。動きの構造は同じです。

好きなように、好きなように妄想していいんです。トラックの運転手が1回の走行で何回小便に行ったかまで数えて、総走行距離に加算して、ああ、30メートル長くなったんだなあ、と感嘆することもできる。

 
Dmitry Fedoseev:

好きなことを妄想することができる。トラックの運転手が1回の走行で何回小便をしたか、それを総走行距離に加算して、ああ、30メートルも長くなった、と驚嘆することもできるのです。

私にはそんな直截的な思考はない。難しい道を行くまず測れるもの、計算できるものを見て、それで何ができるかを考える。

質問ですが、現在のバーから左側、通路の端を計算するのは簡単ですか?廊下は、安値と高値の差の相対的な変化で、安値と高値の速さを計算することができますが、難しいです。もっとシンプルにしたいですね。

極限を持つ分。

 

シンプリシティは相対的な概念です。どのような意味でのシンプルさですか?実装は最もシンプルで、最後の小節を循環させるだけです。

性能面で最もシンプルであれば...。が多いですね。この場合、左から右へと進み、各バーに1回ずつしか乗らないようにしよう。少しでも可能性があるのなら。少なくとも、人はそれを目指すべきでしょう。

 
Dmitry Fedoseev:

シンプリシティは相対的な概念です。どのような意味でシンプルなのか?実装は最もシンプルで、最後の小節を循環させるだけです。

性能面で最もシンプルであれば...。が多いですね。この場合、左から右へと進み、各バーに1回ずつしか乗らないようにしよう。少しでも可能性があるのなら。少なくとも、私たちはそれを目指すべきでしょう。

バーや極値でループさせることは明らかである。エクストリームデータは、バーナンバーとプライスで表示されます。コンディションに何を入れるかコリドーは幅や傾斜が異なる場合があります。もちろん、幅が狭ければ廊下に出ますが、デッドロック対策になります。ダイナミックなものは作れないしね。これは、現在のバーの回廊があることを理解するための最初の計算のためです。

パフォーマンスや最適化については、まだ考えていないんです。

 
Valeriy Yastremskiy:

バーやエクストリームを循環していることは明らかです。エクストリームデータは、バー番号と価格の形式です。コンディションに何を入れるかコリドーは幅や傾斜が異なる場合があります。もちろん、幅が狭ければ廊下に出ますが、デッドロック対策になります。ダイナミックなものは作れないしね。これは、現在のバーの回廊があることを理解するための最初の計算のためです。

パフォーマンスや最適化については、まだ考えていません。

トップとボトムの線形回帰を 計算することができます。境界線間の距離は、標準偏差を基準として測定する。

上下限のB係数の相関から、チャネルがどの程度フラットかを推定することができます。そのような精度が必要な場合。

また、水路の傾斜はB係数で決まります。

...

あるいは、単純に隣り合う2つのフラクタルの差の平均を計算することもできます。