Скрипт расставляющий метки новостей из текстового файла (GMT 0, не CSV) с коррекцией под время брокера и сменой летнего/зимнего времени

MQL5 Scripts

Spécifications

Скрипт расставляющий метки новостей из текстового файла (GMT 0, не CSV) с коррекцией под время брокера и сменой летнего/зимнего времени.

Нужен для визуального тестирования внутридневной стратегии. В дальнейшем планируется использовать данные этого скрипта для написания СОВЕТНИКА по стратегии, поэтому данные, которые будут расставляться должны распознаваться им, т.е. не абстрактные метки.

Файл данных был "выдран" с forexfactory.com. В теории можно было бы брать оттуда напрямую, используя мой аккаунт и пароль, но я не знаю как это автоматизировать чтобы брать данные и за предыдущие года, а не только за текущее время. ;-)

В скрипте должна быть возможность выбора событий по валюте пары + дополнительная (например USD), например перечисление через пробел.

Метки, как в FFCal не устраивают, т.к. он очень громоздок и захламляет график. Хотелось бы, чтобы это были стрелки или какой-либо другой значёк (с возможностью изменения размера и цвета в скрипте) с всплывающей подсказкой при наведении мыши на объект-метку новости.

Т.к. использую свечи Haiken Ashi, то нужен отступ от свечи, чтоб значёк не перекрывался свечой. 

Возможность удаления всех меток с помощью этого же скрипта (триггер "добавить, расставить, убрать" метки).

Чтобы мог расставлять метки и как-бы вперёд, на грядущие события (на forexfactory есть анонсы примерно на месяц вперёд). Естественно, тут речи об отступе уже не идёт, т.к. непонятно что будет. :)

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

Некоторые нюансы:

Если в текстовом файле по текущей паре Bank Holiday - метка с подсказкой "в этот день не торгуем".

Если новостей по текущей паре много (более ???, число задаётся в скрипте) и они приходятся на время основной сессии по этой валютной паре, то - метка с подсказкой "в этот день не торгуем".

Из текстового файла можно брать информацию о переводе на зимнее/летнее время (Daylight Saving Time Shift), но т.к. перевод осуществляется в выходные, то метки никакой, естественно, не будет.

Бывают события и в воскресенье вечером (Новая Зеландия, Япония). Т.к. я торгую в ДЦ, который начинает рабочий день ещё в воскресенье, то возможность расставить метки должна быть и в этот день. 

Длительность сессий, как на www.stocktime.ru,

Пример с "текущими временами" (зимними) GMT0: Новая Зеландия - лето (21:00-3:45); Австралия - лето (23:00-5:00); Токио, Шанхай, Сингапур (объединены)- без перевода (0:00-9:00); Европа - зимнее время (8:00-16:30), США и Канада - зимнее время (14:30-21:00).

Пример текстового файла и пример картинки с всплывающей подсказкой приложены. 

Dossiers :

Répondu

1
Développeur 1
Évaluation
(40)
Projets
106
52%
Arbitrage
17
12% / 65%
En retard
25
24%
Gratuit
2
Développeur 2
Évaluation
(473)
Projets
1138
44%
Arbitrage
51
31% / 33%
En retard
500
44%
Gratuit
3
Développeur 3
Évaluation
(71)
Projets
254
53%
Arbitrage
16
50% / 38%
En retard
83
33%
Gratuit
4
Développeur 4
Évaluation
(15)
Projets
37
62%
Arbitrage
1
0% / 100%
En retard
1
3%
Gratuit
5
Développeur 5
Évaluation
(2)
Projets
5
20%
Arbitrage
2
50% / 0%
En retard
0
Gratuit

Informations sur le projet

Budget
10 - 20 USD
Pour le développeur
9 - 18 USD
Délais
de 1 à 5 jour(s)