В жизни бывают такие моменты, когда очень хочется торговать из программы на
С++, но по каким-то причинам у брокера нет
API, зато есть
MetaTrader. Конечно, можно просто писать код на
MQL4/MQL5, на этом урезанном варианте-мутанте
Си и
С++, но мне как-то не в кайф это делать. Поэтому я решил сделать «мост» между
MetaTrader и программой через socket. Встречайте —
MT-Bridge.
На данный момент
MT-Bridge позволяет только передавать поток котировок в программу с заданной частотой + добавлена инициализация исторических данных. Пока мне этого достаточно, но возможно в будущем функционал
MT-Bridge будет расширен. Поэтому извиняйте, если здесь вы не нашли полноценного функционала, что есть то есть пока. Библиотека для подключения к советнику написана на
С++11 и зависит от
boost.asio, но нужны только файлы-заголовки. Вот
github репозиторий с советником и библиотекой. Передача данных реализована через сокеты, советник является клинетом, а программа на С++ — сервером. Данные передаются через сокет в бинарном виде.
(
Читать дальше )