Интерактивный индикатор для счёта баров. Interactive indicator.

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

Время выполнения 1 день
Отзыв от заказчика
The developer has perfectly implemented all features within the framework of the customer project and the task was completed well before predefined deadline.

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

Создать ИНТЕРАКТИВНЫЙ индикатор согласно подробному техническому заданию.

Входные данные:

1. Линии сопротивления и поддержки.

2. Правила счета количества баров.

 

Что необходимо от индикатора:

Пользователь на графике создает прямоугольник:

нижняя и верхняя стороны прямоугольников ограничены линиями сопротивления поддержки.

левая и правая стороны  прямоугольников задается пользователем.  

Индикатор Вычисляет и выводит на график количество баров в зонах между линиями сопротивления поддержки, заданных пользователем.


Пользователь может задать столько прямоугольников сколько ему необходимо.

Индикатор находит эти прямоугольники, подправляет верхнюю и нижнюю сторону прямоугольников под ближайшие линии СП.

Далее индикатор считает количество баров в этом прямоугольнике и выводит результат в левом верхнем углу прямоугольника под линией сопротивления, как показано на рисунке.

Если в зоне между соседними линиями  несколько прямоугольников создано пользователем, то индикатор вычисляет количество баров в каждом и суммирует количество баров, как показано на рисунке.

В этом заключается интерактивность пользователя и индикатора.

Пример работы такого индикатора изображен на рисунке во вложении.

 

counter 

 

counter_2 

 

Пример кода скрипта  с комментариями. Скрипт выполняет построение вышеуказанных линий.

//+------------------------------------------------------------------+

//|                                                   S.R.levels.mq4 |

//|                                       Andrii Mazur, A.RE.Capital LLC |

//|                               www.myfxbook.com/members/andibello |

//+------------------------------------------------------------------+

#property copyright "Andrii Mazur, A.RE.Capital"

#property link      "www.myfxbook.com/members/andibello"

#property version   "1.00"

#property strict

//+------------------------------------------------------------------+

//| Script program start function                                    |

//+------------------------------------------------------------------+

int start()

  {

//--------------------------------------------------------------------

   double

   LBOUND,                      // Lower boundary of a global flat;   default value = 0.0000

   UBOUND,                      // Upper boundary of a global flat;   default value = 0.0000

   diff,                         // Difference between upper and lower boundaries

   price;                        // for loop price


   int

   i,                            // Counter  

   num;                          // Number of S.R. levels above and below U.BOUND and L.BOUND; default value = 10


  string

  HLName;


//--------------------------------------------------------------------

   LBOUND = 1.1009;             // Default value L.BOUND for script

   UBOUND = 1.1162;             // Default value U.BOUND for script

   i = 0;                        // Initial value of counter

   num = 10;                     // Num default value for script

                                 //stl = STYLE_DASH            // Line style value

//col = Blue                  // Line colour value

//--------------------------------------------------------------------

   diff=UBOUND-LBOUND;


   for(i=0; i <= num - 1; i++)

     {

      price = LBOUND - i*diff;

      

      HLName = "LBOUND_" + i;

      ObjectCreate(HLName, OBJ_HLINE, 0, 0, price);

      ObjectSet(HLName, OBJPROP_STYLE,STYLE_DASH);

      ObjectSet(HLName,OBJPROP_COLOR,Blue);

            

      price = UBOUND + i*diff;

      

      HLName = "UBOUND_" + i;

      ObjectCreate(HLName, OBJ_HLINE, 0, 0, price);

      ObjectSet(HLName, OBJPROP_STYLE, STYLE_DASH);

      ObjectSet(HLName, OBJPROP_COLOR, Blue);      

      

     }


   return(0);


  }

//+------------------------------------------------------------------+

 

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

1
Разработчик 1
Оценка
(546)
Проекты
1327
59%
Арбитраж
28
82% / 0%
Просрочено
10
1%
Свободен
2
Разработчик 2
Оценка
(21)
Проекты
49
39%
Арбитраж
4
25% / 75%
Просрочено
10
20%
Свободен
3
Разработчик 3
Оценка
(21)
Проекты
31
23%
Арбитраж
2
50% / 0%
Просрочено
2
6%
Свободен
4
Разработчик 4
Оценка
(719)
Проекты
1038
39%
Арбитраж
47
49% / 23%
Просрочено
84
8%
Свободен
5
Разработчик 5
Оценка
(107)
Проекты
149
36%
Арбитраж
29
3% / 55%
Просрочено
35
23%
Свободен
6
Разработчик 6
Оценка
(10)
Проекты
20
60%
Арбитраж
1
0% / 100%
Просрочено
8
40%
Свободен
7
Разработчик 7
Оценка
(49)
Проекты
134
27%
Арбитраж
62
13% / 53%
Просрочено
58
43%
Свободен
8
Разработчик 8
Оценка
(40)
Проекты
106
52%
Арбитраж
17
12% / 65%
Просрочено
25
24%
Свободен
9
Разработчик 9
Оценка
Проекты
0
0%
Арбитраж
0
Просрочено
0
Свободен
10
Разработчик 10
Оценка
(46)
Проекты
73
16%
Арбитраж
13
8% / 92%
Просрочено
37
51%
Свободен
11
Разработчик 11
Оценка
(2)
Проекты
5
0%
Арбитраж
0
Просрочено
0
Свободен
12
Разработчик 12
Оценка
(1)
Проекты
2
50%
Арбитраж
1
0% / 0%
Просрочено
0
Свободен
13
Разработчик 13
Оценка
(45)
Проекты
50
34%
Арбитраж
14
7% / 64%
Просрочено
15
30%
Свободен
14
Разработчик 14
Оценка
(13)
Проекты
34
76%
Арбитраж
1
100% / 0%
Просрочено
6
18%
Свободен
15
Разработчик 15
Оценка
(37)
Проекты
105
49%
Арбитраж
6
0% / 17%
Просрочено
21
20%
Свободен
16
Разработчик 16
Оценка
(61)
Проекты
120
34%
Арбитраж
17
18% / 41%
Просрочено
51
43%
Свободен

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

Бюджет
10 - 100 USD
VAT (22%): 2.2 - 22 USD
Итого: 12.2 - 122 USD
Исполнителю
9 - 90 USD
Сроки выполнения
до 30 дн.