Содержание статьи
- Доказательства и область применения
- Иллюстрация
- Процесс
- Три типа опорных уровней с разной информацией
- Идентификаторы сессий и временные метки соответствия требованиям.
- Объём в одно время сессии и учёт аукциона открытия
- Примеры синтетического диапазона открытия
- Разделите срок действия уровня и срок действия сделки.
- Разделите влияние уровня и влияние времени суток.
- Частые ошибки
- Практический список проверки
- Частые вопросы
- Источники исследования
Доказательства и область применения
Исходный индикатор описывает настраиваемые выносы уровней сессий; документация платформы и биржи определяет устройство сессий. Прибыльность предложенного детектора не подтверждена.
Практическая последовательность действий
- Определите сессиюВыберите торговую площадку, календарь и часовой пояс.
- Дождитесь завершения опорного окнаПубликуйте экстремумы прошлой сессии или диапазона открытия только после их доступности.
- Выявите последующий выносИспользуйте фиксированные буферы и подходящие версии уровней.
- Подтвердите и отправьте.Учитывайте получение закрытия бара и выбранную модель ордера.
- Оценить по типу сессииВключайте дни без сигнала, гэпы и граничные случаи календаря.
Три типа опорных уровней с разной информацией
PDH/PDL — это максимум и минимум предыдущего завершенного торгового дня. PSH/PSL относятся к выбранной завершенной сессии, а ORH/ORL описывают первые N минут текущей сессии. Их цены могут совпадать, не являясь независимыми данными. При необходимости следует хранить один базовый объект с соответствующими метками.
Session Sweeps от LuxAlgo позволяет выбирать сессию [1]. Независимой реализации нужны часовой пояс биржи и календарь [2][3], а не фиксированное местное время весь год. Лондон, Нью-Йорк и компьютер стратегии могут переводить часы в разные даты.
Уровни прошлого дня описывают старый диапазон, диапазон открытия — начало нового дня. Большой гэп может сразу вывести цену за весь прошлый диапазон. Возврат к PDH сам по себе не означает вынос: определите исходную сторону уровня и тип триггера — отбой, возврат за уровень или ретест пробоя.
Идентификаторы сессий и временные метки соответствия требованиям.
Предложенный session_id содержит торговую площадку, символ, calendar_date и session_template_version. Для акций США можно брать основную сессию, сохраняя премаркет отдельно. Помечайте сокращённые сессии, не выдумывайте недостающие бары ради одинакового 24-часового дня. У ночной сессии фьючерсов торговая дата может отличаться от местной календарной даты.
В диапазон открытия от 09:30 до 09:45 входят пятиминутные бары с началом 09:30, 09:35 и 09:40. Публикуйте окончательные уровни лишь после 09:45. Незавершённый бар 09:40 не раскрывает конечный минимум OR. Полуоткрытые интервалы [start,end) не дают событию на границе попасть в оба окна.
После публикации поддержки S предложенный вынос вниз требует предыдущего закрытия выше S, low<S−b и close>S+e. Используйте b=max(2 ticks,0.10ATR) и e=max(2 ticks,0.15ATR), где ATR рассчитан до сигнального бара. Многобаровый возврат K=3 — отдельная версия. N, K и буферы — исследовательские настройки, не доказанно прибыльные значения.
Сохраняйте window_end и время получения публикации. Поздно полученный исправленный диапазон не разрешает задним числом более ранний вход. Определите, меняют ли исправления только будущих кандидатов или исключают затронутый период исследования; сохраните исходный журнал решений.
on_trade_received(trade):
window = configured_half_open_window(trade.event_time)
if window.start <= trade.event_time < window.end:
update_extrema_for_that_window_only(window,trade)
on_window_data_ready(window,received_at):
if not window_complete_under_declared_watermark_policy: return
if window.current_fingerprint == window.last_published_fingerprint: return
available_at = max(window.end,received_at) + processing_delay
publish_frozen_version(window.extrema,available_at=available_at)
window.last_published_fingerprint = window.current_fingerprint
for closed_bar in later_bars:
levels = versions_available_before(closed_bar.start)
detect_sweep(levels,closed_bar)
# Publish once per data version; boundary trades belong to the following window.
# Late corrections publish a future version and never backdate an order.
Объём в одно время сессии и учёт аукциона открытия
Сравнивайте объём сигнального бара с тем же интервалом прошлых сессий. Явно определите исключения для пропусков и коротких дней. Данные с аукционным объёмом в первом баре нельзя напрямую сравнивать с историей, где эти сделки удалены.
RVOL при выносе и положение относительно текущего VWAP — отдельные предлагаемые признаки. Утреннее решение не может использовать итоговый VWAP дня. Вынос PDL при цене ниже VWAP может отражать одно движение вниз, поэтому измеряйте дополнительный вклад фильтров, а не просто считайте подтверждения.
Сигналы непосредственно до и после запланированной новости могут исполняться по-разному. Заранее известный календарь выделяет эти окна. Назвать день «плохими новостями» после наблюдения цены — использование знания задним числом. Храните заявленное время отдельно от фактического получения данных или заголовка.
Примеры синтетического диапазона открытия
Пусть на графике предполагаются OR15 high=205 и low=200. Но в 09:43 цена достигает 199.80 и восстанавливается. Торговать вынос предполагаемого итогового минимума 200 нельзя: диапазон открытия ещё формируется. Если наблюдение 199.80 корректно и входит в это окно, окончательный минимум OR обязан его учитывать.
В другом примере диапазон открытия уже завершён с low=200. Позднейший бар 09:50 имеет low=199.60 и close=200.40. Если нижняя граница буфера, заданная размером тика, не преобладает, предыдущий ATR=1 даёт b=0.10 и e=0.15, поэтому возврат проходит условия. Вход после закрытия по 200.45, стоп 199.50 и цель 202.35 дают риск 0.95 и прибыль до затрат 1.90. Цель фиксируется при входе, не выбирается по будущему максимуму дня.
Убыточный путь достигает 199.45, защитный ордер исполняется по 199.48 с убытком 0.97. Другой бар закрывается на 199.70 и удерживается ниже ORL: это контрольный сценарий пробоя и закрепления, не вход на разворот. Новый календарный день не должен заменять стоп существующей сделки новым PDL.
Разделите срок действия уровня и срок действия сделки.
Опорный уровень может истечь с закрытием сессии, а открытая сделка следует своему правилу выхода. Для ожидающих кандидатов базовый вариант берёт лишь первый допустимый вынос на level_id в сессии. Поздние касания проверяйте отдельно, чтобы выяснить, сосредоточен ли результат в первом подходе.
Если для входа требуется пробой выше свечи восстановления, ордер стоп-входа может существовать только после завершения этой свечи. Триггер следующей свечи с последующим стоп-лоссом по-прежнему считается сделкой, даже если окончательное закрытие выглядит непривлекательным. Свеча, пересекающая обе границы диапазона, требует внутрибарных записей или флага недостаточной последовательности.
Сохраните UTC, часовой пояс биржи, время исходного события и местное время получения. При переносе фьючерсного контракта не сравнивайте нескорректированную цену нового контракта с уровнем предыдущего дня по старому контракту. График непрерывного исследования и торгуемый контракт должны иметь документально подтвержденное соответствие.
Практический тест должен включать позднее открытие и остановку торгов, пересекающую временную границу диапазона. Определите, считается ли диапазон открытия по часам или по прошедшим доступным для торговли минутам. Это даёт разные уровни; нельзя менять определение после выбора более выгодной сделки.
Разделите влияние уровня и влияние времени суток.
Сравните выносы PDH/PDL со скользящими опорными уровнями на сходном расстоянии от цены или условными уровнями сопоставимой плотности. Согласуйте минуту сессии, размер гэпа и волатильность. Сравнение выносов на открытии со всеми спокойными минутами может в основном измерять эффект самого открытия.
Сообщайте результаты по типу уровня, шаблону сессии, режиму летнего времени и категории гэпа. Проверяйте праздники и короткие сессии календарным механизмом. Математическое ожидание после затрат и доля неисполнений дополняют результаты капитала, включающие сессии без сигнала.
В ходе тестирования границ следует учитывать сделки, совершенные точно в моменты времени window_start и window_end, дублирующиеся временные метки, отсутствующие бары, поздние коррекции и первую сессию после смены часового пояса. Необходимо сохранять версию календаря, используемого для каждого запуска. Небольшое количество привлекательных примеров не доказывает, что стратегия предоставляет достаточно возможностей для оправдания затрат на мониторинг и исполнение.
Частые ошибки
Использовать итоговые экстремумы незавершённого дня
Итоговый экстремум содержит информацию, ещё недоступную в течение сессии.
Фиксировать одно местное время открытия на весь год
Перевод часов и различия в календаре могут сместить желаемый временной интервал.
Многократно считать совпадающие уровни
Показатели ORL, минимальное значение сессии и PDL на том же уровне цены могут описывать одно и то же событие.
Список проверки перед использованием метода
Отмечайте пункты после проверки на своих данных. Прогресс сохраняется в этом браузере и не подтверждает прибыльность стратегии.
Частые вопросы
Возможен ли вынос во время формирования диапазона открытия?
Цена может пересечь предварительную границу, но это уже другой механизм. Он не может использовать окончательный ORH/ORL до завершения открытия окна.
Обязательно ли первый вынос лучший?
Нет. Принцип «первого касания» — это предлагаемая политика, призванная сделать эпизоды независимыми друг от друга. Последующие касания следует сохранять и тестировать как отдельные варианты.
Источники исследования
Каждый источник подтверждает указанное рядом определение или доказательство. Псевдокод, искусственные примеры и предлагаемые параметры требуют отдельной проверки.
- Session SweepsLuxAlgo on TradingView. Изучено исходное описание выносов сессионных уровней; прибыльность не проверена. Проверено: .
- SessionsTradingView. Изучены механика сессий и часовые пояса, не исследование торговой альфы. Проверено: .
- Holidays and Trading HoursNYSE. Открыт официальный календарь и справочник торговых часов. Проверено: .
Связанные методы
Примечание о рисках
Материал предназначен для обучения и планирования исследований, а не является финансовой рекомендацией. Backtest моделирует прошлые данные, не гарантирует будущую доходность и не совершает реальные сделки. Методы библиотеки не обязательно реализованы в приложении. См. методологию и учебный центр.
Проверьте правила, прежде чем рисковать реальным капиталом
Проверьте возможности приложения, данные и каждую смоделированную сделку; сложные детекторы могут потребовать отдельной реализации.
Скачать Backtest в App Store