
이 “Advanced Multi-Time-Cycle Break-Back Trading Strategy”는 높은 시간-주기 구조와 정밀한 5분 입장을 결합한 양적 거래 시스템이다. 이 전략은 4시간 차트에서 통합 영역을 식별하고, 강력한 돌파구를 기다린 다음 5분 시간 주기에서 재검토를 확인하고, 침투 형태를 사용하여 입장을 취한다. 이 전략은 200 평준을 트렌드 필터로 사용하여, 거래가 주류 트렌드와 일치하도록 보장하며, 엄격한 1:3 리스크 수익률을 적용하여 수익성을 극대화한다.
이 전략의 핵심 원칙은 시장의 다중 시간 주기 분석과 가격 행동 이론에 기초하고 있으며, 주로 다음과 같은 핵심 요소를 포함합니다.
다중 시간 주기 분석전략: 시장 구조와 통합 영역을 결정하기 위해 4 시간 (240) 시간 주기를 사용하며, 5 분 차트를 사용하여 정확한 진입을 수행하여 거시적 추세와 미시적 진입 지점을 완벽하게 결합합니다.
통합 지역 식별시스템: 시스템은 지난 12시간 4시간 K선에서 최고 가격과 최저 가격을 분석하여 통합 영역을 결정하고 최소 통합 범위를 설정합니다.
브레이크 확인 메커니즘전략은 가격의 통합 영역의 고위 또는 낮은 지점을 돌파하는 것뿐만 아니라, K선을 돌파하는 것이 강한 K선 ((개체가 전체 영역의 70% 이상을 차지한다)) 이어야 한다고 요구하며, 가짜 돌파의 위험을 줄이기 위해 버퍼값을 증가시킨다 ((0.0005)).
동향 일관성트렌드 필터로 200주기 지수 이동 평균을 사용하며, 가격이 지배적인 트렌드 방향과 일치할 때만 거래하는 것을 보장합니다.
복사 입국 확인전략: 돌파구 이후 가격 재검토 돌파구 위치를 기다리는 전략, 그리고 침수 형태를 추가적인 진입 확인 신호로 사용하는 전략, 진입의 정확성과 성공률을 크게 향상시킵니다.
위험 관리이 시스템은 고정된 스톱로스 포인트 (20 포인트) 와 엄격한 1:3 리스크/수익률 비율을 적용하여, 각 거래에 대한 명확한 탈퇴 전략을 제공하면서 자금을 안전하게 보호한다.
시간 필터전략은 UTC 8시부터 18시까지의 활발한 거래 시간대에 거래하는 것을 선택하여 낮은 유동성 및 높은 변동성 시간을 피합니다.
높은 확률 거래 신호: 높은 시간 주기의 시장 구조와 낮은 시간 주기의 정밀한 입력을 결합하여 거래 신호의 신뢰도를 크게 향상시킵니다. 돌파구 + 회수 + 삼키기 형태의 삼중 확인 메커니즘은 가짜 신호를 크게 감소시킵니다.
시장에 적응하는 방법전략: 전략은 다양한 시장 조건에 효과적으로 적응할 수 있으며, 통합-파격-회복된 시장 주기에서 높은 품질의 거래 기회를 잡을 수 있으며, 특히 변동성 시장 환경에 적합합니다.
위험 통제 우수함: 명확한 스톱로스 설정과 고정된 리스크 수익률을 통해, 거래 당의 위험은 엄격하게 통제되며, 감정적인 거래 결정을 피한다.
재정 효율성: 퍼센티지 적당금 분배 방식을 사용함 ((2%의 자금 분배), 계정 성장에 따라 자동으로 포지션 크기를 조정하여 자금의 효율적인 사용과 복합 성장을 달성한다.
작동이 명확하고 간단합니다.전략적 논리가 명확하고, 출전 및 출전 규칙이 구체적이며, 이해하기 쉽고 실행이 쉬워져, 작전의 난이도와 심리적 스트레스가 낮아진다.
낮은 품질의 시간을 피하세요: 시간 필터를 통해, 시장의 낮은 유동성 및 높은 변동성 시기를 회피하고, 거래 효율성이 가장 높은 시간대에 집중하여 거래하십시오.
양자 변수 최적화전략의 각 파라미터 (통합 회귀 기간, 완충 구역을 뚫고, 최소 통합 범위 등) 는 시장과 품종 특성에 따라 최적화 할 수 있으며, 높은 유연성을 가지고 있습니다.
가짜 침입 위험: 전략이 여러 가지 필터링 메커니즘을 설계했음에도 불구하고, 시장에서 돌파구 이후의 빠른 반전이 발생할 수 있으며, 이로 인해 스톱 손실이 유발됩니다. 해결책은 돌파구 확인 조건을 추가적으로 최적화하거나 거래량 확인을 증가시키는 것을 고려하는 것입니다.
시간주기 충돌: 특정 시장 조건에서, 높은 시간 주기 및 낮은 시간 주기 는 서로 상반된 신호를 줄 수 있으며, 시스템 혼란을 초래할 수 있다. 이 경우 높은 시간 주기 의 지시 방향을 우선적으로 사용하는 것이 좋습니다.
매개변수 민감도: 전략 성능은 통합 기간의 길이나, 돌파 부퍼 값 및 최소 통합 범위와 같은 매개 변수에 민감하며, 다른 매개 변수 조합은 현저하게 다른 결과를 초래할 수 있다. 피드백 최적화를 통해 특정 시장에 가장 적합한 매개 변수 설정을 찾는 것이 좋습니다.
손해 방지 위험: 고정 점수 스톱 로즈는 충분히 유연하지 않을 수 있으며, 높은 변동성 시장에서는 너무 작을 수 있으며, 낮은 변동성 시장에서는 너무 커질 수 있습니다. ATR 기반의 동적 스톱 로즈를 사용하여 리스크 관리를 최적화하는 것을 고려할 수 있습니다.
추세 변화 후기200 EMA에 기반한 트렌드 판단에는 지연이 있을 수 있으며, 트렌드 전환점 근처에서 잘못된 신호를 유발할 수 있다. 트렌드 변화를 미리 식별하기 위해 더 많은 트렌드 지표 또는 가격 형태와 결합하는 것을 고려할 수 있다.
함정 회귀실제 거래의 슬라이드, 거래 비용 및 유동성 문제는 실제 거래와 재검토 결과의 차이가 발생할 수 있습니다. 실제 거래 전에 충분한 시뮬레이션 거래 검증이 권장됩니다.
동적 위험 관리ATR (평균 실제 파도) 에 기반한 동적 스톱로스로 고정점 스톱을 대체하여 위험 관리가 시장의 변동성에 더 잘 적응하도록 한다. 예를 들어, 다른 시장 조건에 적응하기 위해 스톱로스를 1.5배의 ATR 거리로 설정할 수 있다.
다중 지표 트렌드 확인200 EMA 외에도 방향 이동 지수 (DMI) 또는 MACD와 같은 다른 추세 확인 지표를 추가하여 더 포괄적인 추세 판단 시스템을 구축하고 추세 판단의 지연성을 줄입니다.
거래량 확인거래량 분석을 추가하여 거래량이 가격 행동을 지원하는 경우에만 신호를 확인하여 가짜 브레이크의 위험을 더욱 줄입니다.
자기 적응 변수 시스템: 시장의 변동성 및 유동성 조건에 따라 조정 기간의 길이를 자동으로 조정하는 자율적 변수 조정 메커니즘을 개발하고, 방 amortization 및 최소 통합 범위에 대한 변수, 전략을 더 적응하도록합니다.
무대 출전: 분할 입출장 전략을 적용하여 전체 포지션의 압력을 덜어주고 추세가 계속되면 더 많은 수익을 얻을 수 있습니다. 예를 들어, 1:1, 1:2 및 1:3의 리스크 수익률을 달성했을 때 각각 33%의 포지션을 설정할 수 있습니다.
일간 계절성 통합: 거래 품종의 일간 계절적 패턴을 분석하고 활용하여 통계적으로 더 우수한 시간대에 포지션 크기를 증가시키고 자금 분배 효율성을 최적화하십시오.
기계 학습을 도입합니다.: 기계 학습 알고리즘을 사용하여 역사적 데이터를 분석하여 어떤 돌파구 회귀 형태가 더 성공할 가능성이 있는지 예측하고 신호 품질을 향상시킵니다. 이것은 가장 수익성이있는 가격 형태와 시장 조건을 식별하는 훈련 모델을 통해 수행 할 수 있습니다.
고급 다시간주기 브레이크 트레이딩 전략 (Advanced Multi-Time-Cycle Breakthrough Retracement Trading Strategy) 은 4시간주기의 시장 구조 분석과 5분주기의 정밀 입지를 결합하여 고품질의 브레이크 트레이딩 기회를 효과적으로 포착하는 정교한 거래 시스템이다. 이 전략의 핵심 장점은 다단계 확인 메커니즘, 명확한 위험 관리 규칙 및 유연한 파라미터 최적화 공간으로 다양한 시장 조건과 거래 품종에 적응할 수 있다.
이 전략은 돌파구 완충, 강력한 K선 필터링, 트렌드 일관성 검사 및 포식 형태 확인과 같은 다중 조건을 구현함으로써 가짜 돌파구 위험을 성공적으로 감소시키고 거래 신호의 신뢰성을 향상시킵니다. 고정된 리스크 수익률과 비율 이자 분배 방식은 자금 안전과 효율적인 성장을 보장합니다.
매개 변수 민감성 및 트렌드 판단 지연과 같은 잠재적인 위험이 있음에도 불구하고, 동적 위험 관리, 다중 지표 트렌드 확인 및 적응 매개 변수 시스템과 같은 권장 된 최적화 방향에 의해 이러한 위험이 효과적으로 제어 및 완화 될 수 있습니다. 전체적으로, 이것은 논리적으로 명확하고, 동작성이 강하며, 위험 제어 가능한 고급 거래 전략이며, 경험있는 거래자가 변동 시장에서 적용하기에 적합합니다.
/*backtest
start: 2024-07-08 00:00:00
end: 2025-07-04 08:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"ETH_USDT"}]
*/
//@version=5
strategy("Improved Breakout-Retest Strategy (5M Entry)", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=2)
// === User Inputs ===
consolidationBars = input.int(12, title="Consolidation Lookback Bars")
breakoutBuffer = input.float(0.0005, title="Breakout Buffer (in price)")
slPips = input.int(20, title="Stop Loss (pips)")
rrRatio = input.float(3.0, title="Reward-to-Risk Ratio")
timeframeTF = input.timeframe("240", title="Higher Timeframe for Setup (4H)")
minRange = input.float(0.002, title="Min Consolidation Range to Trade")
enableTimeFilter = input.bool(true, title="Enable Trading Hours Filter")
startHour = input.int(8, title="Start Hour (UTC)")
endHour = input.int(18, title="End Hour (UTC)")
// === Trend Filter (on 5M TF) ===
ema200 = ta.ema(close, 200)
isUptrend = close > ema200
isDowntrend = close < ema200
// === HTF Support/Resistance ===
htfHigh = request.security(syminfo.tickerid, timeframeTF, ta.highest(high, consolidationBars))
htfLow = request.security(syminfo.tickerid, timeframeTF, ta.lowest(low, consolidationBars))
rangeSize = htfHigh - htfLow
// === Breakout Candle Strength Filter ===
candleBody = math.abs(close - open)
candleRange = high - low
bodyRatio = candleBody / candleRange
strongCandle = bodyRatio > 0.7
// === Breakout Detection ===
isBreakoutUp = close > htfHigh + breakoutBuffer and strongCandle and isUptrend and rangeSize > minRange
isBreakoutDown = close < htfLow - breakoutBuffer and strongCandle and isDowntrend and rangeSize > minRange
// === Retest Confirmation (Engulfing) on 5M ===
bullishEngulfing = close > open and close > close[1] and open < open[1]
bearishEngulfing = close < open and close < close[1] and open > open[1]
// === Retest Setup Logic ===
var float breakoutLevel = na
var string direction = ""
if (isBreakoutUp)
breakoutLevel := htfHigh
direction := "long"
if (isBreakoutDown)
breakoutLevel := htfLow
direction := "short"
retestLong = direction == "long" and low <= breakoutLevel and close > breakoutLevel and bullishEngulfing
retestShort = direction == "short" and high >= breakoutLevel and close < breakoutLevel and bearishEngulfing
// === Time Filter ===
inTradingHours = true
if enableTimeFilter
inTradingHours := (hour >= startHour and hour <= endHour)
// === SL & TP Calculation ===
sl = slPips * syminfo.mintick
tp = sl * rrRatio
// === Trade Execution (on 5M) ===
if (retestLong and inTradingHours)
strategy.entry("Long", strategy.long)
strategy.exit("TP/SL", from_entry="Long", stop=close - sl, limit=close + tp)
if (retestShort and inTradingHours)
strategy.entry("Short", strategy.short)
strategy.exit("TP/SL", from_entry="Short", stop=close + sl, limit=close - tp)
// === Plotting ===
plot(ema200, "EMA 200", color=color.orange)
plot(htfHigh, "HTF High", color=color.green)
plot(htfLow, "HTF Low", color=color.red)