"Кривая" история фьючерсов ФОРТС - страница 3

 
prostotrader:

Я ничего не забыл.

Любое тестирование - всегда ТОЛЬКО тестирование.

Но тестирование на истории - простая трата времени.

Единственная польза от истории - это макчимальные и минимальные значения инструмента и ВСЁ (без гарантии, что они не обновятся)! 

Ага, если Вы сегодня анализируете результаты Ваших онлайн-тестов за последние 3 месяца, то это - тестирование на будущих котировках, не на истории, которая больше не повторится? ахахах

Если бы Вы реально разрабатывали роботов и торговали ими - после 2-3 месяцев реальной работы и сравнения с тестами на том же периоде Вы бы уже с большой точностью предсказывали поведение аналогичной системы в реальных торгах, в том числе рабочие объемы/проскальзывания в разное время торгового дня.

 

Этап тестирования на истории - очень важен, идеи можно быстро проверить и сразу отвергнуть или принять для дальнейшей разработки.

Тестирование на истории ничего не гарантирует на 100%, как и тестирование онлайн! Но очень сильно ускоряет разработку и проверку систем, вполне научным способом.

Цикл: Разработал систему - протестировал на 3-летней истории, в том числе out of sample - запустил в реал - сравнил следующие 1-2 месяца реал/тест - внёс изменения.

С каждым таким циклом, каждой системой, качество моделирования будет повышаться.

 
dimnik:

Ага, если Вы сегодня анализируете результаты Ваших онлайн-тестов за последние 3 месяца, то это - тестирование на будущих котировках, не на истории, которая больше не повторится? ахахах

Если бы Вы реально разрабатывали роботов и торговали ими - после 2-3 месяцев реальной работы и сравнения с тестами на том же периоде Вы бы уже с большой точностью предсказывали поведение аналогичной системы в реальных торгах, в том числе рабочие объемы/проскальзывания в разное время торгового дня.

 

Этап тестирования на истории - очень важен, идеи можно быстро проверить и сразу отвергнуть или принять для дальнейшей разработки.

Тестирование на истории ничего не гарантирует на 100%, как и тестирование онлайн! Но очень сильно ускоряет разработку и проверку систем, вполне научным способом.

Цикл: Разработал систему - протестировал на 3-летней истории, в том числе out of sample - запустил в реал - сравнил следующие 1-2 месяца реал/тест - внёс изменения.

С каждым таким циклом, каждой системой, качество моделирования будет повышаться.

Удачи!
 
Alexey Kozitsyn:
Лично я бы назвал вход с использованием анализа стакана - уже входом в экстремальных условиях. Чем больше объем сделки - тем больше экстремальность. Чем медленнее соединение - тем больше экстремальность. Тут только тест в реальном времени в текущих реалиях МТ5. Историю стакана даже не собрать/синхронизировать.

Да просто в головах людей один только ФОРЕКС

И думать никто не хочет.  

 
Alexey Kozitsyn:
Лично я бы назвал вход с использованием анализа стакана - уже входом в экстремальных условиях. Чем больше объем сделки - тем больше экстремальность. Чем медленнее соединение - тем больше экстремальность. Тут только тест в реальном времени в текущих реалиях МТ5. Историю стакана даже не собрать/синхронизировать.

Это то же самое, как если бы первому радисту азбуки Морзе сказали, что лет через 15 люди будут передовать радиволнами звучание целых оркестров. Он бы тоже не поверил.

 
prostotrader:

Вы совсем не понимаете торговлю на ФОРТС

Дело в том, что советник принимает решение на покупку/продажу по ценам из стакана,

причём, отдав приказ на покупку/продажу, это вовсе не означает, что сделка совершится

по указанной Вами цене (если вообще совершится, в зависимости от типа ордера). 

Тестирование в реальном времени - это ОГРОМНАЯ разница тестирования на истории! 

Не забывайте, что при тестировании на истории Вы ОДИН покупатель/продавец! 

У Вас скальперская стратегия?
 
-Aleks-:
У Вас скальперская стратегия?
Нет
 

То что тестер МТ5 далек от того, что требуется для создания робота для торговли на бирже, и как его желательно доработать, рассматривалось мной подробно почти год назад в теме https://www.mql5.com/ru/forum/75336.

К сожалению за год ничего не изменилось - даже обещанные летом 2016г в одном из постов Рустама кастомарные датафиды не появились. MQ больше заботят проблемы развития коннекторов к биржам, доступность Магазина для советников-сливаторов и нужны игроманов, которые торгуют с смартфонов, чем потребности реальных алготрейдеров в качественном инструменте для тестирования.

Но все же  MT5 пользуюсь для грубого прогона идей на базовых активах за 1-2 года по М1. Если идея проходит, то провожу углубленное тестирование на платформе stocksharp - там и эмуляция стаканов из М1, и построение стаканов на ордерлоге и прочие полезные вещи. К сожалению эта платформа в разы сложенее МТ5 с т.зр. трудозатрат и кодинга, поэтому МТ5 остается в арсенсале как первичный грубый и простой тестер.

ПРО-версия тестера с учетом особенностей биржевого рынка
ПРО-версия тестера с учетом особенностей биржевого рынка
  • www.mql5.com
Тема является продолжением темы "Нужна ли версия "PRO" тестера стратегий?
 
Sergey Trader:

То что тестер МТ5 далек от того, что требуется для создания робота для торговли на бирже, и как его желательно доработать, рассматривалось мной подробно почти год назад в теме https://www.mql5.com/ru/forum/75336.

К сожалению за год ничего не изменилось - даже обещанные летом 2016г в одном из постов Рустама кастомарные датафиды не появились. MQ больше заботят проблемы развития коннекторов к биржам, доступность Магазина для советников-сливаторов и нужны игроманов, которые торгуют с смартфонов, чем потребности реальных алготрейдеров в качественном инструменте для тестирования.

Но все же  MT5 пользуюсь только для грубого прогона идей на базовых активах за 1-2 года по М1. Если идея проходит, то провожу углубленное тестирование на платформе stocksharp - там и эмуляция стаканов из М1, и построение стаканов на ордерлоге и прочие полезные вещи. К сожалению эта платформа в разы сложенее МТ5 с т.зр. трудозатрат и кодинга, поэтому МТ5 остается в арсенсале как первичный грубый и простой тестер.

Не соглашусь с Вами по поводу того, что МТ5 "далёк" для создания роботов для торговли на бирже.

Более трёх лет создаю роботов для ФОРТС, которые успешно торгуют. 

Есть серьёзные недоработки, которые, действительно долго не исправляются, но и в других

ПО есть ОГРОМНЫЕ недостатки (stocksharp не исключение).

Если бы на рынке ПО для Биржи был бы хороший темминал, который бы отвечал ВСЕМ потребностям,

то будьте уверены, что мы все были бы уже там :) 

 

Я, как раз для тестирования, открыл демо на MetaQuotes-Demo. Там, вроде бы, есть архив за нужный период. Правда, нет склейки, что усложняет использование некоторых индикаторов, которым требуется история. 

В принципе, сами котировки меня устраивают (по крайней мере в рамках тестирования текущей стратегии), но есть какие-то проблемы с определением ГО.

Например, это:

SymbolInfoDouble(active_symbols[symbol_number], SYMBOL_MARGIN_INITIAL)

даст корректное значение ГО,

а если воспользоваться

OrderCalcMargin(ORDER_TYPE_BUY, active_symbols[symbol_number], 1.0, SymbolInfoDouble(active_symbols[symbol_number], SYMBOL_ASK), calc_margin))

ГО прыгает, как захочет. Постоянно меняется в течение одной сессии, и часто оказывается раза в 3 выше. По крайне мере, это наблюдается в 2015 - 2016 годах. По январю 2017 года, вроде бы, все считается корректно.

Причем, если, например, определить ГО с помощью OrderCalcMargin, разместить ордер (стоп-лимит), а потом через несколько минут попытаться его модифицировать (например, поменять стоп-цену), то может оказаться, что ГО поменялось и он удаляется (no money).

Может быть, я что-то не понимаю или не так делаю?

 
generaler:

Я, как раз для тестирования, открыл демо на MetaQuotes-Demo. Там, вроде бы, есть архив за нужный период. Правда, нет склейки, что усложняет использование некоторых индикаторов, которым требуется история. 

В принципе, сами котировки меня устраивают (по крайней мере в рамках тестирования текущей стратегии), но есть какие-то проблемы с определением ГО.

Например, это:

SymbolInfoDouble(active_symbols[symbol_number], SYMBOL_MARGIN_INITIAL)

даст корректное значение ГО,

а если воспользоваться

OrderCalcMargin(ORDER_TYPE_BUY, active_symbols[symbol_number], 1.0, SymbolInfoDouble(active_symbols[symbol_number], SYMBOL_ASK), calc_margin))

ГО прыгает, как захочет. Постоянно меняется в течение одной сессии, и часто оказывается раза в 3 выше. По крайне мере, это наблюдается в 2015 - 2016 годах. По январю 2017 года, вроде бы, все считается корректно.

Причем, если, например, определить ГО с помощью OrderCalcMargin, разместить ордер (стоп-лимит), а потом через несколько минут попытаться его модифицировать (например, поменять стоп-цену), то может оказаться, что ГО поменялось и он удаляется (no money).

Может быть, я что-то не понимаю или не так делаю?

https://www.mql5.com/ru/forum/94396/page4#comment_2783794
Причина обращения: