Блог им. sherman

TSLab. Корректная проверка, что вы вне позиции.

Сегодня вместе с разработчиками нашли ошибку в моих скриптах. Оказывается, список позиций в реальной работе передается уже заполненным, в лаборатории же он всегда пустой и формируется по мере расчета. Поэтому, когда вы находитесь в позиции нужно проверять еще  и текущий бар. Текущий бар должен быть больше бара открытия  позиции, иначе это может порождать забавные глюки. Типа открыл-закрыл. Меня кстати сегодня это спасло от лося случайно. Но проверку я все же переделал.
Итак правильная проверка:
if (
   position == null /* && other conditions*/
) {
   // try to buy or sell
} else {
   if (null == position || position.EntryBarNum > barNum)
     continue;

   // stop loss, take profit or close by market logic
}
77
2 комментария
>Много тестов проделано, если вошел, то жди некст.
Тут как раз и речь об этом. Нужно проверять что при исполнении скрипта приказы на закрытие позиции не сработают на том же баре, что и открытие. Такое может случиться, по описанным выше причинам.
avatar

Читайте на SMART-LAB:
Фото
Итоги первичных размещений ВДО и некоторых розничных выпусков на 13 марта 2026 г.
Следите за нашими новостями в удобном формате:  Telegram ,  Youtube ,  RuTube,   Smart-lab ,  ВКонтакте ,  Сайт
Мировой рынок золота столкнулся с ограничением добычи
Мировой рынок золота продолжает расти, несмотря на крайне ограниченное расширение добычи. По данным Всемирного совета по золоту (WGC), в 2025 году...
Разруливаем год Делимобиля в шоу «Акционеры. Цифры»
Провели эфир с топ-менеджерами оператора каршеринга — компании Делимобиль. Узнали из первых уст взгляд на финансовые результаты бизнеса за...
Фото
Совкомбанк МСФО 2025 г. - чем это лучше Сбера?
Совкомбанк опубликовал финансовые результаты за 2025 год. Чистая прибыль снизилась на 31% до 53,2 млрд руб., в 4-ом квартале снижение...

теги блога Deleted

....все тэги



UPDONW
Новый дизайн