Скрипт для экспорта тиков и стакана цен

MQL5 Scripts

Specification

Необходимо разработать скрипт для экспорта тиков и стакана цен.

Скрипт должен сохранять в файл формата CSV каждую сделку в момент ее совершения, на подобии того, как можно экспортировать тики из стакана цен в MetaTrader 5.

Пример:

Time,Bid,Ask,Last,Volume,Type

2016.11.26 17:29:51.913,3341.01,201.42,8771.36,349,Buy

2016.11.26 17:29:52.231,8701.04,8771.27,8771.04,144,Sell

К каждому тику нужно добавить стакан цен на момент совершения сделки, стакан цен состоит из 20 котировок в каждую сторону.

Добавить нужно объем и цену, должно получиться нечто вроде такого:

2016.11.26 17:29:51.913,3341.01,201.42,8771.36,349,Buy,31.01,100,31.01,100,31.01,100,31.01,100,31.01,100,31.01,100,31.01,100,31.01,100,31.01,100,31.01,100,31.01,100,31.01,100,31.01,100,31.01,100,31.01,100,31.01,100,31.01,100,31.01,100,31.01,100,31.01,100,31.01,100,31.01,100,31.01,100,31.01,100,31.01,100,31.01,100,31.01,100,31.01,100,31.01,100,31.01,100,31.01,100,31.01,100,31.01,100,31.01,100,31.01,100,31.01,100,31.01,100,31.01,100,31.01,100,31.01,100

2016.11.26 17:29:52.231,8701.04,8771.27,8771.04,144,Sell,31.01,100,31.01,100,31.01,100,31.01,100,31.01,100,31.01,100,31.01,100,31.01,100,31.01,100,31.01,100,31.01,100,31.01,100,31.01,100,31.01,100,31.01,100,31.01,100,31.01,100,31.01,100,31.01,100,31.01,100,31.01,100,31.01,100,31.01,100,31.01,100,31.01,100,31.01,100,31.01,100,31.01,100,31.01,100,31.01,100,31.01,100,31.01,100,31.01,100,31.01,100,31.01,100,31.01,100,31.01,100,31.01,100,31.01,100,31.01,100

Где 31.01 - это цена, а 100 это объем. (Значения одинаковые для примера)

Сначала идут 20 котировок продажи в порядке убывания а затем 20 покупки в порядке возрастания.

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

На каждый новый час должен создаваться новый файл.

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

По сути формат не принципиален, я так вижу, может кто проще и лучше предложит?

В идеале чтобы все эти данные писались бы в базу данных MySql.

Responded

1
Developer 1
Rating
(195)
Projects
395
28%
Arbitration
155
20% / 52%
Overdue
112
28%
Free
2
Developer 2
Rating
(1)
Projects
1
0%
Arbitration
0
Overdue
0
Free
3
Developer 3
Rating
(157)
Projects
220
50%
Arbitration
2
50% / 0%
Overdue
15
7%
Free
4
Developer 4
Rating
(1)
Projects
1
0%
Arbitration
1
0% / 100%
Overdue
0
Free

Project information

Budget