Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Миллисекундный таймер давно есть: EventSetMillisecondTimer()
Вы совсем не в теме. Допустим, надо открыть две позиции в OnTick. Первый OrderSend - это несколько миллисекунд. После него надо делать снепшот. И тогда вызывать второй OrderSend.
Один только OnTick может выполняться сотни миллисекунд. А вы предлагаете в каком-то OnTimer снепшотиться.
К самой библиотеке замера тоже есть вопросы. На ровном месте накручено лишнее, включая оверхед.
Аргументы в студию!
Вот мой код и стабильное время отработки: никаких сотен и тысяч микросекунд на 20 графиках параллельно
Сколько у вас ядер и какой процессор? i7-2600?
8 ядер.
Снова скрытый стресс-тест с миллионами запросов параллельно?
Много раз говорил, что боевой советник. Максимально минимизировал количество вызовов. В теории (тупо не замерял) до 10 вызовов на один OnTick.
Будьте прозрачнее. То, что вы опубликовали пару простых _B вызовов, не является доказательством ваших остальных заявлений. Вы резко забываете про код и реальное описание условий, как только делаете запредельные заявления.
Не надо ничего представлять в уме - расскажите и покажите, что реально вы вызываете и тестируете. Не вырванный результат "запустил никому неизвестный стресс-тест и жду алерта, чтобы показать миру", а именно полный код теста.
Публикую результаты с боевого советника. Там 70 mqh файлов, включая WinAPI. Если не на словах, а реально будете разбираться, то предоставлю исходник. Воспроизведете тормоза довольно быстро.
Вы совсем не в теме. Допустим, надо открыть две позиции в OnTick. Первый OrderSend - это несколько миллисекунд. После него надо делать снепшот. И тогда вызывать второй OrderSend.
Один только OnTick может выполняться сотни миллисекунд. А вы предлагаете в каком-то OnTimer снепшотиться.
8 ядер.
Много раз говорил, что боевой советник. Максимально минимизировал количество вызовов. В теории (тупо не замерял) до 10 вызовов на один OnTick.
Публикую результаты с боевого советника. Там 70 mqh файлов, включая WinAPI. Если не на словах, а реально будете разбираться, то предоставлю исходник. Воспроизведете тормоза довольно быстро.
Аргументы в студию!
Весь ваш бенчмарк перегружен мусором и по факту вот его чистая и понятная (в отличие от вашего нагромождения кода) версия:
Какие проблемы у вас:
Надеюсь, вы для тестов не отключали оптимизацию кода?
Я имею в виду глобальный параметр Optimize=0 в metaeditor.ini
Весь ваш бенчмарк перегружен мусором и по факту вот его чистая и понятная (в отличие от вашего нагромождения кода) версия:
Ваша версия, к сожалению, на начальной стадии понимания удобства. Удобно, это когда вот так можно.
Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий
Библиотеки: Benchmark
fxsaber, 2020.10.01 23:49
Пробуем выяснить, где загвоздка у штатного варианта. Прописываем в исходный код несколько символов.
И сразу видим причину.
CHART_IS_MAXIMIZED тормозит для чужих чартов. Баг-репорт готов! С библиотекой это было очень просто.
Какие проблемы у вас:
Удобство использования перекрывает мизерный оверхед. Он мизерный, если смотреть внимательно, как реализовано. Например, ArrayResize - это оверхед, поэтому сведено к минимуму его использование.
Надеюсь, вы для тестов не отключали оптимизацию кода?
Я имею в виду глобальный параметр Optimize=0 в metaeditor.ini
Не интересуют тормозные режимы. Смотрю работу боевого советника, уделяя внимание и алгоритмической оптимизации и оптимизации компилятора, конечно.
Весь ваш бенчмарк перегружен мусором и по факту вот его чистая и понятная (в отличие от вашего нагромождения кода) версия:
Какие проблемы у вас:
Надеюсь, вы для тестов не отключали оптимизацию кода?
Я имею в виду глобальный параметр Optimize=0 в metaeditor.ini
Вот он C-style, всё просто и действительно без мусора. Благодарю за пример.
Один из преподавателей языка Си, дал рекомендацию лучше не использовать в пользовательских именах нижнее подчёркивание _B
По причине того, что этот префикс используют разработчики библиотек, програм и т.д.
И чтобы не нарваться на пересечение, рекомендовал лучше не использовать.
А в mql5 есть ли вероятность нарваться на пересечение с вашими именами ?
Или пользовательские имена полностью ограждёны от имён MQ ?
Один из преподавателей языка Си, дал рекомендацию лучше не использовать в пользовательских именах нижнее подчёркивание _B
По причине того, что этот префикс используют разработчики библиотек, програм и т.д.
И чтобы не нарваться на пересечение, рекомендовал лучше не использовать.
Имена, начинающиеся с "_", в Си используются как служебные, системные или специальные. В данном случае - допустимо, я считаю. Т.к. эта функция используется для обслуживания и исследования кода.
Имена, начинающиеся с "_", в Си используются как служебные, системные или специальные. В данном случае - допустимо, я считаю. Т.к. эта функция используется для обслуживания и исследования кода.
В том то и вопрос, что помимо mql5, есть служебные имена MQ разработчика.