다중 시간대 캔들스틱 돌파 및 위험-보상 비율 최적화 전략

趋势跟踪 烛台形态 支撑阻力 风险回报比 多时间周期分析 MTF RR
생성 날짜: 2025-06-12 14:43:07 마지막으로 수정됨: 2025-06-12 14:43:07
복사: 0 클릭수: 338
avatar of ianzeng123 ianzeng123
2
집중하다
329
수행원

다중 시간대 캔들스틱 돌파 및 위험-보상 비율 최적화 전략 다중 시간대 캔들스틱 돌파 및 위험-보상 비율 최적화 전략

개요

이 전략은 다중 시간 주기의 분석과 폭락 형태를 식별하는 것을 결합한 고 주파수 거래 방법이다. 그것은 주로 15 분 시간 프레임을 사용하여 전반적인 트렌드 방향을 결정하며, 5 분 차트에 중요한 폭락 돌파 형태를 식별하는 동시에 정확하게 진입한다. 전략의 가장 눈에 띄는 특징은 1:3의 리스크 수익률 세팅을 사용한다는 것입니다. 즉, 잠재적인 수익은 잠재적인 위험의 3 배입니다. 이것은 성공률이 매우 높지 않아도 전체적인 수익을 유지할 수 있도록 도와줍니다.

전략 원칙

이 전략의 핵심 원리는 다중 시간 주기 분석과 가격 행동 이론에 기초한다. 구체적으로, 전략의 작동 메커니즘은 다음과 같은 몇 가지 핵심 단계로 나뉘어져 있다:

  1. 동향 판단15분 시간 프레임에 대한 가격 행동 분석을 통해 전체 트렌드를 결정합니다. 전략은 최근 5주기의 고점과 낮은 곳을 계산합니다. 고점과 낮은 곳이 모두 상승하는 경우 상승 추세로 간주되며, 고점과 낮은 곳이 모두 감소하는 경우 하락 추세로 간주됩니다.

  2. 지원/저항 비트 식별5분 차트에서, 전략은 최근 5주기의 최저 가격과 최고 가격을 계산하여 중요한 지원 및 저항 수준을 결정합니다. 이 가격 수준은 스톱 로즈 지점의 기준으로 사용됩니다.

  3. 붕괴된 형상 인식전략은 강력한 포식 형태를 식별하는 데 초점을 맞추고 있다. 상향 포식 형태는 현재 종료 가격이 개시 가격보다 높으며 전 의 가격 범위를 완전히 덮는 것이다. 상향 포식 형태는 그 반대이다.

  4. 입학 조건15분 트렌드 방향이 5분 하락 형태와 일치할 때만 거래 신호가 발생한다. 예를 들어, 상승 추세에서 보이스 삼킨 형태가 발생하면 구매 신호가 발생한다. 하락 추세에서 보이스 삼킨 형태가 발생하면 판매 신호가 발생한다.

  5. 위험 관리이 전략은 1:3의 리스크/이익 비율을 사용하며, 스톱로드는 근래의 변동의 최저점 (중개점의 경우) 또는 최고점 (공수점의 경우) 에 설정되며, 스톱로드는 스톱로드 거리의 3배에 달하는 목표이다.

전략적 이점

이 전략의 코드 구현을 심층적으로 분석한 결과, 다음과 같은 중요한 장점이 나타났습니다.

  1. 다중 시간 주기 연동15분 및 5분 시간 프레임의 조합을 통해, 전략은 가짜 신호를 줄이고, 더 큰 트렌드 지원을 받는 경우에만 입문하여 거래의 성공률을 높일 수 있다.

  2. 명확한 입시 논리: 고전적인 흡수 형태를 입구 트리거 조건으로 사용한다. 이 형태는 기술 분석에서 강력한 반전 또는 지속 신호로 널리 인정된다.

  3. 최적화된 리스크/이익률: 고정 1: 3의 리스크 수익 비율 설정은 전략이 25%의 승률만 있으면 이론적으로 이익 손실 균형을 유지할 수있게합니다. 실제 승률이 이 값보다 높으면 순이익이 발생합니다.

  4. 동적 중지 손해 설정단위치: 단위치는 고정된 점수보다는 최근 가격 변동의 높고 낮은 지점에 기반하여 전략이 다양한 시장 변동 환경에 더 잘 적응할 수 있도록 합니다.

  5. 시각적 피드백: 전략은 차트에서 구매 및 판매 신호와 입구 위치를 표시하여 거래자가 전략의 성능을 직관적으로 평가하고 검증 할 수 있습니다.

  6. 자금 관리 통합전략: 매 거래에 2%의 계정 이자율을 기본으로 사용한다. 이 비율적 위치 관리는 단일 거래의 위험을 제어하는 데 도움이 된다.

