Счетчик сигналов, счетчик неудачных/удачных входов

Техническое задание

Нужны:


1. Функция счетчика сигналов Sign_Checker(int ID), то есть, например, есть какая-то функция которая выдает сигналы типа int, например

в start:

int IDstoch80 = 5555;

int IDstoch20 = 5556;
int IDstoch50 = 5557;

   if (iStochastic(NULL,0,5,3,3,MODE_SMA,0,MODE_MAIN,1)>80){Sign_Checker(IDstoch80);} // при выполнении условия идёт трансляция IDstoch80 в Sign_Checker(int ID)
   if (Sign_Checker(IDstoch80)>2){Comment("читал ТЗ=", Sign_Checker(IDstoch80));} // проверяем сколько раз посчитано значение IDstoch80

   if (iStochastic(NULL,0,5,3,3,MODE_SMA,0,MODE_MAIN,1)==80){Sign_Checker(IDstoch20);} // при выполнении условия идёт трансляция IDstoch20 в Sign_Checker(int ID)
   if (Sign_Checker(IDstoch20)>2){Comment("читал ТЗ=", Sign_Checker(IDstoch20));} // проверяем сколько раз посчитано значение IDstoch20

   if (iStochastic(NULL,0,5,3,3,MODE_SMA,0,MODE_MAIN,1)==50){Sign_Checker(IDstoch50);} // при выполнении условия идёт трансляция IDstoch50 в Sign_Checker(int ID)
   if (Sign_Checker(IDstoch50)>2){Comment("читал ТЗ=", Sign_Checker(IDstoch50));} // проверяем сколько раз посчитано значение IDstoch50

пример: в данном случае  Comment("читал ТЗ=", Sign_Checker(IDstoch80));  должна показать значение = 3, так как стохастик превысил 80 три раза, а  Comment("читал ТЗ=", Sign_Checker(IDstoch20));  должна показать значение = 6, так как стохастик пересекал значение 80 шесть раз


 требования к функции -

  • все расчёты только внутри функции, функция отдельна от других блоков,
  • все условия и сравнения и вывод - вне функции (например условия по стохастику - в start),
  • возможность обнуления счётчика определённого ID, например так if (Sign_Checker(IDstoch50)>2) Sign_Checker(IDstoch20)=0; 


2. Функция LuckCounter() или LuckCounter(double target) Счетчика достижения текущей ценой (бид или аск) заданной чем-либо цены target -  никаких ордеров, счётчик получает уровни/таргеты/цели/цены в формате double, результат выдаёт в формате int

пример в start:   if (iStochastic(NULL,0,5,3,3,MODE_SMA,0,MODE_MAIN,1)>80){LuckCounter(1.4702);} // при выполнении условия идёт трансляция цели в LuckCounter, далее LuckCounter запоминает цель и сравнивает с текущей ценой, если текущая цена достигает цель, то LuckCounter по этой цели будет +1, и цель обнуляется, общее значение LuckCounter выдаст +1. Если в LuckCounter было отправлено 100 разных целей и цена достигла только 44 из них, то общее значение LuckCounter должен выдавать 44, а остальные цели (каждая из них) ждут достижения ценой либо своего обнуления

  • все расчёты только внутри функции, функция отдельна от других блоков,
  • все условия и сравнения и вывод - вне функции (например условия по стохастику - в start),
  • возможность обнуления определённой цели до достижения её бидом аском, например так if (Sign_Checker(IDstoch50)==9) LuckCounter(1.4702)=0;

функция LuckCounter подобна предыдущей, только вместо счёта поступающих чисел как в Sign_Checker, функция LuckCounter следит за ценой и считает сравнения/достижения поставленных целей с ценой, обе простые

код комментируйте цитатами из ТЗ на русском языке,

примеры привёл, чтобы могли проверить что всё работает правильно, примером может быть и не стохастик

код в примерах может содержать ошибки - не придирайтесь, задавайте вопросы


 

 

 

 

Откликнулись

