Общие вопросы по разработке > Время заявки

Общие вопросы по разработке в Альфа-Директ 4. Обсуждение разработки пользовательских индикаторов, стратегий.
Сергей
Сообщения: 34
Зарегистрирован: 01 апр 2016, 17:03

Время заявки

Непрочитанное сообщение Сергей » 02 дек 2016, 19:27

Добрый... подскажите можно как нибуть указать время жизни заявки? Например сигпал поступил в 10,00,00 ..заява не прошла так как пошло сильное движение...можно прописать условие снятия заявы через энное количество баров после сигнала?

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

Re: Время заявки

Непрочитанное сообщение evge » 02 дек 2016, 21:09

Вариант 1

Счетчик в виде глобальной переменной завести и увеличивать его в OnUpdate()
его же проверять на предельное значение и делать при достижении максимума

CancelActiveOrders(leaveStop) – снять активные заявки.
leaveStop = true – оставить стоп к позиции.
leaveStop = false – снять все.

Вариант 2

Запоминать в глоб. переменной CurrentIndex бара, где был сигнал

Разница между CurrentIndex (текущий бар в будущем) и этой глоб. перемнной будет = N баров от бара сигнала.
т.е. в условии проверяем что-то типа этого

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

if (CurrentIndex - IndexSignalBar > 10 && CurrentPosition() == 0) CancelActiveOrders(true)
никогда такого не было и вот опять


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

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

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