Индикатор торговых сессий на основе базы данных TZ Data.

MQL4 Göstergeler Entegrasyon

Şartname

(Вопрос для специалиста в языке MQL4, компетентного разобраться в механизме задействования в коде индикатора – базы данных tzdata.)

Предпосылки к разработке кода индикатора.

Точность и корректность работы большинства существующих индикаторов, предназначенных для сигнализации о времени наступления событий, зависит от правильности и корректности их временнЫх настроек. Подавляющее большинство т.н. «mql-инструментов», призванных полноценно решать эту задачу, так щедро разбросанных в форумных топиках, равно как и в Code Base всем известного ресурса, являются не более чем – разрекламированными форумчанами бестолковыми пародиями, в 95% случаев неспособными корректно отобразить даже временной диапазон торговых сессий российских бирж. А что уж говорить о таких площадках, как, например - Bombay Stock Exchange, Bovespa или Tadawul… Если речь идет о коррекции времени наступления событий в рамках одного часового пояса, то в этом случае нет никаких сложностей. Два раза в год (в момент перехода с/на летнего/зимнего времени), в настройки времени индикатора вносятся соответствующие коррективы (как правило, сводящиеся к указанию времени, соответствующего текущему времени сервера брокера/ДЦ), и индикатор продолжает свою исправную и точную работу. Если же речь идет о коррекции времени наступления событий в рамках нескольких (двух, трех и более) часовых поясов, механизм корректировки остается тот же, но добавляется комплекс поисковых, сверочных и коррекционных мероприятий, направленных на установление и сверку точного текущего времени (относительно UTC) в зонах отображаемых событий с временем в котором работает индикатор (серверное время брокера/ДЦ). Помимо этого, для корректной работы индикатора, в настройки необходимо внести еще и соответствующие поправки (DST/offset и т.д.). В противном случае, показания индикатора будут ошибочны. Таким образом, чем больше количество временных зон (поясов), события в которых отображает индикатор, тем более громоздкой и обременительной становится настройка/сверка/изменение параметров времени в индикаторе. Предварительное рассуждение заключено в том, что для сведЕния громоздкой настройки индикатора к простому указанию времени сервера брокера/ДЦ, следует использовать в коде индикатора – базу данных tzdata, которая предназначена для автоматического учета разницы временнЫх зон и смещения времени относительно DST, что и является непосредственным решением задачи.

Задача.

Требуется разработка кода индикатора для MetaTrader 4. Код должен представлять из себя - алгоритм расчета времени согласно данных tzdata, которые будут учитывать унифицированное именование часовых поясов и смещение локального времени в различных регионах относительно универсального времени UTC. Конечное назначение индикатора – сигнализация о времени открытия и закрытия торговых площадок путем нанесения соответствующих линий в подокне графика инструмента в терминале MT4.

Код индикатора должен учитывать:

   - UTC-таймзону сервера брокера,

   - UTC-offset (смещение) таймзон городов бирж,

   - время (разницу во времени) DST.

Иными словами, индикатор должен отрисовывать линии соответствующие времени работы той или иной биржи с учетом смещения (offset) времени часовых поясов, а также, с учетом перехода того или иного города на летнее/зимнее время (DST).

Конечное обслуживание индикатора (пользование) должно заключаться в указании/корректировке во внешних переменных – времени открытия/закрытия бирж и установке временной зоны брокера/ДЦ. 

Описание репозитория tzdata:  http://habrahabr.ru/post/130401/

Страница tzdata на Википедии:  https://ru.wikipedia.org/wiki/Tz_database

Ссылки на базу tzdata (IANA TimeZoneDatabase):  http://www.iana.org/time-zones

Пример задействования базы tzdata:  http://stswoon.blogspot.ru/2014/02/time-zones.html

P.S.: ТЗ написано с детальной проработкой многих нюансов. Но, чтобы не бежать впереди паровоза, на данный момент требуется компетентный ответ специалиста на вопросы:

     1. Возможно ли задействование данных базы tzdata в MQL4-коде индикатора – в принципе?

     2. Данные базы tzdata обновляются несколько раз в год. В крайней степени удобно было бы - подразумевать автоматический импорт обновленных данных из базы tzdata в код индикатора. Насколько это технически возможно и осуществимо – вопрос…

     3. В случае невозможности автоматического импорта, требуется оценка степени сложности задействования данных базы tzdata в коде индикатора – простое копирование, конвертация, включение dll или?…

     4. Как вариант для обсуждения – написание кода приложения *.exe (или?), которое выполняло бы все поставленные задачи. 

Недостатком такого варианта будет отсутствие наглядности (вряд ли, удастся транслировать в подокно графика инструмента в MT4 – данные из стороннего приложения).

Если с точки зрения специалиста, не будут выявлены существенные сложности, как в реализации идеи, так и в дальнейшей работе индикатора – рассматриваем ТЗ детально.

Yanıtlandı

1
Geliştirici 1
Derecelendirme
(34)
Projeler
55
31%
Arabuluculuk
8
0% / 63%
Süresi dolmuş
13
24%
Serbest
Yayınlandı: 22 makale, 1 kod
2
Geliştirici 2
Derecelendirme
(71)
Projeler
83
39%
Arabuluculuk
3
0% / 0%
Süresi dolmuş
1
1%
Serbest
Yayınlandı: 7 kod
3
Geliştirici 3
Derecelendirme
(40)
Projeler
106
52%
Arabuluculuk
17
12% / 65%
Süresi dolmuş
25
24%
Serbest
4
Geliştirici 4
Derecelendirme
Projeler
1
0%
Arabuluculuk
0
Süresi dolmuş
1
100%
Serbest
5
Geliştirici 5
Derecelendirme
(807)
Projeler
1127
43%
Arabuluculuk
47
49% / 23%
Süresi dolmuş
84
7%
Serbest
6
Geliştirici 6
Derecelendirme
Projeler
3
33%
Arabuluculuk
3
0% / 100%
Süresi dolmuş
1
33%
Serbest
7
Geliştirici 7
Derecelendirme
(80)
Projeler
117
67%
Arabuluculuk
16
25% / 13%
Süresi dolmuş
12
10%
Serbest
Yayınlandı: 2 kod
8
Geliştirici 8
Derecelendirme
(49)
Projeler
134
27%
Arabuluculuk
62
13% / 53%
Süresi dolmuş
58
43%
Serbest
Yayınlandı: 351 makale, 1 kod
9
Geliştirici 9
Derecelendirme
(15)
Projeler
37
62%
Arabuluculuk
1
0% / 100%
Süresi dolmuş
1
3%
Serbest
Yayınlandı: 1 makale, 29 kod

Proje bilgisi

Bütçe
100+ USD
Son teslim tarihi
from 7 gün