전략적 위험

이 전략은 훌륭하게 설계되었지만 다음과 같은 몇 가지 잠재적인 위험들이 있습니다.

  1. 시장의 위험성중요한 뉴스 또는 예상치 못한 사건이 발생하면 가격이 스톱 손실을 빠르게 돌파하여 예상보다 실제 손실이 발생할 수 있습니다. 중요한 경제 데이터 또는 뉴스 발표 전에 전략을 중단하는 것이 해결책입니다.

  2. 유동성이 낮은 환경의 위험: 시장 유동성이 부족할 때, 실적 입시 가격이나 출구 가격이 예상보다 벗어날 수 있는 슬라이드 포인트가 발생할 수 있습니다. 주요 거래 시간 동안이 전략을 사용하여 유동성이 낮은 기간을 피하는 것이 좋습니다.

  3. 가짜 침입 위험: 삼킨 형태는 100% 신뢰성이 없으며, 가짜 돌파가 발생할 수 있다. 해결책은 거래량 확인이나 다른 기술 지표 필터링과 같은 확인 지표를 추가하는 것을 고려하는 것이다.

  4. 트렌드 판단 지연: 5주기 계산 트렌드를 사용하는 것은 트렌드 판단에 약간의 지연이 있을 수 있다. 강한 흔들림 시장에서 이러한 지연은 잘못된 신호를 초래할 수 있다. 주기 수를 조정하거나 추가적인 트렌드 확인 지표를 추가하는 것이 고려될 수 있다.

  5. 고정된 리스크/수익률의 한계1: 3의 리스크/수익비율은 이론적으로 매력적이지만 모든 시장 환경이 이러한 설정에 적합하지는 않습니다. 높은 변동성이나 추세가 불확실한 시장에서 3배의 손실을 막는 수익 목표를 달성하는 것은 어려울 수 있습니다.

전략 최적화 방향

이 전략은 다음과 같은 방향으로 더 개선될 수 있습니다.

  1. 동적 리스크 수익률 조정: 시장의 변동율에 따라 역동적으로 조정할 수 있는 위험수익률, 낮은 변동 환경에서는 더 보수적인 설정을 사용한다 (예: 1:2), 강한 트렌드 환경에서는 더 급진적인 설정을 사용한다 (예: 1:4). 이렇게 다른 시장 상태에 더 잘 적응할 수 있다.

  2. 볼륨 증가 확인출입 조건에 거래량 필터를 추가하여, 흡수 형태가 거래량이 눈에 띄게 증가했을 때만 출입할 수 있으며, 이는 가짜 침입의 위험을 줄일 수 있다.

  3. 동력 지표 도입: RSI 또는 MACD와 같은 동력 지표가 추가 필터링 조건으로 결합 될 수 있습니다. 입시 지점은 형태적 지원뿐만 아니라 동력 지원도 보장합니다.

  4. 최적화 시간 주기 선택: 현재 전략은 고정된 15분 및 5분 시간 프레임을 사용하며, 사용자에게는 거래 종류와 개인 취향에 따라 최적의 시간 주기 조합을 선택할 수 있도록 조정 가능한 파라미터를 사용할 수 있습니다.

  5. 일부 수익 잠금 메커니즘: 대량 출장 전략을 구현할 수 있습니다. 예를 들어, 가격이 1:1 리스크 수익률을 달성했을 때 수익의 일부를 잠금하고, 남은 포지션의 손실을 비용 가격으로 조정하여 나머지 포지션이 더 높은 수익 목표를 추구하도록합니다.

  6. 거래 시간 필터를 추가합니다.거래 시간 필터를 추가하여 시장 개시와 종료 전과 후의 높은 변동과 낮은 유동성 시간대에 거래를 피하거나 주요 경제 데이터 발표 시간을 피하십시오.

  7. 적응 변수 최적화: 최근 시장의 성과에 따라 자동으로 전략 매개 변수를 조정하는 메커니즘을 구현할 수 있습니다. 예를 들어, 최근 20-50 개의 거래 사이클의 시장 특성에 따라 트렌드를 조정하는 사이클 수.

