CBC 돌파 역전 정량 전략 및 200 이동 평균 조합 추세 추적 시스템

趋势跟踪 反转突破 动量交易 技术分析 风险管理 止盈止损 EMA CBC 量化策略
생성 날짜: 2025-06-03 09:16:42 마지막으로 수정됨: 2025-06-03 09:16:42
복사: 0 클릭수: 293
avatar of ianzeng123 ianzeng123
2
집중하다
319
수행원

CBC 돌파 역전 정량 전략 및 200 이동 평균 조합 추세 추적 시스템 CBC 돌파 역전 정량 전략 및 200 이동 평균 조합 추세 추적 시스템

개요

CBC 돌파 반전화 전략은 가격 행동 논리에 기반한 트렌드 추적 시스템으로, TradingView 사용자 AsiaRoo가 공유한 트레이딩 아이디어에서 영감을 얻었다. 이 전략은 간단한 돌파 조건을 사용하여 시장 구조의 방향 변화를 포착하고, 이를 완전하고, 추적 가능한 프레임워크로 형식화한다. 핵심 아이디어는 가격의 돌파구를 식별하는 것이다.

전략 원칙

CBC의 역전환량화 전략의 핵심 논리는 가격관계의 변화를 식별하는 데 있습니다.

  1. CBC 상태 판단전략: 시장 상태를 추적하기 위해 “cbc”라는 불 변수를 유지합니다.

    • 클로즈 시트 값이 이전 의 최고점보다 높을 때, cbc 상태는 true (보아) 로 변한다.
    • 종결 가격이 전 주간 최저점보다 낮을 때 cbc 상태가 false (상승) 로 변한다.
  2. 역전 신호 인식

    • 볼리쉬 플립: cbc가 false에서 true로 바뀌면 발사된다.
    • 하락 반전 (bearishFlip): cbc가 true에서 false로 바뀌면 트리거
  3. 트렌드 필터: 트렌드 필터로 EMA200을 사용할 수 있습니다.

    • 필터를 켜면, EMA200 이상의 가격으로만 더 많은 것을 실행하고, EMA200 이하의 가격으로만 하락을 실행합니다.
    • 필터링을 종료하면 가격 돌파 조건에 따라 거래합니다.
  4. 위험 관리매 거래마다 스톱과 스톱 손실을 설정합니다.

    • 정지점: 입점 가격의 비율로 설정 (예작 2%)
    • 스톱로스: 입점 가격의 비율로 설정 (예작 1%)
  5. 수수료 모형% 또는 고정된 현금 형태의 수수료 계산을 지원하고, 재측정 정확도를 향상시킵니다.

전략의 코드 구현은 Pine Script 5를 채택하고, 프로세스는 명확하고, 논리는 엄격하며, 거래자가 자신의 요구에 따라 매개 변수를 최적화 할 수 있습니다.

전략적 이점

  1. 간단한 논리CBC의 역전환량화 전략은 복잡한 기술 지표에 의존하지 않고 간단한 가격 행동 원칙에 기반하여 거래 의사 결정 과정을 투명하고 이해하기 쉽게 만듭니다.

  2. 매우 적응력이 좋다: 전략은 다양한 시기와 시장에 적용될 수 있으며, 파라미터를 조정하여 다른 거래 환경에 적응할 수 있다.

  3. 완벽한 위험 관리내장된 스톱 스톱 손실 메커니즘은 거래의 위험을 통제할 수 있도록 하며, 단일 거래로 인한 과도한 손실을 방지합니다.

  4. 트렌드 필터 옵션EMA200 필터는 상인이 역전 거래를 피하고 신호 품질을 향상시키는 데 도움이됩니다. 시장이 명확한 추세에있을 때 필터는 전략 성능을 크게 향상시킬 수 있습니다.

  5. 시각적 피드백이 명확합니다.전략: 전략은 트레이더가 잠재적인 거래 기회를 빠르게 식별할 수 있도록 역전 신호 표시와 배경 색상의 변화를 포함한 직관적인 시각적 지표를 제공합니다.

  6. 수수료 모의 기능: 거래 비용 요소를 고려하여 실제 거래 상황에 더 가깝게 재검토 결과를 제공하여 실제 시장에서 전략의 성과를 평가하는 데 도움이됩니다.

  7. 모듈 디자인전략의 구성요소들은 명확하게 분리되어 있고, 트레이더들이 전체적인 프레임워크에 영향을 미치지 않고 특정 부분에 대해 수정하거나 확장할 수 있습니다.

