Индикатор "Тангенс" для идентификации тренда и флэтта - страница 2

 
Yousufkhodja Sultonov:

Сейчас сделаю, пока, только так - путем подбора угла (есть ещё через ряды, скоро покажу):

SIN(X*3,14159265/180)/COS(X*3,14159265/180) = X

Задавая X в градусах, добиваемся совпадения левой и правой частей уравнения с нужной точностью. 

Зачем такие сложности? В математических функциях есть MathArctan() который переводит полученный тангенс в радианы, а 1 радиан = 57,29577951308233 градусов.

MathArctan(1) = 0,7853981633974483 ==>> 0,7853981633974483*57,29577951308233 = 45.
 
Alexey Viktorov:

Зачем такие сложности? В математических функциях есть MathArctan() который переводит полученный тангенс в радианы, а 1 радиан = 57,29577951308233 градусов.

MathArctan(1) = 0,7853981633974483 ==>> 0,7853981633974483*57,29577951308233 = 45.

Это и есть готовая программа, действуйте по ней. Просто, хочу сказать, что, легких способов определения угла, пока, нет. Кстати, я допустил ошибку, правильно так:

SIN(X*3,14159265/180)/COS(X*3,14159265/180) = tgX

 SIN(45*3,14159265/180)/COS(45*3,14159265/180) = tgX

 SIN(X*3,14159265/180)/COS(X*3,14159265/180) = tgX

1=0,707106781/0,70106781  



Для нашего случая, т.е., для малых углов, можно принять tgX = sinX

0.0001745 = sin (0.01*) = tg (0.01*)

* - градусы.


 
Yousufkhodja Sultonov:

Сейчас сделаю, пока, только так - путем подбора угла (есть ещё через ряды, но, сложнее - можно погуглить и найти):

SIN(X*3,14159265/180)/COS(X*3,14159265/180) = tgX

Задавая X в градусах, добиваемся совпадения левой и правой частей уравнения с нужной точностью. Если это сможете провернуть программно, то, будет счастья. Но, не вижу, пока, смысла, если не убедите меня в обратном. Тангенс, в данном случае, кажется более логичным.

Формулу использовать так, как есть? Откуда брать значения Х?
 
forexman77:
Формулу использовать так, как есть? Откуда брать значения Х?

X - задаете сами, пока левая часть уравнения не совпадет с tgX, которого вычисляет индикатор на данный момент. Например, для евродоллара, индикатор на ТФ Н1 находит tgx=0,0001745. Задавая x = 0,01* (градус), видиим, что, обе части уравнения равны. Следовательно, X=0.01* 

Для золота сейчас на ТФ Д1 индикатор показывает tgx = - 2.3506. Подставляя в формулу, находим x = - 67*, приблизительно.  Угол может изменяться в пределах от -90* до +90*.

 
Yousufkhodja Sultonov:

X - задаете сами, tgX - вычисляет индикатор. Например, для евродоллара, индикатор находит tgx=0,0001745. Задавая x = 0,01* (градус), видиим, что, обе части уравнения равны. Следовательно, X=0.01* 

Для золота сейчас индикатор показывает tgx = - 2.3506. Подставляя в формулу, находим x = - 67*, приблизительно. 

Спасибо!
 
Мы лёгких путей не ищем.
 

Получился замечательный индикатор, но не для идентификации тренда и флэтта , а как фильтр.

А нельзя ли его как-то немного сгладить? Не приходит на ум как это можно лучше сделать. Может кто подскажет?

 
Uladzimir Izerski:

Получился замечательный индикатор, но не для идентификации тренда и флэтта , а как фильтр.

А нельзя ли его как-то немного сгладить? Не приходит на ум как это можно лучше сделать. Может кто подскажет?

Файлы:
tg1MA.mq4  3 kb
 
forexman77:

Можете оценить сглаживание https://www.mql5.com/ru/charts/6020044/eurusd-h1-weltrade , прошу модераторов, разместить данный индикатор на первой странице топика:

 

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

График EURUSD, H1, 2016.10.27 14:47 UTC, Weltrade, MetaTrader 4, Real
График EURUSD, H1, 2016.10.27 14:47 UTC, Weltrade, MetaTrader 4, Real
  • www.mql5.com
Символ: EURUSD. Период графика: H1. Брокер: Weltrade. Торговая платформа: MetaTrader 4. Режим торговли: Real. Дата: 2016.10.27 14:47 UTC.
 
forexman77:
Расскажите, пожалуйста, по какому принципу произведено сглаживание?
Причина обращения: