Требуется инструмент (индикатор/эксперт), который будет считывать с графика разметку графического индикатора и кодировать в текстовом формате два определенных события

MQL4 Experts

Job finished

Execution time 2 days
Feedback from customer
Отличный разработчик! С заказом справился быстро. По ТЗ все выполнено. Поддержка после завершения сделки. Цены приятные. Работа выполнена качественно. Надеюсь на дальнейшее сотрудничество.
Feedback from employee
Дружелюбный и коммуникабельный заказчик, в отличии от многих - заранее пишет настоящие ТЗ где всё уточняет, чем экономит время. Всё отлично! Спасибо за задание!

Specification

Краткое описание задания:

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

Событие – изменение свойств/параметров объекта (графического элемента).

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

Исходника графического индикатора нет. 




Требуется написать инструмент (индикатор/эксперт) для МТ4, который должен:

1. Создавать текстовый документ в папке …\MQL4\Files каталога терминала.

Имя текстового документа берется с графика, на котором запущен индикатор по названию текущего инструмента (со всеми префиксами и пр. при наличии таковых), например, AUDUSDf.

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

 

2.1. Анализ графика.

Считывать с графика разметку графического индикатора каждую минуту. При считывании анализировать параметры/свойства следующих объектов:

- объект Label, имя объекта SAKS 233: W1 (см. рис.1-3),

- объект Label, имя объекта фаза_H4 (см. рис.4-9).

2.2.1. Объект Label SAKS 233: W1 может иметь следующие варианты свойств/параметров:

1. Вариант «А1» (рис.1):

- описание – й,

- свойства:

- текст – й,

- шрифт – Wingdings,

- размер шрифта – 12,

- цвет шрифта – DodgerBlue,

Назовем этот вариант «Условие 1».

 

2. Вариант «А2» (рис.2):

- описание – к,

- свойства:

- текст – к,

- шрифт – Wingdings,

- размер шрифта – 12,

- цвет шрифта – OrangeRed,

Назовем этот вариант «Условие 2». 

3. Вариант «А3» (рис.3):

- описание – [пусто],

- свойства:

- текст – [пусто],

- шрифт – Wingdings,

- размер шрифта – 12,

- цвет шрифта – None,

Назовем это вариант «Условие 3».

2.2.1. Объект Label фаза_H4 может иметь следующие варианты свойств/параметров:

1. Вариант «В1» (рис.4):

         - описание – Ф-3

- свойства:

- текст – Ф-3,

- шрифт – Arial Black,

- размер шрифта – 8,

- цвет шрифта – Magenta,

Назовем этот вариант «Условие 4».

2. Вариант «В2» (рис.5):

- описание – Ф-3

- свойства:

- текст  Ф-3,

- шрифт  Arial Black,

- размер шрифта  8,

- цвет шрифта  DodgerBlue,

Назовем этот вариант «Условие 5».

3. Вариант «В3» (рис.6):

- описание – Ф-2

- свойства:

- текст – Ф-2,

- шрифт – Arial Black,

- размер шрифта – 8,

- цвет шрифта – Magenta,

Назовем этот вариант «Условие 6».

4. Вариант «В4» (рис.7):

- описание – Ф-2

- свойства:

- текст – Ф-2,

- шрифт – Arial Black,

- размер шрифта – 8,

- цвет шрифта – DodgerBlue,

Назовем этот вариант «Условие 7».

5. Вариант «В5» (рис.8):

- описание – Ф-1

- свойства:

- текст – Ф-1,

- шрифт – Arial Black,

- размер шрифта – 8,

- цвет шрифта – Magenta,

Назовем этот вариант «Условие 8».

6. Вариант «В6» (рис.9):

- описание – Ф-1

- свойства:

- текст – Ф-1,

- шрифт – Arial Black,

- размер шрифта – 8,

- цвет шрифта – DodgerBlue,

Назовем этот вариант «Условие 9».


3.1. Сигналы.

Сигнал «1» возникает (появляется) при логической сумме «Условия 1» И «Условия 4», т.е.: «Условие 1» + «Условие 4» = Сигнал «1»

Сигнал «2» возникает (появляется) при логической сумме «Условия 2» И «Условия 5», т.е.: «Условие 2» + «Условие 5» = Сигнал «2»

При всех прочих комбинациях вариантов (условий) сигналы отсутствуют.

Если хотя бы одно из условий (или оба) возникновения/существования Сигнала «1» не выполняется, Сигнал «1» прекращается.

Если хотя бы одно из условий (или оба) возникновения/существования Сигнала «2» не выполняется, Сигнал «2» прекращается.

3.2. Запись в текстовый документ.

При возникновении Сигнала «1», внести запись из одного символа в виде цифры в первую строку текстового документа – 1 (один).

При отсутствии Сигнала «1» внести запись из двух символов в виде цифр в первую строку текстового документа – 10 (один ноль).

При возникновении Сигнала «2», внести запись из одного символа в виде цифры во вторую строку текстового документа – 2 (два).

При отсутствии Сигнала «2» внести запись из двух символов в виде цифр во вторую строку текстового документа – 20 (два ноль).

 

4. ВАЖНО:

1. Все, что записано после // - комментарий, в текстовый документ это записываться не должно.

Текстовый документ создается один раз, далее значения символов в нем только редактируются (записываются/перезаписываются).

2. После первой проверки сигналов значения записываются в пустые строки текстового документа. После каждой последующей проверки сигналов, значения в текстовом документе перезаписываются (редактируются):

- В первой строке:

         - с «1» (один) на «10» (один ноль)

         - с «10» (один ноль) на «1» (один)

- Во второй строке;

         - с «2» (два) на «20» (два ноль)

         - с «20» (два ноль) на «2» (два)

3. Чтобы не обращаться к текстовому документу каждую минуту, запись в текстовый документ делать только при возникновении сигнала и при окончании (прекращении) сигнала, а саму запись «держать в голове» инструмента.

4. После записи обязательно производить проверку на ошибки:

- текстовый документ существует,

- в текстовом документе сделана запись соответствующая текущей разметке

5. Проверка на ошибки выводит в журнал сообщений сообщение: «Проверка успешно завершена.».

 

5. E-MAIL УВЕДОМЛЕНИЕ:

После каждого внесения записи в текстовый документ отправлять уведомление на e-mail адрес, который вводится в настройках инструмента пользователем вручную.

 



Responded

1
Developer 1
Rating
(361)
Projects
644
26%
Arbitration
92
72% / 14%
Overdue
12
2%
Working
Published: 1 code
2
Developer 2
Rating
(281)
Projects
650
28%
Arbitration
112
19% / 62%
Overdue
319
49%
Free
3
Developer 3
Rating
(640)
Projects
864
48%
Arbitration
29
38% / 17%
Overdue
63
7%
Working
4
Developer 4
Rating
(198)
Projects
255
21%
Arbitration
22
50% / 18%
Overdue
0
Working
5
Developer 5
Rating
(298)
Projects
477
40%
Arbitration
105
40% / 24%
Overdue
81
17%
Loaded
Published: 2 codes
6
Developer 6
Rating
(69)
Projects
146
34%
Arbitration
13
8% / 62%
Overdue
26
18%
Free
Published: 6 codes
7
Developer 7
Rating
(15)
Projects
37
62%
Arbitration
1
0% / 100%
Overdue
1
3%
Free
Published: 1 article, 29 codes
8
Developer 8
Rating
(49)
Projects
134
27%
Arbitration
62
13% / 53%
Overdue
58
43%
Free
Published: 317 articles, 1 code

Project information

Budget
30+ USD