Тестер и Реал - страница 4

 
komposter:
lna01:
komposter:
Потому что алгоритма определения последнего тика бара еще никто не придумал. Ни для тестера ни для реала.
А он нужен?
Мне? Нет.
Поэтому я и не поднимал эту тему ;)


Я имел в виду, что он вообще не нужен, правильнее любой тик считать последним :).

Да, в тестере режим "по ценам закрытия" делается коррекцией истории (Open[i] = Close[i+1]) и использованием значений индикаторов на первом баре.

 
YuraZ:

представим себе что 5 минут вообще нет тиков! а что! разве не может быть? - почему бы и нет


Мне кажется Вы не совсем разобрались, дожидаться тика предлагал как раз komposter :)

2 komposter : Андрей, сразу же извиняюсь, конечно Вы этого не предлагали. Просто в данной дискуссии Вы как бы олицетворяете противную сторону :)

 
Mathemat:
Candid, я, честно говоря, не вижу принципиального преимущества режима "по закрытию" над режимом "по открытию"
Да в общем это мелочь. Вот Карфаген ... Карфаген должен быть разрушен :)
 
lna01:
YuraZ:

представим себе что 5 минут вообще нет тиков! а что! разве не может быть? - почему бы и нет


Мне кажется Вы не совсем разобрались, дожидаться тика предлагал как раз komposter :)

2 komposter : Андрей, сразу же извиняюсь, конечно Вы этого не предлагали. Просто в данной дискуссии Вы как бы олицетворяете противную сторону :)


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

( понятно SATRT() вызывается именно по приходу тика! )

- открывться не дожидаясь тика... без прихода наверно можно - но зачем ?

 
YuraZ:
C другой стороны что бы открыться без тика, надо предпринять кое какие меры - зацикливания там всякие...

( понятно SATRT() вызывается именно по приходу тика! )

- открывться не дожидаясь тика... без прихода наверно можно - но зачем ?


Речь как раз о том, что открываться логично сразу после того как эксперт (вместе с используемыми им индикаторами) обработает очередной тик и решит что пора входить. А вот при тестировании на истории работа по ценам закрытия несколько ближе к такому логичному поведению,  чем работа по ценам открытия. Не намного, поэтому я в общем-то не собирался поднимать особого шума. Но и за истину постоять готов :)
 
Очень интересно сказал FuerMT (https://www.mql5.com/ru/forum/49732):
И о главном - о быстром рынке.
Никто не просит неизменности цен. Просьба дать открыться ПО-РЫНКУ. Т.е. открыться при попадании цены в slippage. Ваш алгоритм отфутболивает с реквотой, если цены нет в потоке, хотя цена исполнения попадает в диапазон текущая цена плюс-минус slippage.
Это - главная проблема. Проблема в том, что на быстром рынке ВООБЩЕ нельзя открыться с ЛЮБЫМ slippage, т.к. цена убегает из потока (хотя при этом может плясать на месте вверх-вниз). А открыться нельзя - нет цены в потоке - убежала.
Да я же slippage поставил 100. А плевать на Ваш slippage. Мы Вас защитим. Не дадим ошибиться. Вот Вам реквота.
Для меня это откровение. Главное - чтобы цена в поток попала, а не в интервал (цена, цена + slippage) при открытии длинной позиции. Странно это как-то...
 

Я понял, что важно и то и то, но попадание в поток проверяется раньше. Из всего этого я делаю вывод о том, что лучшее место для RefreshRates - непосредственно перед торговой операцией. Как быть если эксперт "тяжёлый" и хронически запаздывает? Определять собственный слиппаж - то есть допустимый уход текущей цены от цены, которая использовалась в расчёте. Что-то типа:

ModelBid = Bid;
RefreshRates();
if (MathAbs(ModelBid-Bid) > RobustThresholdForMyExpert) return(0);
else OrderSend(...);

Если уходов от позиции слишком много - эксперта в топку! Вот только не уверен, что в тестере по истории можно разумно определить этот RobustThresholdForMyExpert.

 
Еще раз убеждаюсь в том, что ничего лучше лимитных отложников нет... Попытка открытия по рынку - даже когда он кажется абсолютно спокойным и используются свежайшие котировки после RefreshRates() - может не пройти, каким бы ни был slippage. Я вообще не увидел в той ветке объяснения со стороны разработчиков, что же такое этот slippage, хотя они утверждали, что он "работает".
 
Mathemat:
Еще раз убеждаюсь в том, что ничего лучше лимитных отложников нет... Попытка открытия по рынку - даже когда он абсолютно спокоен и используются свежайшие котировки после RefreshRates() - может не пройти, каким бы ни был slippage.

Mathemat, по моему вывод о том, что истинно робастный эксперт должен работать только отложенными ордерами можно было сделать после первого же обрыва связи :)
 
Ну обрыв-то, на мой взгляд, доказывает только то, что при открытии ордера надо одновременно выставлять еще и как минимум стоп-лось. А отложенный лимитник - дополнительная защита от реквот. Кстати, реквоты и прочие прелести реального рынка не позволят добиться идентичности реала и результатов тестирования.