1. Сделать запись в виртуальный файл (маппинг). Советник будет от туда читать. Быстро и диск не будет дёргать.
2. Вместо EXE скомпилировать DLL. Данные гонять через интерфейсные функции.
3. Остальное это вариации на эти 2 темы.
Есть программа на C#, которая берет котировки из терминала, анализирует их, формирует сигналы для торговли.
Теперь задача срастить ее с МТ для автоматической торговли.
В МТ5 запросто, есть даже готовые примеры. См. Связь с MetaTrader 5 через именованные каналы без применения DLL
Разработчики обещали сделать пайпы и для МТ4, но неизвестно когда это будет реализовано.
1. Сделать запись в виртуальный файл (маппинг). Советник будет от туда читать. Быстро и диск не будет дёргать.
2. Вместо EXE скомпилировать DLL. Данные гонять через интерфейсные функции.
3. Остальное это вариации на эти 2 темы.
2. В программе есть и DLL. Можно одну сделать для обмена данными. Если не трудно, намекните про интерфейсные функции. Давно я не брал в руки шашки. А сейчас жизнь заставляет.
1. Про виртуальный файл можно чуть подробнее. Извините за такие вопросы. Если что - то, конечно воспользуюсь поиском.
Спасибо за ответ. Не ожидал такой оперативности :)
А почему не DLL?
В поиске по этому форуму нашел мнение, что DLL - не самый оптимальный вариант. Но не понял - почему.
Видел попытки сделать общение через Atom или Thrad. Но это были посты 2006-го года. И я не понял, реализовал ли кто-то на практике такой вариант.
Находил намеки и на обмен через ячейки памяти. Но тоже не понял... Как реализовать, и будет ли работать.
У нас при чтении котировок часть данных идет от МТ через файл, а часть через сообщения на дескриптор окна в программу. О новом тике, например, или о новом баре.
Я пне знаю, можно ли прогонять через сообщения большую информацию (несколько слов). И реально ли так отправлять сообщения в МТ советнику.
В МТ5 запросто, есть даже готовые примеры. См. Связь с MetaTrader 5 через именованные каналы без применения DLL
Разработчики обещали сделать пайпы и для МТ4, но неизвестно когда это будет реализовано.
Спасибо, МТ 5 на очереди. Посмотрю примеры.
Но пока задача - связать с МТ4.
2. В программе есть и DLL. Можно одну сделать для обмена данными. Если не трудно, намекните про интерфейсные функции. Давно я не брал в руки шашки. А сейчас жизнь заставляет.
1. Про виртуальный файл можно чуть подробнее. Извините за такие вопросы. Если что - то, конечно воспользуюсь поиском.
Спасибо за ответ. Не ожидал такой оперативности :)
2. Так это и есть экспортные функции DLL. Через них производить общение между библиотекой и экспертом.
1. Это на английском статья MSDN. В инете есть на русском. Есть готовые решения для MQL4.
В поиске по этому форуму нашел мнение, что DLL - не самый оптимальный вариант. Но не понял - почему.
Видел попытки сделать общение через Atom или Thrad. Но это были посты 2006-го года. И я не понял, реализовал ли кто-то на практике такой вариант.
Находил намеки и на обмен через ячейки памяти. Но тоже не понял... Как реализовать, и будет ли работать.
У нас при чтении котировок часть данных идет от МТ через файл, а часть через сообщения на дескриптор окна в программу. О новом тике, например, или о новом баре.
Я пне знаю, можно ли прогонять через сообщения большую информацию (несколько слов). И реально ли так отправлять сообщения в МТ советнику.
С точки зрения покупателя - не лучший, ну а для разработчика - библиотека динамического вызова - самое то:)
С точки зрения покупателя - не лучший, ну а для разработчика - библиотека динамического вызова - самое то:)
А почему с точки зрения покупателя - не лучший?
2. Так это и есть экспортные функции DLL. Через них производить общение между библиотекой и экспертом.
1. Это на английском статья MSDN. В инете есть на русском. Есть готовые решения для MQL4.
2. Так нужно не только между экспертом и библиотекой, но двухсторонний обмен между программой и экспертом. Или я что-то не допонял?
1. Спасибо, почитаю.
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
Есть программа на C#, которая берет котировки из терминала, анализирует их, формирует сигналы для торговли.
Теперь задача срастить ее с МТ для автоматической торговли.
1. Для тестирования стратегии планируется записать все сообщения программы о выставлении, закрытии, отмене, изменении ордеров в файл. Предполагается, что при тесте советник будет читать из файла и работать с ордерами по поступлению нового бара (его эмуляции при тесте).
2. Для непосредственно торговли хочу организовать обмен между советником (или скриптом) МТ и программой. Делать это через файл не хочется. Хочется как-то через сообщения или память посылать команды из программы в МТ, и от него получать ответ об исполнении, и идентификатор ордера. Чтобы по идентификатору дальше давать команды советнику по работе с этим ордером.
С mql до этого не работал. Если по 1-му варианту мне относительно понятно (хотя буду рад услышать советы)... То по 2-му пока ничего не понятно. Даже не уверен, возможно ли это в принципе.
Поиск по форуму особо не помог.
Прошу помощи. Заранее признателен откликнувшимся.