计算趋势线的斜率角。 - 页 20

 
Dmitry:

时间在流逝,但任务却没有改变。我面临着计算趋势斜率角的需要,并准备根据坐标点开始计算,但幸运的是,我看到了这篇文章。我完全没有考虑到,如果我们参照坐标,在放大和缩小时,角度会发生变化。

这里只有一个解决办法,我们必须忘记经典意义上的角度度。理论上,我们可以构建一个三角形,其中一个cathetus是条,另一个cathetus是点,计算这个三角形的角度。你会得到斜率角的技术值,当你改变比例时,它不会改变,但你会在图表上直观地看到角度有很大不同,因为我们有不同类型 的导管数据

在我看来,最好是使用当时的价格变化百分比而不是度数。毕竟,重要的是你据以建立战略的数字。

https://www.mql5.com/ru/code/28678

相位的计算单位是度,取值范围是0到360,用绿线5表示(从阵列4读出)。

计数器相位也是以度数计算的,取值范围从-360到0,由第6条红线表示(从数组5读取)。 在计算中,使用计数器相位值与360相加更方便(惯例是将其提高到相位水平)。


Pan PrizMA CD Phase Sin leverage_72
Pan PrizMA CD Phase Sin leverage_72
  • www.mql5.com
Этот индикатор построен на базе индикатора  PanPrizMA Sin leverage 72  , особенности которого позволяют  посчитать фазу и амплитуду. Иногда это может быть  полезно. Фаза рассчитывается в градусах, принимает значения от 0 до 360 и отображена 5-ой, зеленой линией (снимается с массива 4). Противофаза так же  рассчитывается в градусах, принимает...
 
Dmitry:

时间在流逝,但任务却没有改变。我面临着计算趋势的斜率角的需要,并准备根据坐标点开始计算,但幸运的是我看到了这篇文章。我没有考虑到,如果我们指的是坐标,缩放时角度会发生变化。

这里只有一个解决办法,我们必须忘记经典意义上的角度度。理论上,我们可以构建一个三角形,其中一个cathetus是条,另一个cathetus是点,计算这个三角形的角度。你会得到斜率角的技术值,当你改变比例时,它不会改变,但你会在图表上直观地看到角度有很大不同,因为我们有不同类型 的导管数据

在我看来,最好是使用当时的价格变化百分比而不是度数。毕竟,重要的是你据以建立战略的数字。

我的观点并没有改变。趋势线斜率的唯一正确单位是每个时间单位的价格。斜率角度表征了线条在屏幕上出现的顺序,而根本不是趋势的大小。

 
Georgiy Merts:

我的观点并没有改变。趋势线斜率的唯一正确单位是每单位时间的价格。斜率角度描述了线条在屏幕上出现的顺序,而根本不是趋势的大小。

我同意。只有 "唯一正确的 "这句话是过于绝对的。它是 "斜率 "的单位,具有普遍接受的、对所有相同的含义,即沿趋势线移动时的课程变化率。很明显,变化率与趋势线的斜率角有关,这与任何函数y(x)的第一个导数与图形的斜率角有关的方式相同。如果x值与图形上的y值相同,则角度等于arctg(dy/dx)。如果它们不同,用量角器测量的角度也会不同。

斜率角的类似物不仅可以被认为是航道的变化率,即航道在天文时间上的导数,而且还可以被认为是航道从刻度到刻度的平均增量。代替天文时间,使用 "适当",或 "操作 "时间--刻度的数字。

 
Georgiy Merts:

我的观点并没有改变。趋势线斜率的唯一正确单位是每单位时间的价格。斜率角度表征了线条显示的顺序,而根本不是趋势的大小。

+++ 科学方法的规则。

所有其他的起伏之美都是为营销人员准备的。

 
Daniil Kurmyshev:

我同意你的观点,我不喜欢这样,但是当我最初创建这个函数时,我检查了几种不同的方式,然后我没有改变它),关于像素,我完全同意你的观点,对我个人来说,最理想的角度计算方式是这样的,这是我的函数。

//-----------------------------------------------------------------------------------

// xAnglePixels /////////////////////////////////////////////////////////////////////

//-----------------------------------------------------------------------------------

double xAnglePixels(datetime x1,double y1,datetime x2,double y2) // x1,x2 Time[] - y1,y2

{

如果(x1==0 || x2==0 || y1==y2){返回(0);}。

//---

int x[2],y[2];

ChartTimePriceToXY(0,0,x1,y1,x[0],y[0])。

ChartTimePriceToXY(0,0,x2,y2,x[1],y[1]) 。

//---

if(x[1]<x[0]){return(-1000);}

//---

double x1x2=MathAbs(x[0]-x[1]);

double y1y2=MathAbs(y[0]-y[1]);

//---

双theta。

if(x1x2!=0){theta=MathArctan(y1y2/x1x2)*(180/3.1415926535);}

else{theta=90;}

如果(y2<y1){theta=NormalizeDouble(theta*(-1),2);}else{theta=NormalizeDouble(theta,2);}。

return(theta)。

}

//---------------------------------------------------------------------------------

p.s. 在函数if(x[1]<x[0]){return(-1000);}可以去掉,因为我自己用了它),更具体地说,如果用户 对象的 两个 交换了位置,就需要它

//-----------------

顺便说一下,对于图表上的铭文,我使用它。 早些时候,我在分支中发布了这个指标的工作实例,在那里你可以看到它。

//-----------------

非常感谢你和尊重)

需要这个功能,开始测试你的函数,发现结果是

视乎规模而定...

 
角落就是时间
 
podotr:
角度就是时间

是的。

时间是一个角度

 
Denis Sartakov:

是的。

时间是一个角度

而且你不能吃一个角 :-)可以燃烧的角落

 
角度就是速度,速度就是没有休息。所有运行,运行...
 
现在是时候有一个角落了