Похоже я некорректно задал вопрос, поэтому и не получил ответ. Попробую его перефразировать.
При тестировании текущий бар имеет такие данные: O=H=L=C=1.2877
Выставляется отложенный ордер buy stop по заявленной цене 1,2884, указывается SL 1,2850
Далее тестер вырисовывает эту свечу, этот отложенный ордер становится рыночным, Low свечи равен 1,2840 (это на 10 пунктов ниже уровня SL), но SL не срабатывает. То есть получается, что если выставлять отложенный ордер и указывать сразу SL, и если High и Low (тело свечи) зацепят и заявленную цену открытия ордера и уровень SL в пределах одной свечи, то ордер станет рыночным, но SL не сработает.
Помогите, что можно сделать, чтобы тестер исполнял SL на том же баре, в пределах которого отложенный ордер стал рыночным (конечно, если цена пробила уровень SL)?
Похоже я некорректно задал вопрос, поэтому и не получил ответ. Попробую его перефразировать.
При тестировании текущий бар имеет такие данные: O=H=L=C=1.2877
Выставляется отложенный ордер buy stop по заявленной цене 1,2884, указывается SL 1,2850
Далее тестер вырисовывает эту свечу, этот отложенный ордер становится рыночным, Low свечи равен 1,2840 (это на 10 пунктов ниже уровня SL), но SL не срабатывает. То есть получается, что если выставлять отложенный ордер и указывать сразу SL, и если High и Low (тело свечи) зацепят и заявленную цену открытия ордера и уровень SL в пределах одной свечи, то ордер станет рыночным, но SL не сработает.
Помогите, что можно сделать, чтобы тестер исполнял SL на том же баре, в пределах которого отложенный ордер стал рыночным (конечно, если цена пробила уровень SL)?
Похоже я некорректно задал вопрос, поэтому и не получил ответ. Попробую его перефразировать.
При тестировании текущий бар имеет такие данные: O=H=L=C=1.2877
Выставляется отложенный ордер buy stop по заявленной цене 1,2884, указывается SL 1,2850
Далее тестер вырисовывает эту свечу, этот отложенный ордер становится рыночным, Low свечи равен 1,2840 (это на 10 пунктов ниже уровня SL), но SL не срабатывает. То есть получается, что если выставлять отложенный ордер и указывать сразу SL, и если High и Low (тело свечи) зацепят и заявленную цену открытия ордера и уровень SL в пределах одной свечи, то ордер станет рыночным, но SL не сработает.
Помогите, что можно сделать, чтобы тестер исполнял SL на том же баре, в пределах которого отложенный ордер стал рыночным (конечно, если цена пробила уровень SL)?
Откройте минутный таймфрейм и посмотрите как развивалось движение внутри бара, может цена действительно вначале сходила вниз.
Я поставил режим моделирования: "по ценам открытия", поэтому тестер использует только 4 цены бара (O,H,L,C) и все. Движение цены внутри бара он не знает. Я где-то читал, что если возникает спорный момент, например, в пределах одного бара будет достигнут и SL и TP (что раньше, он, естественно не знает), то тестер будет считать, что сработал именно SL. Ну это и логично, ведь выбирается худший вариант. Но почему тестер игнорирует SL в описанном мною случае, не понятно...
Так вы же сами сказали тестирование по ценам открытия, поставьте тестирование по контрольным точкам сработает ваш стоплосс.
Да, похоже, вариант. Попробую. Но уже ради интереса, есть ли способы использования режима "по ценам открытия" и обхода выше описанной проблемы посредством, например, MQL-кода?
Но уже ради интереса, есть ли способы использования режима "по ценам открытия" и обхода выше описанной проблемы посредством MQL-кода?
Но уже ради интереса, есть ли способы использования режима "по ценам открытия" и обхода выше описанной проблемы посредством, например, MQL-кода?
Переработайте свой советник, что бы он пропускал все тики, кроме "создателя" нового тика - и все будет 1:1 - напр.
int start() { static datetime prevtime=0; if(prevtime == Time[0]) return(0); prevtime = Time[0]; if (OrdersTotal()<1) OrderSend(Symbol(),OP_BUYSTOP,1,1.2884,0,1.2850,0,NULL,0,0); return(0); }
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
Вот такая ситуация. То ли я не могу понять логику действий тестера, то ли недоработка компании-разработчика (вряд ли конечно).
Выставляется отложенный ордер buy stop, в нем сразу указан stop loss. Все нормально, ордер выставлен.
http://ipicture.ru/upload/100520/5kyU6Ya77U.png
http://ipicture.ru/upload/100520/USDUS6geT2.png
Вырисовывается следующий бар. И вот здесь отложенный ордер становится рыночным, но stop loss не срабатывает, хотя цена была ниже (1,2840).
http://ipicture.ru/upload/100520/K7ZOVTwJNS.png
http://ipicture.ru/upload/100520/rVXRy75d7E.png
Конечно, можно предположить, что цена вначале нарисовала нижнюю часть свечи, а затем верхнюю (поэтому сработал отложенный ордер, но не сработал SL). Но ведь это тестирование "по ценам открытия", "по сформировавшимся барам", а значит вроде как должен выбираться худший вариант, со срабатыванием стоп-лоса, если цена его достигла.
Или может я где-то ошибаюсь? Что поправить в коде, чтобы SL сработал на 1,2850 на текущем баре в данном примере?