Общие вопросы по разработке > как правильно тестировать EnterShortLimit и EnterLongLimit?

Общие вопросы по разработке в Альфа-Директ 4. Обсуждение разработки пользовательских индикаторов, стратегий.
дуьфыеук
Сообщения: 19
Зарегистрирован: 21 дек 2017, 17:13
Благодарил (а): 6 раз

как правильно тестировать EnterShortLimit и EnterLongLimit?

Непрочитанное сообщение дуьфыеук » 13 июл 2018, 09:45

есть ли принципы правильного тестирования лимитных ордеров на истории?
ошибка в том, что ордер срабатывает с тейком на одном баре

Изображение

Аватара пользователя
evge
Администратор
Сообщения: 1641
Зарегистрирован: 04 фев 2016, 09:46
Откуда: Млечный путь, планета Земля
Благодарил (а): 64 раза
Поблагодарили: 294 раза
Контактная информация:

Re: как правильно тестировать EnterShortLimit и EnterLongLimit?

Непрочитанное сообщение evge » 13 июл 2018, 17:32

выставлять тейк только когда позиция открыта, т.е. не ставить так

EnterLongLimit();
BreakingStop();

а только так

EnterLongLimit();

и проверять на каждом баре состояние, если позиция изменилась ставим \ изменяем стоп.

BreakingStop();

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

Аватара пользователя
Den
Сообщения: 344
Зарегистрирован: 09 фев 2016, 15:52
Благодарил (а): 14 раз
Поблагодарили: 4 раза

Re: как правильно тестировать EnterShortLimit и EnterLongLimit?

Непрочитанное сообщение Den » 13 июл 2018, 20:55

а смысл тестировать фракталы?
Вложения
ZZ.png
ZZ.png (106.55 КБ) 4010 просмотров

Аватара пользователя
evge
Администратор
Сообщения: 1641
Зарегистрирован: 04 фев 2016, 09:46
Откуда: Млечный путь, планета Земля
Благодарил (а): 64 раза
Поблагодарили: 294 раза
Контактная информация:

Re: как правильно тестировать EnterShortLimit и EnterLongLimit?

Непрочитанное сообщение evge » 14 июл 2018, 08:06

Дело не в фракталах и заглядывании в будущее.
Тут проблема тестирования, оно играет в оптимизм и считает что открытие по лимиту и выставление сразу тейка в пределах текущего бара обязательно исполнится.

пример НЕ фрактального "Грааля"

Код: Выделить всё

/**

**/

function Initialize()
{
   StrategyName = "NeFractalGraal";
   AddParameter("P1", 5, "", 1);
   AddInput("I", Inputs.Candle, 1, true, "SBER=МБ ЦК");
   LongLimit = 1000;
   ShortLimit = 1000;
}

function OnUpdate()
{
EnterLongLimit(I.Close[0] - GetPriceStep() * P1);
BreakingStop(GetPriceStep() * 1000, GetPriceStep(), SignalPriceType.DeltaFromAveragePrice);
}


NeFractalGraal-01.png
NeFractalGraal-01.png (31.53 КБ) 4000 просмотров
никогда такого не было и вот опять


Вернуться в «Общие вопросы по разработке»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 6 гостей