Работа завершена

Время выполнения 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
Оценка
(588)
Проекты
1055
49%
Арбитраж
39
28% / 41%
Просрочено
50
5%
Свободен
Опубликовал: 1 статью, 8 примеров

Информация о проекте

Бюджет
30 - 40 USD
Исполнителю
27 - 36 USD
Сроки выполнения
от 5 до 10 дн.