1
Разработчик 1
Оценка
(23)
Проекты
90
24%
Арбитраж
12
33% / 67%
Просрочено
35
39%
Свободен
Опубликовал: 8 примеров
2
Разработчик 2
Оценка
(169)
Проекты
460
41%
Арбитраж
39
18% / 31%
Просрочено
193
42%
Свободен
Опубликовал: 2 примера
3
Разработчик 3
Оценка
(71)
Проекты
254
53%
Арбитраж
16
50% / 38%
Просрочено
83
33%
Свободен
4
Разработчик 4
Оценка
(2)
Проекты
5
20%
Арбитраж
2
50% / 0%
Просрочено
0
Свободен
5
Разработчик 5
Оценка
(195)
Проекты
395
28%
Арбитраж
155
20% / 52%
Просрочено
112
28%
Свободен
6
Разработчик 6
Оценка
(37)
Проекты
105
49%
Арбитраж
6
0% / 17%
Просрочено
21
20%
Свободен
7
Разработчик 7
Оценка
(3)
Проекты
9
33%
Арбитраж
3
0% / 100%
Просрочено
0
Свободен
8
Разработчик 8
Оценка
Проекты
0
0%
Арбитраж
0
Просрочено
0
Свободен
9
Разработчик 9
Оценка
Проекты
0
0%
Арбитраж
0
Просрочено
0
Свободен
10
Разработчик 10
Оценка
(46)
Проекты
73
16%
Арбитраж
13
8% / 92%
Просрочено
37
51%
Свободен
Похожие заказы
Приветствую! Нужно написать не сложного эксперта который будет работать с ордерами открываемыми другим существующим экспертом. Нужно что б новый эксперт мог : Выставлять стоп в плюс по открытым ордерам, задавать трейлинг стоп, и самое главное, закрывать все ордера по старшему (последнему) ордеру. Детали в личке опишу
Ищу опытного разработчика для работы с торговыми роботами в MetaTrader 5 и сопутствующими инструментами на Python. Основные задачи: Реализация/модификация советника MT5 на MQL5 по стратегиям (с сеткой, динамическим лотом, TP/SL, частичной фиксацией прибыли); Внедрение или адаптация готового MQL5-модуля в существующий советник без нарушения логики; Написание вспомогательных скриптов на Python для: • сбора и анализа
Доброго дня. Нужен советник на основе индикатора, либо скрипт Trading View. Лучше это оформит в качестве программы на Python. Но если код легче будет через PineScript, то можно и скриптом. Главное чтобы последовательность соблюдалась с первого по четвертый пункты из ТЗ (во вложении). Индикатор есть, предоставлю, хотелось бы понять примерную стоимость, создания советника. Спасибо. В индикаторе много параметров, но
Подобные решения уже есть в интернете, написаны в виде советника. Из их минусов - разработчики советника предоставляют котировки около 50 торговых пар. Мне необходимо, чтобы в мт5 поступали котировки абсолютно всех торговых пар. Ссылку на подобный советник могу предоставить, как на ориентир, образец
1) Советник открывает двойной ордер одинакового объёма разного направления, заданного в параметрах, как стартовый лот; этот ордер считается нулевым; 2) По ходу движения цены в любую сторону советник открывает на каждом шаге сетки двойные ордера, согласно множителю (5.) и условиям пункта 29.; Визуально - это выглядит так, что вся сетка состоит из двойных ордеров, либо по краям сетки всегда остаются двойные ордера, при
Необходимо создать советник на MQL 5, который будет торговать по областям поддержки/сопротивления. Области поддержки/сопротивления наносятся на график человеком вручную при помощи фигуры «Прямоугольник». При достижении ценой прямоугольника, и в зависимости от цвета данной фигуры (цвет задается в настройках) советник открывает сделку на покупку или на продажу. Далее сделка сопровождается по заданному алгоритму. В

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

Бюджет
10 - 20 USD
Сроки выполнения
от 1 до 3 дн.