요약하다

다중 시간 주기의 폭락과 리스크 수익률 최적화 전략은 트렌드 분석, 가격 행동 및 위험 관리를 결합한 종합 거래 시스템이다. 그것은 다중 시간 주기의 협동 분석을 통해 신호 품질을 향상시키고, 클래식 폭락 형태를 통해 정확한 입구를 제공하고, 최적화된 리스크 수익률을 사용하여 장기적인 수익성을 보장한다.

이 전략은 특히 단기 높은 주파수 거래 기회를 찾는 거래자에게 적합하며, 특히 명확한 추세가있는 시장 환경에서 더 잘 작동합니다. 그러나 모든 거래 전략과 마찬가지로 완벽하지 않으며, 거래자는 자신의 위험 용량과 거래 목표에 따라 적절하게 조정해야합니다.

이 문서에서 제시된 최적화 제안을 실행함으로써, 특히 동적 위험-이익 비율 조정과 추가 확인 지표를 추가함으로써, 전략의 안정성과 적응력을 더욱 강화할 수 있습니다. 궁극적으로, 전략의 성공은 알고리즘 자체에 의존하지 않고, 시장에 대한 거래자의 이해와 전략에 대한 지속적인 모니터링과 개선에 달려 있습니다.

전략 소스 코드
/*backtest
start: 2025-01-01 00:00:00
end: 2025-06-11 00:00:00
period: 5m
basePeriod: 5m
exchanges: [{"eid":"Futures_Binance","currency":"ETH_USDT"}]
*/

//@version=5
strategy("5-Min Gold Scalping Strategy with 1:3 RR", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=2)

// Trend Direction (Using 15-Minute Price Action)
higherHigh = ta.highest(high, 5)
higherLow = ta.highest(low, 5)
lowerHigh = ta.lowest(high, 5)
lowerLow = ta.lowest(low, 5)
trendUp_15min = request.security(syminfo.tickerid, "15", higherHigh > higherHigh[1] and higherLow > higherLow[1])
trendDown_15min = request.security(syminfo.tickerid, "15", lowerHigh < lowerHigh[1] and lowerLow < lowerLow[1])

// Price Action on 5-Minute Chart
// Support/Resistance (Swing Lows/Highs)
swing_low = ta.lowest(low, 5)
swing_high = ta.highest(high, 5)

// Candlestick Patterns (Bullish/Bearish Engulfing)
bullishEngulfing = close > open and close[1] < open[1] and close > high[1] and open < low[1]
bearishEngulfing = close < open and close[1] > open[1] and close < low[1] and open > high[1]

// Buy and Sell Conditions
buySignal = trendUp_15min and bullishEngulfing
sellSignal = trendDown_15min and bearishEngulfing

// Auto Buy Entry
if (buySignal)
    strategy.entry("Buy", strategy.long)
    label.new(bar_index, low, "BUY", color=color.green, style=label.style_label_up, textcolor=color.white)

// Auto Buy Exit (1:3 RR)
if (strategy.position_size > 0)
    stopLossBuy = swing_low
    takeProfitBuy = close + (close - stopLossBuy) * 3
    strategy.exit("Buy Exit", "Buy", stop=stopLossBuy, limit=takeProfitBuy)

// Auto Sell Entry
if (sellSignal)
    strategy.entry("Sell", strategy.short)
    label.new(bar_index, high, "SELL", color=color.red, style=label.style_label_down, textcolor=color.white)

// Auto Sell Exit (1:3 RR)
if (strategy.position_size < 0)
    stopLossSell = swing_high
    takeProfitSell = close - (stopLossSell - close) * 3
    strategy.exit("Sell Exit", "Sell", stop=stopLossSell, limit=takeProfitSell)

// Plot Buy/Sell Signals with Shapes
plotshape(buySignal, title="Buy Signal", location=location.belowbar, color=color.green, style=shape.triangleup, size=size.small)
plotshape(sellSignal, title="Sell Signal", location=location.abovebar, color=color.red, style=shape.triangledown, size=size.small)