볼린저 밴드 크로스오버 및 슬리피지 가격 영향 조합 전략

BB SMA stdev
생성 날짜: 2024-07-31 11:25:52 마지막으로 수정됨: 2024-07-31 11:25:52
복사: 4 클릭수: 528
avatar of ChaoZhang ChaoZhang
1
집중하다
1617
수행원

볼린저 밴드 크로스오버 및 슬리피지 가격 영향 조합 전략

개요

이 전략은 부린 띠의 교차 신호에 기반하고 슬라이드 포인트와 가격 영향을 고려하는 통합 거래 시스템이다. 부린 띠의 오르락 내리락을 활용하여 잠재적인 과매매 지역과 과매매 지역을 식별하고 거래를 실행할 때 슬라이드 포인트와 가격 영향 요소를 고려하여 실제 시장 조건의 거래를 더 잘 모의합니다. 이 방법은 거래 전략의 신뢰성과 실용성을 높이기 위해 고도로 유동적인 시장 환경에 특히 적합합니다.

전략 원칙

  1. 브린은 다음과 같이 계산합니다.

    • 20주기의 간단한 이동 평균 ((SMA) 을 중간 궤도로 사용한다.
    • 위아래 궤도는 중궤도와 2배의 표준차를 줄인다.
  2. 거래 신호:

    • 가격 상승이 일어날 때, 여러 신호를 쏘아 올립니다.
    • 가격이 하락하면 하락 신호를 쏘아 올립니다.
  3. 가격에 영향을 미치는 점과 조정:

    • 40%의 슬라이드 포인트와 40%의 가격 영향을 고려한다.
    • 구매 가격 = 현재 가격 + 슬라이드 포인트 조정 + 가격 영향 조정
    • 판매 가격 = 현재 가격 - 슬라이드 포인트 조정 - 가격 영향 조정
  4. 평지 조건:

    • 다중 포지션은 공백 신호가 발동될 때 공백한다.
    • 공백 위치는 여러 신호가 발생했을 때 평평합니다.

전략적 이점

  1. 시장의 변동성에 적응: 브린밴드는 시장의 변동성에 따라 자동으로 조정할 수 있어 전략은 다양한 시장 환경에서 유효성을 유지할 수 있다.

  2. 트렌드 추적과 반전 결합: 브린 띠 교차 신호를 통해, 전략은 트렌드 지속을 포착할 수 있고, 잠재적인 반전 기회를 잡을 수 있다.

  3. 실제 거래 비용 고려: 슬라이드 포인트와 가격 영향 요소를 포함하여 실제 거래 환경에 더 가깝게 전략을 만들고, 피드백 결과의 신뢰성을 높인다.

  4. 위험 관리: 브린 밴드를 동적인 지원 및 저항 수준으로 사용하여 위험을 제어하는 데 도움이됩니다.

  5. 유연성: 변수 설계로 전략은 다른 시장과 거래 품종에 따라 최적화 조정할 수 있습니다.

전략적 위험

  1. 과도한 거래: 수평 시장에서 가격이 빈번하게 브린대를 통과하여 불필요한 거래가 발생할 수 있습니다.

  2. 뒤처진성: 브린띠는 뒤처진 지표로, 빠른 트렌드 변화에 반응하지 않을 수 있다.

  3. 높은 슬라이드 포인트와 가격 영향: 40%의 슬라이드 포인트와 가격 영향 설정이 너무 높아서 실제 거래가 실행되기 어렵거나 큰 손실이 발생할 수 있습니다.

  4. 가짜 브레이크 위험: 부린을 잠시 넘어서서 다시 내려가면 잘못된 거래 신호를 유발할 수 있다.

  5. 부가적인 확인의 부재: 브린밴드 신호에만 의존하고, 다른 기술 지표나 기본 분석의 확인이 없습니다.

전략 최적화 방향

  1. 거래량 지표 도입: 합성 거래량 분석을 통해 돌파구의 유효성을 확인하고 가짜 돌파구로 인한 위험을 줄일 수 있습니다.

  2. 트렌드 필터를 추가합니다. 예를 들어, 장기 이동 평균 또는 ADX 지표를 사용하여 주요 트렌드 방향에서 거래하는 것을 보장합니다.

  3. 슬라이드 포인트 및 가격 영향 파라미터를 최적화: 실제 시장 데이터에 따라 슬라이드 포인트 및 가격 영향 퍼센티지를 조정하여 실제 거래 조건에 더 적합하게 만듭니다.

  4. 역동적 상쇄를 실현: ATR 지표를 사용하여 시장의 변동성에 적응하기 위해 역동적 상쇄를 설정하는 것이 고려 될 수 있습니다.

  5. 시간 필터를 추가: 낮은 변동성이있는 시간 (아시아 디스크와 같은) 에서 거래를 피하여 신호 소음을 줄이십시오.

  6. 브린 밴드 파라미터를 최적화: 다양한 브린 밴드 길이와 배수를 시도하여 목표 시장에 가장 적합한 설정을 찾습니다.

  7. 기계 학습 알고리즘을 도입: 기계 학습 기술을 사용하여 입점 및 출퇴근 시간을 최적화하고 전략의 전반적인 성능을 향상시킵니다.

요약하다

브린 띠 교차와 슬라이드 가격 영향 조합 전략은 기술 분석과 실제 거래 고려 사항을 결합한 포괄적 인 거래 시스템입니다. 브린 띠 지표를 통해 시장 움직임을 포착하고 슬라이드 및 가격 영향을 고려하여 실제 거래 방식에 더 가까운 거래 방법을 제공하는 것을 목표로합니다. 그러나 전략에는 과다 거래 및 가짜 돌파 등의 문제가 있습니다. 추가 확인 지표, 최적화된 파라미터 설정 및 강화 된 위험 관리를 도입함으로써 전략은 더 안정적이고 신뢰할 수있는 거래 시스템이 될 잠재력이 있습니다.

전략 소스 코드
/*backtest
start: 2023-07-25 00:00:00
end: 2024-07-30 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Combined Strategy", overlay=true)

// Input parameters for Bollinger Band Strategy
bb_length = input.int(20, title="BB Length")
bb_mult = input.float(2.0, title="BB Mult")

// Input parameters for Slippage and Price Impact
slippage_percent = input.float(40.0, title="Slippage (%)") / 100  // 40% slippage
price_impact_percent = input.float(40.0, title="Price Impact (%)") / 100  // 40% price impact

// Calculating Bollinger Bands
basis_bb = ta.sma(close, bb_length)
deviation = bb_mult * ta.stdev(close, bb_length)
upper = basis_bb + deviation
lower = basis_bb - deviation

// Entry and exit conditions for Bollinger Band Strategy
longCondition = ta.crossover(close, upper)
shortCondition = ta.crossunder(close, lower)
closeLongCondition = shortCondition
closeShortCondition = longCondition

// Adjust entry price for slippage and price impact
slippage_adjustment = close * slippage_percent
price_impact_adjustment = close * price_impact_percent
slippage_price_impact_adjusted_long_price = close + slippage_adjustment + price_impact_adjustment
slippage_price_impact_adjusted_short_price = close - slippage_adjustment - price_impact_adjustment

// Strategy logic for Bollinger Band Strategy
if (longCondition)
    strategy.entry("Long", strategy.long, limit=slippage_price_impact_adjusted_long_price)
    
if (shortCondition)
    strategy.entry("Short", strategy.short, limit=slippage_price_impact_adjusted_short_price)

if (closeLongCondition)
    strategy.close("Long")
    
if (closeShortCondition)
    strategy.close("Short")

// Plotting Bollinger Bands
plot(upper, color=color.blue)
plot(lower, color=color.red)