Огромное спасибо!
Для этого советник socket необходимо поставить на графики тех валютных пар, по которым хотите собирать тиковую информацию.
Не самое элегантное решение. Но я готов выслушать предложения по улучшению проекта.
Для MT4 вроде ясно как - через DDE сервер, а как на MT5 сам у всех спрашиваю.
Может у кого есть идеи ?
Для MT4 вроде ясно как - через DDE сервер, а как на MT5 сам у всех спрашиваю.
Может у кого есть идеи ?
Все зависит от продвинутости сервера, сложности сетевого протокола и той задачи которую необходимо выполнить...
Для начала нужно определиться с поставленной задачей, потом разработать сетевой протокол (возможно понадобится проработать и структуру БД сервера).
Все зависит от продвинутости сервера, сложности сетевого протокола и той задачи которую необходимо выполнить...
Для начала нужно определиться с поставленной задачей, потом разработать сетевой протокол (возможно понадобится проработать и структуру БД сервера).
Если наберетесь терпения, я закончу проект обмена данными через File Mapping. Это будет то, что Вам нужно.
Если наберетесь терпения, я закончу проект обмена данными через File Mapping. Это будет то, что Вам нужно.
Там надо будет тоже ставить советника на каждую пару по которой я хочу получать данные?
Я пока не делал передачу котировок именно так, как это делает MT4 через DDE, ведь MT4 является сервером автоматизации. А у меня сделано так: MT5 является клиентом, и если хотите знать текущие_цены, посылаете запрос и получаете результат. Это работает для всех валютных пар, активных в окне обзора рынка.
Вы можете и в этом проекте передать все котировки одним пакетом. Например, в советнике, по таймеру каждую секунду, получаете данные и проверяете перед отправкой, чтобы новые данные не были похожи на уже отправленные, по каждой валютной паре, т.е. изменение данных для Ask или Bid будет считаться новым тиком.
![MQL5 - Язык торговых стратегий для клиентского терминала MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
Работа с сокетами в MQL5:
Библиотека для передачи котировок из MetaTrader 5 в серверное приложение, написанное на Delphi 7.
Для связи используется TCP протокол, что позволяет передавать данные не только локально но и удаленно, например, на ПК, подключенный по локальной сети. Для работы с сокетами используется библиотека Winsock2 (wsock32.dll). В качестве промежуточного звена, связывающего советник и библиотеку сокетов служит библиотека socket_mql5.dll написанная на С++.
Результат работы советника, реализующего клиента, который подключается к серверному приложению и передает данные о каждом тике, показан на рисунке.
Автор: Andrey Voytenko