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

MQL4 Asesores Expertos Bibliotecas

Tarea técnica

Нужны:


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 следит за ценой и считает сравнения/достижения поставленных целей с ценой, обе простые

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

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

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


 

 

 

 

Han respondido

1
Desarrollador 1
Evaluación
(23)
Proyectos
90
24%
Arbitraje
12
33% / 67%
Caducado
35
39%
Libre
2
Desarrollador 2
Evaluación
(169)
Proyectos
460
41%
Arbitraje
39
18% / 31%
Caducado
193
42%
Libre
3
Desarrollador 3
Evaluación
(71)
Proyectos
254
53%
Arbitraje
16
50% / 38%
Caducado
83
33%
Libre
4
Desarrollador 4
Evaluación
(2)
Proyectos
5
20%
Arbitraje
2
50% / 0%
Caducado
0
Libre
5
Desarrollador 5
Evaluación
(195)
Proyectos
395
28%
Arbitraje
155
20% / 52%
Caducado
112
28%
Libre
6
Desarrollador 6
Evaluación
(37)
Proyectos
105
49%
Arbitraje
6
0% / 17%
Caducado
21
20%
Libre
7
Desarrollador 7
Evaluación
(3)
Proyectos
9
33%
Arbitraje
3
0% / 100%
Caducado
0
Libre
8
Desarrollador 8
Evaluación
Proyectos
0
0%
Arbitraje
0
Caducado
0
Libre
9
Desarrollador 9
Evaluación
Proyectos
0
0%
Arbitraje
0
Caducado
0
Libre
10
Desarrollador 10
Evaluación
(46)
Proyectos
73
16%
Arbitraje
13
8% / 92%
Caducado
37
51%
Libre

Información sobre el proyecto

Presupuesto
10 - 20 USD
IVA (21%): 2.1 - 4.2 USD
Total: 12.1 - 24.2 USD
Para el ejecutor
9 - 18 USD
Plazo límite de ejecución
de 1 a 3 día(s)