글 목차
근거와 범위
소스 표시기는 구성 가능한 세션 스윕을 설명하며, 플랫폼 및 거래소 문서는 세션 메커니즘을 규정합니다. 제안된 탐지기의 수익성은 검증되지 않았습니다.
실전 적용 절차
- 세션을 정의하세요거래 시장, 달력, 시간대를 선택합니다.
- 참조 창을 완성하세요이전 세션 또는 개장 범위의 극값은 알려진 경우에만 게시하십시오.
- 이후의 스윕을 감지합니다.고정 버퍼와 적격 레벨 버전을 사용하십시오.
- 확인하고 제출하세요종가 데이터를 실제 받은 시각과 선택한 주문 모형을 준수합니다.
- 세션 유형별로 평가신호 없는 날, 가격 갭, 달력 경계 사례도 포함합니다.
서로 다른 정보를 담고 있는 세 가지 참조 유형
PDH/PDL은 직전 완료 거래일의 고가와 저가, PSH/PSL은 선택한 완료 세션의 고가와 저가입니다. ORH/ORL은 현재 세션 첫N분의 고가와 저가입니다. 가격이 겹쳐도 독립된 증거가 늘지는 않습니다. 필요하면 같은 참조 실체에 여러 관련 라벨을 붙입니다.
LuxAlgo의 세션 스윕(Session Sweeps)은 세션 선택([1])을 허용합니다. 독립적인 구현을 위해서는 연중 고정된 현지 시간 대신 거래소 시간대와 달력([2][3])이 필요합니다. 런던, 뉴욕, 그리고 전략을 실행하는 컴퓨터의 시간이 같은 날짜에 변경되지 않을 수 있습니다.
전날 가격은 이전 범위를 나타내고, 시가 범위는 새로운 날의 시작을 나타냅니다. 큰 가격 갭이 발생하면 시가가 이전 범위 전체를 넘어설 수 있습니다. 전날 가격 수준(PDH)으로 돌아온다고 해서 자동으로 스윕이 되는 것은 아닙니다. 해당 수준의 시작점을 파악하고, 목표 트리거가 거부인지, 회복인지, 아니면 돌파 재시험인지 확인해야 합니다.
세션 식별자 및 자격 타임스탬프
제안된 session_id에는 거래소, 심볼, calendar_date 및 session_template_version가 포함됩니다. 미국 주식 기준선은 핵심 세션을 사용하고 프리마켓 데이터를 별도로 저장할 수 있습니다. 균일한 24 시간 단위의 거래일을 생성하기 위해 누락된 캔들을 임의로 만드는 대신 단축된 세션을 표시합니다. 야간 선물은 현지 날짜와 다른 거래일을 가질 수 있습니다.
09:30부터 09:45까지의 개장 범위에서, 09:30, 09:35 및 09:40에서 시작하는 5분봉이 해당 범위에 포함됩니다. 최종 레벨은 09:45 이후에만 공개됩니다. 불완전한 09:40 봉은 최종 OR 저점을 보여주지 않습니다. 반개방 구간([시작, 종료))은 경계에서 발생하는 이벤트가 두 창 모두에 포함되는 것을 방지합니다.
지지S가 공개된 뒤 제안하는 하방 스윕은 직전 종가가S보다 높고, low<S−b이며 close>S+e인 경우입니다. 트리거 직전 봉의ATR로 b=max(2 ticks,0.10ATR), e=max(2 ticks,0.15ATR)를 구합니다. 여러 봉에 걸친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를 사용할 수 없습니다. VWAP 아래에서 거래될 때 PDL을 스윕하는 것은 한 번의 하락 움직임을 반영할 수 있으므로 단순히 확인 횟수를 세는 대신 각 필터의 증분 가치를 측정해야 합니다.
예정 발표 직전과 직후의 신호는 체결 결과가 다를 수 있습니다. 사전에 알려진 달력으로 이 시간 구간을 정할 수 있습니다. 가격 반응을 본 뒤 악재일로 분류하면 사후 정보가 들어갑니다. 공표 시각과 데이터·뉴스를 실제 받은 시각은 별도로 저장합니다.
합성 개방 범위 예시
차트가 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는 과거 데이터 시뮬레이션으로, 미래 성과를 보장하지 않으며 실제 거래를 주문하지 않습니다. 이 라이브러리의 기법이 모두 앱에 구현된 기능은 아닙니다. 관련 정보: 검증 방법 및 학습 센터.
실제 자금을 투입하기 전에 규칙을 검증하세요
앱 지원 범위, 데이터와 개별 모의 거래를 확인하세요. 고급 탐지 기법은 별도 구현이 필요할 수 있습니다.
App Store에서 Backtest 다운로드