Как найти угол наклона Линии в MQL5? - страница 2

 
jaffer wilson:

Я пробовал следующие методы и обнаружил, что результат отображается на изображении.

Код:

Скажите, пожалуйста, почему у меня такая разница. Как я могу избежать такой разницы в результате? Если разницы избежать невозможно, то какой метод мне следует использовать?

Пожалуйста, помогите мне с этим. А функция ChartTimePriceToXY () изменяет вывод, если я разверну экран до максимума. Так что это звучит немного ненадежно для расчета, но все же нужно знать лучший метод.


Правильней будет использовать термин "скорость изменения цены", т.к. одна из осей это время.

но если вы будете привязываться не к осям цены и времени, а X и Y(пиксели) координатам графика, то вполне возможно в текущий момент времени измерить угол.

 

Блин... Да было же обсуждение !

Наклон трендовой на графике измеряется в "пунктах в секунду". Или в "пунктах на бар". Это универсальная мера, не зависящая от масштаба. 

 
jaffer wilson:

   int x1;  
   int y1;
   int x2;  
   int y2;
   double l;
   double h;
   double otn;
   double rad;
   double grad;  
   
  
    

      ChartTimePriceToXY(0,0,iTime(NULL,0,1),iHigh(NULL,0,1),x1,y1);  
      ChartTimePriceToXY(0,0,iTime(NULL,0,0),iHigh(NULL,0,0),x2,y2);  
         
      l=x2-x1;
      h=y2-y1;
      
      otn=h/l;
      
      rad=MathArctan(otn);
      
      grad=rad*180/M_PI;         

      grad=360-grad;
 
multiplicator:

Код правильный, но совершенно бесполезный. Получишь произвольный угол. 

 
Georgiy Merts:

Код правильный, но совершенно бесполезный. Получишь произвольный угол. 

Нет, все норм, получишь угол между пунктами в временем, поэтому он будет не произвольный. Почему то забывают, что скорость может быть в одинаковых и не одинаковых измерениях, а угол в классическом понимании только в одинаковых измерениях по ординате и абсциссе.)

 
Valeriy Yastremskiy:

Нет, все норм, получишь угол между пунктами в временем, поэтому он будет не произвольный. Почему то забывают, что скорость может быть в одинаковых и не одинаковых измерениях, а угол в классическом понимании только в одинаковых измерениях по ординате и абсциссе.)

Произвольный, потому что зависит от масштаба графика, потянете мышкой график - изменился)

 
Nikolai Semko:

Да не надо ни к чему приводить ! Просто измерять угол в пунктах в секунду. Все ! Угол, измеренный таким образом, совершенно четкий, никак не зависит не только от метатрейдера, но даже от таймфрейма. Можно измерять в пунктах на бар - но тогда, от таймфрейма будет зависеть.

 
Georgiy Merts:

Да не надо ни к чему приводить ! Просто измерять угол в пунктах в секунду. Все ! Угол, измеренный таким образом, совершенно четкий, никак не зависит не только от метатрейдера, но даже от таймфрейма. Можно измерять в пунктах на бар - но тогда, от таймфрейма будет зависеть.

категорически соглашусь, особенно если ещё замутить учёт хотя бы обычных выходных, а ещё лучше любых праздников ;)

 
Vasiliy Pushkaryov:

Мне, для моих целей, помог этот индикатор. Взял нужное из исходного кода.

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

видел я его, там расчет через пиксели

теперь поиграйтесь масштабом цены (фиксируем левую кнопку мыши на шкале цены и таскаем)

что там с углом, понравилось?

угол не должен изменяться
 
Aleksey Mavrin:

Произвольный, потому что зависит от масштаба графика, потянете мышкой график - изменился)

Нет. Код вычисляет угол в одинаковых единицах. Единицы пунктов и единицы времени. Масштаб не будет влиять. Код посмотрите.
Причина обращения: