fxsaber / Публикации
Коды
PriceChanges для MetaTrader 5
изменение цен символов на интервале
Keyboard для MetaTrader 5
Работа с данными клавиатуры
Input_Struct для MetaTrader 5
Структура входных параметров
OnTickMulti для MetaTrader 5
Мультисимвольный OnTick
SpreadSymbol для MetaTrader 5
Индикатор спреда сразу нескольких брокеров
ObjectsTrade для MetaTrader 5
История торговли из графических объектов
TradesID для MetaTrader 5
Быстрая работа с POSITION_ID
Usage для MetaTrader 5
Расчет вычислительной нагрузки - длительность выполнения расчетов от общего времени
Calendar для MetaTrader 5
Календарь - фундаментальный анализ на истории и в реал-тайме
Sequence для MetaTrader 5
Последовательный запуск расчетов в параллельно-выполняющихся программах
Cтатьи
Выцарапываем профит до последнего пипса для MetaTrader 5
В статье сделана попытка совместить теорию с практикой на поприще алготрейдинга. Большинство разговоров на тему создания Торговых Систем связано с использованием исторических ценовых баров и различных индикаторов на них. Это то самое истоптанное поле, которое мы трогать не будем. Бары — это совсем
Форум
OrderSend возвращает неправильный тикет
После прочтения свежей темы задумался о теоретической возможности там сказанного, когда OrderSend на разных терминалах одного счета получили один и тот же тикет (Result.order). Раньше об этом не задумывался, но теоретическое обоснование нашел, когда подумал об этом параметре . struct MqlTradeResult
Акцептирование SL/TP-ордеров
В этой ветке пойдет речь об ордерах, которые создаются в результате срабатывания SL/TP-уровней открытых позиций . Была написана сложная, но рабочая функция получения тика, который являлся триггером для заданного SL/TP-ордера. #define SEARCH_TICK(A, B) \ {
Найти ближайшее к заданному время, где не было открытых позиций.
Нужно написать такую производительную функцию. // Возвращает ближайшее к заданному время, где не было открытых позиций. datetime GetNoPositionsTime( datetime time ) Предлагаю попробовать свои силы. Ниже скрипт, который будет замерять различные реализации. #include <fxsaber\Benchmark\Benchmark.mqh>
Синхронный OrderSend сообщает об успешном выполнении быстрее, чем пинг до торгового сервера
Сабж на двух примерах. Пинг ~42 мс. Пример 1. 2020.09 . 29 01 : 20 : 48.220 Trades '' : modify order # 1326958 sell limit 0.01 AUDUSD at 0.70769 sl: 0.00000 tp: 0.70719 -> 0.70770 , sl: 0.00000 tp: 0.70719 2020.09 . 29 01 : 20 : 48.266 Trades '' : accepted modify order # 1326958 sell limit 0.01
MT5 и скорость в боевом исполнении
MT5 - шустрая платформа. Но есть узкие горлышки, которые сводят на нет все старания быстрой торговли. Хотелось бы собрать проблемы здесь, обсудить и решить их где-то своими силами, где-то с помощью Разработчиков
Лимитники/тейки по текущей цене в Терминале (не в Тестере)
Сабж рассматривался на форуме неоднократно. Рассказывал, что с этими ордерами происходит в Терминале и в Тестере. Но решил все же создать отдельную ветку по теме. И только по Терминалу, чтобы касаться больного - реальных счетов. Для сокращения будем называть лимитные ордера и тейки открытых позиций
Применение к трейдингу решения красивой задачи на теорию вероятности
Задача. Два игрока A и B знают, что будут разделены (никакого обмена информацией) и тогда получат независимые друг от друга бесконечные последовательности A[i] , B[i] из ноликов/единичек - результат подбрасывания классической монетки. Когда получают свои последовательности, каждый называет номер An
Некоторые признаки правильных ТС
Рыночные закономерности не меняются в случаях Умножение цен символа на ненулевую константу. Переворот символа (1/Symbol) Как вывод, правильные ТС должны давать идентичные торговые сигналы при запуске на любом кастомном символе , полученным из оригинального действиями, что описаны выше. Например
Получаем в советник цены от EURUSD.broker1, а торговлю ведем на EURUSD.broker2.
Если кто исследовал такой метод торговли, включая, конечно, результаты Тестера, поделитесь информацией, пожалуйста. Сигнал-сервисы и копировщики - это другая тема, хоть и немного похожая. Отличие в том, что там идет копирование торговых сигналов с другого символа. А в сабже - только входные цены
Ускорение оптимизации индикаторных советников по ценам открытия
Простой, но эффективный (не проверял, но в теории ничто этому не противоречит при локальной оптимизации) вариант сабжа достигается включением в исходник всего одного инклудника, который включает только две свои функции - iCustom и CopyBuffer. iCustom При вызове формирует по входным параметрам