Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Если OnCalculate заменить на OnTick, то результат выходит идентичный. А вот если такой советник:
то все же иногда не успевает поймать тики, что ловит предыдущий результат. Однако, это лишь говорит о том, что не пойманные тики длились столь мизерное время, что их даже поймать было невозможно, а значит и проторговать. То бишь это практически индикатив, по которому все равно не было бы никакого исполнения. А значит не стоит их даже рассматривать.
Кстати, помимо эквиобъемных баров, ввел бы и бары, основанные на тиках, длительностью больше определенного порога. Чтобы индикативную составляющую убрать. Думаю, было бы наглядно видно, как эти бары будут поуже, чем те, что строит MT4. Т.к. вершинки чаще всего бывают индикативными.
Вы пропустили такой важный момент, который я указал Выше, как запуск индикатора в выходные. На выходных нет тиков, но индикатор при запуске отрабатывает их. Как Вы смогли это проверить сегодня, когда рынок открыт?
Поясните еще раз этот момент. Не понял его совсем.
Ломать - не строить. Вот пусть этот паренек создаст что-нибудь достаточно популярное, тогда и посмотрим на него и его решения.
Насчет же новой архитектуры у меня нет никаких предпосылок, чтобы не верить разработчикам терминала. Как программист я их понимаю. В обществе трейдеров нет массового запроса на тиковую историю. Тому подтверждением мои работы, выложенные в свободном доступе, в том числе и здесь. За год с небольшим интерес к этой теме проявило едва с десяток человек. Поэтому соотношение затрат на изменения архитектуры терминала к возможной финансовой выгоде получается неимоверно большим. Вот и не берутся они за это.
Паренек делает MT4 тестер полноценным. Ничего он не ломает, а добавляет функционал, который востребован огромным количеством людей (посмотрите просто форумы по скальперам, HFT, новостникам и пробойщикам). Вашим решением никто пользоваться не будет, т.к. оно не делает тестер полноценным. А у того парня решение с этим справляется. Поэтому не просто есть к нему интерес, а люди ежемесячно платят по всему миру ему абонентку, а разработчики поддерживают такое положение вещей.
Уважаю разработчиков. Не уважал бы - не критиковал бы. Что вы их оправдываете? Боитесь обидеть что ли? Вроде, логично мыслю. Если найдутся форумчане, которым есть что сказать по теме - велкам. Не один так думаю. Просто большинство не видят смысл высказываться, т.к. позиция разработчиков почти всегда остается неизменной. Они бы и рады изменить ситуацию, но раз сказали "нет", надо отвечать за свое слово.
А решение паренька так и остается единственным вариантом сделать MT4-тестер полноценным на все 100%.
Поясните еще раз этот момент. Не понял его совсем.
1. Запускаете индикатор со счетчиком тиков в рабочий день.
2. Выключаете терминал (индикатор не отключали от графика).
3. В выходной день, когда нет тиков, включаете терминал (и автоматически загружается индикатор).
OnCalculate индикатора сработает не один раз, как этого следовало бы ожидать, а несколько раз. Это простая демонстрация того факта, что индикатор получает пропущенные им тики. Хотя для этого случая есть и другое объяснение - терминал хранит некоторое количество последних тиков. Вот его и получает индикатор. Тем не менее, советник не получает даже этих тиков.
Чтобы удостовериться на 100% в том, что индикатор не пропускает тики, следует провести более сложный опыт:
1. Открыть два идентичных терминала.
2. На одном терминале индикатор должен работать без помех, а на втором - с небольшой задержкой в несколько секунд, достаточной, чтобы за ее время приходили тики.
3. Второй индикатор после окончания паузы получит все тики (до некоторого максимального количества), которые пропустил.
Паренек делает MT4 тестер полноценным. Ничего он не ломает, а добавляет функционал, который востребован огромным количеством людей (посмотрите просто форумы по скальперам, HFT, новостникам и пробойщикам). Вашим решением никто пользоваться не будет, т.к. оно не делает тестер полноценным.
Речь ведь не о том, что моим решением не пользуются, а в принципе об интересе к этой теме. Тех, кто высказывается на форуме о тиках, кот наплакал.
А у того парня решение с этим справляется. Поэтому не просто есть к нему интерес, а люди ежемесячно платят по всему миру ему абонентку, а разработчики поддерживают такое положение вещей.
"Поддерживают активно", т. е. сами как-то участвуют в этом? Или имеется в виду пассивная поддержка - не мешают?
Уважаю разработчиков. Не уважал бы - не критиковал бы. Что вы их оправдываете? Боитесь обидеть что ли?
Не оправдываю, но и навязывать другим свое мнение не имею привычки. Для того чтобы понять мотивы действий другого человека, достаточно посмотреть на ситуацию его глазами. Отпадает большее количество вопросов.
Вроде, логично мыслю. Если найдутся форумчане, которым есть что сказать по теме - велкам. Не один так думаю. Просто большинство не видят смысл высказываться, т.к. позиция разработчиков почти всегда остается неизменной. Они бы и рады изменить ситуацию, но раз сказали "нет", надо отвечать за свое слово.
А решение паренька так и остается единственным вариантом сделать MT4-тестер полноценным на все 100%.
Каждый, конечно, делает бизнес, как может. В свое время тоже пытался многое достроить в терминал МТ4. Но потом пришло простое понимание: использование недокументированных возможностей какого-либо приложения с прицелом ведения на этой основе своих долгосрочных проектов - путь в никуда. Разработчик приложения не обязан поддерживать недокументированный функционал. А потому все, что построено на таких вот лазейках, по определению недолговечно.
Примеры тому уже есть. Тот же Вадим Жунко намучился поддерживать свою библиотеку API от выхода одного билда к другому. Есть и другие примеры, которые написаны на чистом MQL, но тоже использовали недокументированные возможности. Сейчас они не работают.
Такой же финал рано или поздно ждет метод недокументированного повышения функционала тестера.
1. Запускаете индикатор со счетчиком тиков в рабочий день.
2. Выключаете терминал (индикатор не отключали от графика).
3. В выходной день, когда нет тиков, включаете терминал (и автоматически загружается индикатор).
OnCalculate индикатора сработает не один раз, как этого следовало бы ожидать, а несколько раз. Это простая демонстрация того факта, что индикатор получает пропущенные им тики. Хотя для этого случая есть и другое объяснение - терминал хранит некоторое количество последних тиков. Вот его и получает индикатор. Тем не менее, советник не получает даже этих тиков.
Чтобы удостовериться на 100% в том, что индикатор не пропускает тики, следует провести более сложный опыт:
1. Открыть два идентичных терминала.
2. На одном терминале индикатор должен работать без помех, а на втором - с небольшой задержкой в несколько секунд, достаточной, чтобы за ее время приходили тики.
3. Второй индикатор после окончания паузы получит все тики (до некоторого максимального количества), которые пропустил.
Воспроизвел. Советник:
Индикатор:
Результат:
Теперь однозначно видно, что событие прихода нового тика идентично и для советников и для индикаторов. Т.е. сборщик тиков через индикатор и через советник - одно и то же.Не оправдываю, но и навязывать другим свое мнение не имею привычки. Для того чтобы понять мотивы действий другого человека, достаточно посмотреть на ситуацию его глазами. Отпадает большее количество вопросов.
Каждый, конечно, делает бизнес, как может. В свое время тоже пытался многое достроить в терминал МТ4. Но потом пришло простое понимание: использование недокументированных возможностей какого-либо приложения с прицелом ведения на этой основе своих долгосрочных проектов - путь в никуда. Разработчик приложения не обязан поддерживать недокументированный функционал. А потому все, что построено на таких вот лазейках, по определению недолговечно.
Примеры тому уже есть. Тот же Вадим Жунко намучился поддерживать свою библиотеку API от выхода одного билда к другому. Есть и другие примеры, которые написаны на чистом MQL, но тоже использовали недокументированные возможности. Сейчас они не работают.
Такой же финал рано или поздно ждет метод недокументированного повышения функционала тестера.
Изложил только факты:
Господа, просветите, пожалуйста в таком вопросе...
Пишу свой тестер под свою же стратегию. Не на MQL4. Допустим, есть открытый ордер Buy с выставленным TP и SL. Предположим, цена Bid (тестирую на тиках) коснулась уровня TP (или поднялась чуть выше). Какое поведение тестера должно быть наиболее правильным в этом случае ? Сразу закрыть ордер с профитом или закрыть его, но по цене Bid, которая будет через секунду или две после касания ? По идее, в идеале, ордер должен быть закрыт сразу же, это, вроде, ясно. Какое поведение у тестера MT4 в такой же ситуации при использовании тиковой истории котировок ? И какое должно быть в идеале для максимального приближения к реальной торговле ?
Аналогичный вопрос по открытию ордера ? Сколько времени отвести тестеру на открытие ордера от момента поступления сигнала на открытие ?
P.S. Исполнение ордеров Market Execution.
Тестер меты исполнит по TP. На ECN должен исполниться по TP (если не на открытии сессии). На ECN/STP (или просто STP) - либо проскальзывание в обе стороны, либо реджект или исполнение с не отрицательным проскальзыванием.
Выбирайте сами режим. Самое простое, сделать идеальное исполнение, будто индикатива нет. Затем смотреть на результат, в зависимости от маркапа на цену. Если очень вкратце.
Изложил только факты:
Видео хакнутого тестера, где переменный спред (воспроизводятся бид и аск): https://vid.me/TYhW
Как видно, все отлично может работать, если захотеть.
Теперь однозначно видно, что событие прихода нового тика идентично и для советников и для индикаторов. Т.е. сборщик тиков через индикатор и через советник - одно и то же.
Вы запустили советник и индикатор на одном терминале. В тот момент, когда индикатор находится в паузе, весь терминал также находится в паузе. Советнику не на что реагировать.
Я говорил о двух способах проверки:
1. В выходные.
2. В онлайн на двух терминалах.
Вы запустили советник и индикатор на одном терминале. В тот момент, когда индикатор находится в паузе, весь терминал также находится в паузе. Советнику не на что реагировать.
2. В онлайн на двух терминалах.
Нет, я воспроизвел Ваш способ: на двух терминалах. Результат скомпоновал из логов этих терминалов.
Исходники приведены. Вы можете повторить и посмотреть логи буквально через пять минут работы.