Отличие советника от индикатора.
fxsaber
fxsaber
Комментарий к теме Особенности языка mql5, тонкости и приёмы работы
Памятка Действие/тип программы Смена ТФ или символа Смена счета Индикатор Запуск OnDeinit и OnInit, объект глобального класса меняется (полная перезагрузка). Ничего не происходит, кроме обнуления
fxsaber
Опубликовал код Ping
Реал-тайм индикатор лага котировок внутри самого терминала.
fxsaber
Опубликовал код Clock
Библиотека создания аналоговых часов в графических ресурсах MetaTrader 4/5.
Функции для передачи любых данных между терминалами на одной машине.
fxsaber
fxsaber
Комментарий к теме Библиотеки: File Mapping без DLL
Спасибо автору за библиотеку! Сварганил функции для передачи любых данных. Ниже скрипт показывает их работу на примере тиков #include <MemMapLib.mqh> #include <TypeToBytes.mqh> // Выделяет память
Синхронизация всех чартов по правому времени (MT4/5).
fxsaber
fxsaber
Комментарий к теме Вопросы от начинающих MQL5 MT5 MetaTrader 5
Vitaly Muzichenko : Вот только не сделал ударение на то, что прокрутка работает с любого графика, а не только с основного. // MQL4&5-code // Синхронизация всех чартов по правому времени sinput int
Версия без обращения к истории.
// Возвращает true только в случае, если с последнего вызова произошли торговые изменения
bool IsChange( void );
Эта версия особенно актуальна для MT5 на VPS, т.к. MT5 работает с Историей очень медленно и затратно по вычислительным ресурсам.
fxsaber
fxsaber
Комментарий к теме Организация цикла перебора ордеров
Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий Организация цикла перебора ордеров fxsaber , 2017.10.06 02:00 bool IsChange( const bool InitFlag = false ) {
fxsaber
Опубликовал код SubWindow
Библиотека для работы с подокнами чарта.
fxsaber
Опубликовал код Expert
Библиотека чтения/записи параметров произвольных советников.
fxsaber
Опубликовал код Symbol
Библиотека для работы с обычными и кастомными символами
Почему результаты Оптимизации могут не соответствовать одиночным прогонам тестера.
fxsaber
fxsaber
Комментарий к теме Особенности языка mql5, тонкости и приёмы работы
Бывают такие ситуации Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий Ошибки, баги, вопросы fxsaber , 2017.07.24 09:27 Советник откомпилирован под 1641, где
fxsaber
Опубликовал код TesterBenchmark
Замер чистой производительности тестеров стратегий MetaTrader 4/5.
fxsaber
Опубликовал код Report
Библиотека для MetaTrader 4/5, которая позволяет формировать отчеты по истории торгов.
Нестандартная передача данных на Агентов.
fxsaber
fxsaber
Комментарий к теме Может ли советник без DLL функций отправить куда-нибудь данные?
Renat Fatkhullin : Не докажите Из "Маркета" юзер скачивает этот советник input int Range = 0 ; sinput long AccountNumber = 0 ; // ------ template < typename T> bool DataToFile( const string FileName
Список всех файлов папок Files.
fxsaber
fxsaber
Комментарий к теме Особенности языка mql5, тонкости и приёмы работы
Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий Библиотеки: TypeToBytes fxsaber , 2017.06.13 16:01 string GetDirectory( const string FileName ) { int Pos =
fxsaber
Добавил тему MT4-Tester VS MT5-Tester
Руки дошли реализовать давнюю идею Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий Обсуждение статьи "Готовые советники из Мастера MQL5 работают в MetaTrader 4" fxsaber , 2017.03.09 13:02 Для сравнения предлагаю
fxsaber
Добавил тему БД Фриланса
Прошу разработчиков сделать публичной в виде CSV обезличенную базу данных Фриланса. На данный момент такая БД полностью доступна через сайт, но в виде страниц, а не CSV. Можно распарсить эти тысячи страниц, попутно обойдя автобаны, и самому создать
fxsaber
Опубликовал код Init_Sync
Библиотека делает синхронизированными Init/Deinit индикаторов
Находим в индикаторе свои Handle и ShortName.
fxsaber
fxsaber
Комментарий к теме Последовательность выполнение Init() и DeInit()
Выкрутился int GetShortNames( string &ShortNames[], const long Chart_ID = 0 , const int SubWindow = 0 ) { const int Total = ChartIndicatorsTotal (Chart_ID, SubWindow); ArrayResize (ShortNames