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

MQL4 指标 脚本

工作已完成

执行时间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
等级
(551)
项目
1334
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
等级
(727)
项目
1047
40%
仲裁
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 天