TZ_Regressor_Time

MQL5 指标 其它 统计和数学

工作已完成

执行时间10 天

指定

Необходимо сделать функцию на базе индикатора в приложении, суть которого расчет канала СКО.

Т.е. вытащить часть кода из цикла индикатора и положить в отдельную функцию.

Дополнительно организовать расчет "Канала стандартных отклонений" по этому алгоритму https://www.mql5.com/ru/code/18330.


Входящие значения функции:
1. Торговый инструмент;
2. Тайм фрейм;
3. Дата начала расчета, включительно;
4. Дата окончания расчета, включительно;
5. Метод расчета;
6. Коэффициент СКО;
7. Номер бара, относительно даты окончания расчета (этот бар нулевой), с которого получаем результат вычислений, бар может быть минусовой.

Для проверки функции сделать индикатор, который будет вести расчет только на открытии нового бара в индикаторе будут доступны следующие входные параметры индикатора:

input ENUM_TIMEFRAMES TF=PERIOD_D1; // Тайм фрейм для расчета значения индикатора
input int Bar=3; //Цикл расчета с TF
enum ENUM_Polynomial 
  {
   linear=1,      // linear 
   parabolic=2,   // parabolic 
   Third_power=3, // third-power 
   liner_SCO=4, // liner_SCO
  };
input ENUM_Polynomial degree=linear; // Выбор метода расчета
input double kstd=2.0; //Выбор коэффициента

Под циклом расчета (переменная Bar) подразумевается интервал дат, к примеру Bar==3, если TF имеет значение PERIOD_D1 то с 16.04.2018 по 18.04.2018 включительно берется значение цены баров текущего тайм фрейма для расчета канала, а на 19.04.2018 проецируется результат расчета, который получился в виде функции. Проекция функции рассчитывается до следующего временного интервала (20.04.2018)  и так далее. При этом проекция пересчитывается в ходе течения времени, это актуально, если выпадают бары из временной шкалы по причине отсутствия тиков.

Если в функцию поступают данные те же, по которым уже произошел расчет, то функция сразу возвращает ранее рассчитанные результат.

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

Результатом вычисления функции является:

1. Верхняя граница канала
2. Нижняя граница канала

3. Центральная граница канала

Требования к качеству вычислений:

Расчет "Канала стандартных отклонений" и "Канала регрессии" должен соответствовать одноименным инструментам в терминале MT5, что будет проверяться наложением этих каналов на графическое отображение расчетов в виде буферов индикатора.


Визуально индикатор должен выглядеть так (за исключением пунктирной линии на прошлых барах - это канал из MT для примера проекции функции)



附加的文件:

MQ5
i-Regr.mq5
12.2 Kb

反馈

1
开发者 1
等级
(50)
项目
94
29%
仲裁
4
25% / 0%
逾期
4
4%
空闲
发布者: 3 代码
2
开发者 2
等级
(14)
项目
22
59%
仲裁
2
0% / 50%
逾期
2
9%
空闲
发布者: 1 代码
3
开发者 3
等级
(1)
项目
4
75%
仲裁
0
逾期
0
空闲
4
开发者 4
等级
(589)
项目
1070
50%
仲裁
39
28% / 41%
逾期
49
5%
空闲
发布者: 1 文章, 8 代码
相似订单
I already have a large working MQL5 Expert Advisor. I am NOT looking for a new EA from scratch. I need an experienced MQL5 developer to audit, debug and improve the existing source code based on real MT5 demo logs. The EA trades XAUUSD on M1 and includes smart entry logic, FastFlow/tick-flow analysis, DMI/ADX, Connors RSI, ROC, EMA, market structure and multi-leg execution. The main task is to identify why many

项目信息

预算
30 - 40 USD
截止日期
 5  10 天