Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Все, заработало, правда через тестер медленней чем через скрипт, но зато любое количество индикаторов,
да и при тестировании пришлось все ядра отключить, только на 1 тестить тк результаты на несколько частей разделяет, но я думаю что пусть разделяет проще потом все скопировать в 1 файл, чем ждать
Почему terminal.exe грузит 2х ядерный процессор на 50% при 7-10 активных пользовательский индикаторах, MT4 не грузит ?
Почему terminal.exe грузит 2х ядерный процессор на 50% при 7-10 активных пользовательский индикаторах, MT4 не грузит ?
Мало подробностей. Как сравниваете? Какие именно индикаторы? Что еще происходит в терминале? Есть исходники индикаторов? На каком символе/периоде?
Здравствуйте. Проблема в МетаТрейдере ЧЕТВЕРТОМ
Проблема с отложенными ордерами в тестере, конкретно с датой истечения.
Вот таким образом открывается новый ордер, т.е если он не сработал за час, сервер должен его закрыть.
Далее делаю проверку какая все таки получилась дата экспирации:
Что получаю при работе советника в тестере:
2013.03.01 12:45:58 2012.01.11 11:00 #советник# EURUSD,H1: open #1 sell limit 2.00 EURUSD at 1.27972 ok
2013.03.01 12:45:58 2012.01.11 11:00 #советник# EURUSD,H1: Alert: OrderExpiration = 2012.01.11:12:00
2013.03.01 12:45:58 2012.01.12 16:29 Tester: order #1, sell 2.00 EURUSD is opened at 1.27972
То есть дата и время истечения выставлены правильно, как я хочу, но закрытия по времени истечения не происходит - происходит открытие позиции более, чем через сутки.
Я перерыл уже несколько форумов, проблема встречается давно.
Мало подробностей. Как сравниваете? Какие именно индикаторы? Что еще происходит в терминале? Есть исходники индикаторов? На каком символе/периоде?
Сравниваю индикаторы в MT4 мною написанные, перенесенные в MT5. В терминале только индикаторы. Исходники есть. От символа не зависит фючь РТС. Период M1
Вся БЕДА в том, что из-за загрузки процессора ПЕРЕСТАЮТ прорисовываться новые свечки и цены !!!!!!!!!!!!!!!
(рисунки https://www.mql5.com/ru/forum/9926/page4 )
Сравниваю индикаторы в MT4 мною написанные, перенесенные в MT5. В терминале только индикаторы. Исходники есть. От символа не зависит фючь РТС. Период M1
Вся БЕДА в том, что из-за загрузки процессора ПЕРЕСТАЮТ прорисовываться новые свечки и цены !!!!!!!!!!!!!!!
(рисунки https://www.mql5.com/ru/forum/9926/page4 )
Всем добрый день! Прошу помощи у опытных.
Ситуация следующая. Пробую MT5 на ФОРТС. Есть советник, среди прочего по сигналам он выставляет отложенные ордеры Stop Buy и Stop Sell.
При прогоне советника в Тестере стратегий заметил, что выставленные советником ордера Stop Buy срабатываются (заключается сделка) раньше, чем это необходимо в соответствии с ценой, при достижении которой ордер должен быть исполнен.
Структура торгового запроса на установку отложенного ордера Stop Buy следующая:
В выражениях
mrate[1].close+StopSellи
mrate[1].close+StopSellTakeошибки нет, они дают нужное значение цены при достижении которой ордер должен быть исполнен и цены тейк профит.
Соответственно вопрос, по какой цене MT5 контролирует условие срабатывания выставленных отложенных ордеров Stop Buy и Stop Sell - по цене ask и bid или по цене последней сделки?
Т.к. использование советника предполагается на реальной бирже ФОРТС, то интересует, чтобы цена срабатывания была по последней цене сделки.
Есть предположение, что при тестировании цена срабатывания берется ask или bid поэтому на графике нет нужной цены срабатывания по цене последней сделки. В руководстве прочитал, что "Для инструментов с режимом "Биржевое исполнение" срабатывание всех типов ордеров осуществляется по цене Last (цена последней совершенной сделки).". Проверяю режим исполнения для нужного мне инструмента RIH3
терминал возвращает "Режим исполнения сделок: 3". 3 - это вроде биржевое исполнение, значит цена срабатывания должна быть Last. Но отложенные ордера по прежнему исполняются тогда, когда на графике еще нет цены срабатывания.
Тестирование провожу на демо-сервере ФОРТС брокера.
stap:
Поскольку вопрос касается тестирования, необходимо учитывать следующее. При тестировании генерируются тиковые последовательности. Тиковые последовательности генерируются исходя из исторических bid-значений 4-х контрольных точек (Open, High, Low и Close). Соответственно, в тестере эксперт обрабывает тики, сгенерированные на основе bid-значений.
Второй момент. На сегодняшний день исторические данные не хранят значения цены last. Достаточно посмотреть табличку из раздела "Справочник MQL5 - Доступ к таймсериям и индикаторам". Среди функций типа CopyClose() или CopyLow() Вы не найдётё функцию CopyLast(). Соответственно, даже при желании невозможно сгенерировать тиковую последовательность на основе last-значений цены.
Попробуйте посмотреть также статьи Основы тестирования в MetaTrader 5 и Алгоритм генерации тиков в тестере стратегий терминала MetaTrader 5.
Поскольку вопрос касается тестирования...
Во-первых, благодарю за оперативный ответ. Ваша информация оказалась полезной для понимания.
Проверил, действительно стоп-приказы срабатываются раньше, чем на графике формируется цена (есть факт заключения реальной сделки), указанная в ордере как цена исполнения, по причине наличия котировок ask и bid, равных цене исполнения ордера.
То есть получается, что терминал контролирует исполнение отложенных ордеров не по ценам совершенных на бирже сделок, а по ценам поступающих котировок на покупку или продажу. По крайней мере в режиме тестирования советников. Поправьте меня, пожалуйста, если я не прав.
Кроме того, решил провести маленький эксперимент. Задача - выяснить исторические значений ask и bid, имеющиеся и используемые для тестирования советников. Вводные: биржа - ФОРТС, сервер - боевой одного из брокеров, инструмент - RIH3, период с 17.12.12 г. по 12.03.13 г., для получения исторических значений ask и bid прогнал в Тестере стратегий советник с кодом (тестирование проводилось в режиме OHLC на М1)
Результат оказался интересным. Значения спреда котировок ask и bid оказалось постоянным и равнялось от 10 до 340 пунктов в разные отрезки времени. Например, с 10:00:00 20.02.13 по 18:49:59 25.02.13 спред на каждом тике составлял 140 пунктов, а с 19:00:00 25.02.13 до 18:44:59 26.02.13 был 30 пунктов, далее с 19:00:00 26.02.13 до 18:49:59 в каждый тик спред равнялся 270 пунктов и т. д. Я конечно не мамонт фондового рынка, но спреды 140, 270 и более пунктов на ликвидном фьючерсе РТС - это большая редкость.
Вобщем вывод у меня один - в целях тестирования советников в Тестере стратегий терминал MT5/брокер/биржа (уж не знаю кто может быть еще) предлагает точно не исторические значения цен ask и bid.
Отсюда возникают два вопроса:
1. Как достоверно оттестировать советника (=торговую стратегию), если отложенные ордера будут исполняться в режиме тестирования по ценам ask и bid да еще не соответствующим реальным значениям. Работая до этого на ФОРТС в терминале Quik вообще имеется твердое убеждение, что отложенные ордера должны срабатывать не по ценам котировок ask и bid (= ценам по которым не было сделок. к примеру по малоликвидному инструменту я вообще могу послать в стакан цену с огромным спредом), а только если по цене, указанной в ордере как цена исполнения, на бирже совершена реальная сделка.
2. Если в режиме тестирования цены ask и bid не являются исторически достоверными, то по каким ценам будет контролироваться исполнение отложенных ордеров в режиме реальных торгов - тоже по ценам ask и bid? Реальным и достоверным, т.е. приходящим с биржи? И если в руководстве к терминалу написано, что "Для инструментов с режимом "Биржевое исполнение" срабатывание всех типов ордеров осуществляется по цене Last (цена последней совершенной сделки).", то почему тогда в режиме тестирования по инструментам с режимом биржевого исполнения в свойствах, наступление условий исполнения отложенных ордеров происходит по bid и ask? Или это только при тестировании, а при реальных торгах будет как написано в руководстве, т.е. контроль исполнения отложенных ордеров будет осуществляться/осуществляется по цене реально совершенных сделок?
Извиняюсь, что много написал, решил поделиться мыслями, может пригодиться кому для истории...