전략적 위험

  1. 가짜 침입 위험위기 시장에서, 가격은 종종 이전 한 의 높은 낮은 지점을 돌파 할 수 있지만 지속적인 트렌드를 형성하지 않고 연속적인 소액 손실을 초래합니다. 해결책은 변동률 지표 또는 더 긴 시간 주기 확인과 같은 추가 필터링 조건을 추가하는 것입니다.

  2. 추세 전환이 지연됐습니다.: 시장 추세가 크게 변할 때 EMA200 필터는 지연 반응으로 초기 단계의 거래 기회를 놓칠 수 있습니다. 거래자는 단기 동력 지표와 결합하여 추세 변화를 조기에 포착하는 것을 고려할 수 있습니다.

  3. 고정 비율 스탠프 손실의 제한: 시장과 시기를 따라 변동의 특성이 다르며, 고정된 비율의 스톱로드는 충분히 유연하지 않을 수 있다. 타겟 시장의 평균 실제 파동량 (ATR) 동성에 따라 스톱로드 수준을 조정하는 것이 좋습니다.

  4. 매개변수 민감도전략적 성능은 스톱 스톱 손실 파라미터에 매우 민감하며, 특정 시장에 최적화하여 과도한 역사 데이터를 피하는 것이 필요합니다.

  5. 연속 신호 처리: 여러 개의 연속적인 상향 또는 하향 반전 신호가 나타났을 때, 전략이 연속적인 신호를 명확하게 처리하는 메커니즘이 없으므로 포지션 관리 문제가 발생할 수 있습니다. 신호 확인 메커니즘이나 포지션 관리 규칙을 추가하는 것이 고려 될 수 있습니다.

전략 최적화 방향

  1. 동적 중지 중지 손실: 고정된 퍼센트의 스톱로스를 ATR 기반의 동적 값으로 바꾸어 시장의 변동성에 더 잘 적응한다. 예를 들어, 스톱로스는 1.5배의 ATR, 스톱로스는 2.5배의 ATR로 설정하여 리스크 관리를 시장의 실제 상황에 더 적합하게 만든다.

  2. 다중 시간 주기 확인: 더 높은 시간 주기의 트렌드 확인 메커니즘을 도입하여, 더 높은 시간 주기의 트렌드 방향이 일치할 때만 거래를 실행하여, 가짜 돌파구로 인한 손실을 줄인다.

  3. 양적 검증: 합성 거래량 지표 검증 가격 돌파의 유효성, 거래량이 커질 때만 돌파 신호를 확인하고 신호 품질을 향상한다.

  4. 동적 위치 관리: 시장의 변동성과 전략의 최근 성과에 따라 거래 포지션을 동적으로 조정합니다. 높은 승률 단계에서 포지션을 증가시키고, 낮은 승률 단계에서 포지션을 감소시키고, 자금 사용 효율성을 최적화합니다.

  5. 연관성 필터: 조합 전략을 적용할 때, 각 거래 품종 간의 연관성을 고려하여 과도한 집중 위험을 피하십시오. 연관성 매트릭스 분석 모듈을 추가하여 거래 결정을 보조 할 수 있습니다.

  6. 기계 학습 최적화: 기계 학습 기술을 사용하여 전략의 매개 변수를 조정합니다. 예를 들어, 유전 알고리즘이나 강도 학습 기반의 매개 변수 최적화를 통해 전략이 시장 환경 변화에 따라 자동으로 조정 될 수 있습니다.

  7. 제어장치 철회: 계정 순가치 인출에 기반한 거래 정지 메커니즘을 추가하고, 전략이 연속적인 손실을 겪을 때 계정 인출이 설정된 마이너스를 초과하면 거래를 일시 중단하여 불리한 시장 환경에서 지속적인 손실을 방지합니다.

