Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
А как она подключается? Ну DLL то я найду, там явно исписано тысяча страниц... То есть просто в Visual Studio сделаю себе DLL, а потом что в нем писать? Как связаться с MT5 и получить доступ к его данным?
Писать в ДЛЛ, функции, вестимо для взаимодействия. Где-то на форуме экземпл был, попробую найти.
Вот здесь расписано -
Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий
Новая версия платформы MetaTrader 5 build 1930: Плавающие окна графиков и .Net библиотеки в MQL5
MetaQuotes Software Corp., 2018.10.25 17:18
26 октября 2018 года будет выпущена обновленная версия платформы MetaTrader 5. Обновление содержит следующие изменения:
Это удобно при работе с несколькими мониторами. Например, на одном можно расположить основное окно платформы и следить за состоянием счета, а на другом — графики для оценки ситуации на рынке. Чтобы отделить график от терминала, отключите опцию "Закреплен" в его контекстном меню. После этого расположите график на нужном мониторе.
Чтобы вам не приходилось переключаться между мониторами для нанесения аналитических объектов или индикаторов, у открепленных графиков предусмотрена отдельная панель инструментов. Чтобы изменить набор команд или скрыть панель инструментов, воспользуйтесь ее контекстным меню.
Каждый групповой чат и канал может быть публичным или приватным. Автор сам решает, можно ли к ним присоединяться свободно или только по приглашению. Также в каналы и чаты можно назначать модераторов для дополнительного контроля общения.
Минимальный объем и шаг его изменения зависят от настроек финансового инструмента на стороне брокера.
Для работы с функциями .NET библиотеки достаточно импортировать саму DLL без указания конкретных функций. MetaEditor автоматически импортирует все функции, с которыми возможна работа:
Для вызова функций из библиотеки просто импортируйте ее:
C# код функции Inc класса TestClass выглядит следующим образом:
В результате выполнения скрипт вернет значение 42.
Работа над поддержкой .NET библиотек продолжается, в будущих версиях планируется расширить возможности их использования.
Функции WinAPI сгруппированы в отдельных файлах по назначению:
Обвязка работает только с 64-битной архитектурой.
Более подробная информация о спецификаторах доступна в MSDN.
В перечисление ENUM_CHART_PROPERTY_INTEGER добавлены:
В перечисление ENUM_TERMINAL_INFO_INTEGER добавлены:
struct MqlTick
{
datetime time; // Время последнего обновления цен
double bid; // Текущая цена Bid
double ask; // Текущая цена Ask
double last; // Текущая цена последней сделки (Last)
ulong volume; // Объем для текущей цены Last
long time_msc; // Время последнего обновления цен в миллисекундах
uint flags; // Флаги тиков
double volume_real; // Объем для текущей цены Last c повышенной точностью
};
Для получения этих свойств используйте функцию SymbolInfoDouble.
Если свойство не определено, по умолчанию используется вырванивание в 1 байт — pack(1).
Пример использования:
Вывод:
Более подробная информация о выравнивании в структурах доступно в MSDN.
Для следующего кода:
Компилятор выдаст предупреждение:
'Main::PRICE_OPEN_' instead of 'ENUM_APPLIED_PRICE::PRICE_CLOSE' will be used
Чтобы принудительно включить расчет индикаторов на каждом тике, добавьте для программы свойство #property tester_everytick_calculate.
Индикаторы, скомпилированные предыдущими версиями компилятора, будут рассчитываться как раньше — на каждом тике.
Обновление будет доступно через систему Live Update.
А все теперь понятно, просто DLL используется в своих пределах. То есть работа с БД и подобным, а MT5 туда "скидывает" данные после получения. Я уж подумал, что есть возможность прямо из DLL "связь" наладить. Ладно, попробую сначала файлами, все же они попроще... Потом уже и DLL может быть. Одно плохо, что не так уж просто получить котировки при казалось бы их полной доступности...
Я вообще уже так привык с php к тому, что есть xml и подобное в шаговой доступности, что все это выглядит как нагромождение бессмысленное и беспощадное...
А все теперь понятно, просто DLL используется в своих пределах. То есть работа с БД и подобным, а MT5 туда "скидывает" данные после получения. Я уж подумал, что есть возможность прямо из DLL "связь" наладить. Ладно, попробую сначала файлами, все же они попроще... Потом уже и DLL может быть. Одно плохо, что не так уж просто получить котировки при казалось бы их полной доступности...
Я вообще уже так привык с php к тому, что есть xml и подобное в шаговой доступности, что все это выглядит как нагромождение бессмысленное и беспощадное...
Пайпы попробуйте. В mql есть возможность работы с ними.
Да я уже думаю заказать, только до конца сформулировать что мне нужно с точки зрения пользователя уже. Если сумма не бог весть какая... Что то много мне возится иначе придется.
не хотите dll ну передавайте через файлы, чтобы не было нагрузки на жесткий диск используйте, например, Memory Mapping
вариантов обмена много, поиском по форуму "обмен", "обмен данными" должна найтись информация
ЗЫ: поискал мультивалютный тик поиском, кажется вот тут и будет загвоздка в реализации, примеры в кодобазе есть, но судя по комментариям не сильно надежно все работает, хотя может быть я так бегло прочитал
Да я уже думаю заказать, только до конца сформулировать что мне нужно с точки зрения пользователя уже. Если сумма не бог весть какая... Что то много мне возится иначе придется.
не хотите dll ну передавайте через файлы, чтобы не было нагрузки на жесткий диск используйте, например, Memory Mapping
вариантов обмена много, поиском по форуму "обмен", "обмен данными" должна найтись информация
ЗЫ: поискал мультивалютный тик поиском, кажется вот тут и будет загвоздка в реализации, примеры в кодобазе есть, но судя по комментариям не сильно надежно все работает, хотя может быть я так бегло прочитал
У меня SDD так что мне хватить должно. Но на деле у меня как раз mql5 больше всего проблем и вызывает. В итоге то нужно что то примерно такое:
Массив подобных данных на входе: "YYYY.MM.DD.HH.MM", то есть просто список дата + время в одном формате. И путь указать куда сохранять, "скрипт" этот (или DLL или что угодно) делает мне там XML файлы с именем "YYYY.MM.DD.HH.MM.XXXYYY", при этом соответственно работает по принципу определенному... Не знаю пока как лучше избежать дублей и как проверять, но в целом можно попробовать в "обратную" сторону проверять последние сутки...
Тут как раз загвоздка, нужно сформулировать до конца что хочу, чтобы запустить MT5 вместе с ним и он снабжал меня нужными по времени котировками для каждой пары доступной. Ну и потом как то вот не делал этого слишком часто, в то же время не имелось пропусков. Скорее всего просто проверка на наличие файла и все, а делал это каждые минут 5 - 15, что тоже можно настроить. То есть настроек всего лишь: подходящие даты, где будет хранилище, частота проверки и сохранения котировок.
Примерно так, если я еще ничего не забыл и не пропустил... MQL5 просто уже не лезет, может просто день сложный уже совсем под конец не знаю даже. Но не лезет...
Так, что Вы в конечном итоге сделать хотите?
Прямо вот описал уже точно, кажется почти все...
Прямо вот описал уже точно, кажется почти все...
Ну и потом как то вот не делал этого слишком часто, в то же время не имелось пропусков. Скорее всего просто проверка на наличие файла и все, а делал это каждые минут 5 - 15, что тоже можно настроить. То есть настроек всего лишь: подходящие даты, где будет хранилище, частота проверки и сохранения котировок.
ну если Вам нужны даннеы от МТ5 один раз в несколько минут, то вообще не принципиально как передавать, я с PHP вообще не знаком, но может быть Вам проще вообще все на сервер отправлять с помощью МТ5?
https://www.mql5.com/ru/docs/network/webrequest
https://www.mql5.com/ru/docs/network