요약하다

CBC 브레이크 역전량화 전략은 명확하고 논리적으로 간단한 트렌드 추적 시스템으로, 가격의 이전 한 의 높은 낮은 점의 돌파구를 포착하여 잠재적인 트렌드 역전점을 식별합니다. 이 전략은 EMA200 트렌드 필터, 고정 비율의 스톱 손실 및 수수료 시뮬레이션 기능을 결합하여 완전한 거래 프레임 워크를 제공합니다.

전략은 논리적으로 간단하지만, 가짜 돌파 위험과 변수 최적화 문제를 주의해야 한다. 동적 스톱 스톱 손실, 다중 시간 주기 확인, 양자력 검증과 같은 최적화 수단을 도입함으로써 전략의 안정성과 적응성을 더욱 향상시킬 수 있다.

거래자에게는 CBC 돌파구 역전환 양화 전략이 좋은 출발점을 제공하며, 이를 바탕으로 개인 거래 스타일과 목표 시장 특성에 따라 맞춤 조정할 수 있다. 독립적인 전략이나 포지션 전략의 일부로서이 방법은 양화 거래의 “단순하고 효과적인” 디자인 철학을 반영한다.

전략 소스 코드
/*backtest
start: 2024-06-03 00:00:00
end: 2024-08-17 00:00:00
period: 2h
basePeriod: 2h
exchanges: [{"eid":"Futures_Binance","currency":"ETH_USDT"}]
*/

//@version=5
strategy("CBC Flip Strategy", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=10)

// --- CBC Logic ---
cbc = false
cbc := cbc[1]
if cbc and close < low[1]
    cbc := false
if not cbc and close > high[1]
    cbc := true

// --- Flip Signals ---
bullishFlip = cbc and not cbc[1]
bearishFlip = not cbc and cbc[1]

// --- Optimizable Parameters ---
tpPerc = input.float(2.0, title="Take Profit %", step=0.1)
slPerc = input.float(1.0, title="Stop Loss %", step=0.1)
useEMAFilter = input.bool(true, title="Use EMA200 Filter")

// --- Trend Filter ---
ema200 = ta.ema(close, 200)
bullCond = bullishFlip and (not useEMAFilter or close > ema200)
bearCond = bearishFlip and (not useEMAFilter or close < ema200)

// --- Commissions ---
commissionType = input.string("percent", title="Commission Type", options=["percent", "cash"])
commissionValue = input.float(0.2, title="Commission Value", step=0.02)  // strategy.commission.value(commissionValue, commissionType)

// --- Strategy Entries and Exits ---
if bullCond
    strategy.entry("Long", strategy.long)
    strategy.exit("TP/SL Long", from_entry="Long", profit=tpPerc * close / 100, loss=slPerc * close / 100)

if bearCond
    strategy.entry("Short", strategy.short)
    strategy.exit("TP/SL Short", from_entry="Short", profit=tpPerc * close / 100, loss=slPerc * close / 100)

// --- Plot Flip Signals ---
plotshape(bearishFlip, style=shape.triangledown, location=location.abovebar, color=color.red, size=size.small, title='Bear Flip')
plotshape(bullishFlip, style=shape.triangleup, location=location.belowbar, color=color.green, size=size.small, title='Bull Flip')

// --- Visual Background ---
bgcolor(bullishFlip ? color.new(color.yellow, 80) : bearishFlip ? color.new(color.blue, 85) : na)