동적 지원 및 저항 채널 파업

저자:차오장, 날짜: 2024-01-18 12:30:04
태그:

img

전반적인 설명

동적 지원 및 저항 채널 브레이크아웃 전략은 주요 지원 및 저항 수준 및 브레이크아웃 신호를 식별하는 강력한 전략입니다. 이 그래프에서 이러한 중요한 수준을 시각화하여 거래자가 잠재적 인 거래 기회를 쉽게 발견 할 수 있습니다.

전략 논리

이 전략은 사용자가 정의한 왼쪽 및 오른쪽 바를 기반으로 동적으로 지원 및 저항 수준을 계산합니다. 이것은 변화하는 시장 조건에 적응할 수 있는 유연성을 제공합니다. 종료 가격이 이러한 지원 및 저항 수준을 넘으면 거래 신호를 생성하고 볼륨 확인과 함께합니다. 또한 전략은 정의된 지원 및 저항 조건을 기반으로 LONG/SHORT 포지션의 자동 실행을 통합하여 전체 거래 프로세스를 효율화합니다.

특히, 전략은 ta.pivotlow 및 ta.pivothigh 함수를 사용하여 동적 지원 및 저항 수준을 계산합니다. 이러한 지원 및 저항 선은 차트에서 빨간색과 파란색으로 그려집니다. 닫기 가격이 이러한 레벨을 통과 할 때, B 모양의 표시가 브레이크업 위치에서 그려집니다. 한편, 전략은 5 일 및 10 일 평균 볼륨을 사용하여 볼륨 오시레이터를 통합하여 볼륨 상승을 측정합니다. 브레이크업 신호와 알레트는 볼륨이 충분히 큰 경우에만 활성화됩니다. 마지막으로, 전략은 이러한 지원, 저항 및 볼륨 조건을 기반으로 LONG/SHORT 진입 및 출구 전략을 통합합니다.

장점

이 전략은 다음과 같은 장점을 가지고 있습니다.

  1. 동적 지원 및 저항 수준은 시장 변화에 적응합니다.
  2. 부피 확인은 브레이크의 중요성을 보장합니다.
  3. 그래픽 신호 는 중요 한 점 을 강조 한다
  4. 통합된 거래 전략은 작업 흐름을 단순화합니다.
  5. 커스터마이징 가능한 매개 변수

전체적으로 전략은 주요 지원 및 저항 브레이크포인트를 포괄적으로 식별하고 시각화하고 활용하여 거래자가 최적의 거래 시기를 선택하고 거래 성공 가능성을 크게 향상시킵니다.

위험성

전략의 잠재적 위험은 주로 다음을 포함합니다.

  1. 비효율적인 브레이크업 위험. 브레이크업 포인트는 잘못된 브레이크업을 형성하여 불필요한 손실을 초래할 수 있습니다. 더 엄격한 볼륨 및 가격 변동 확인 요구 사항을 설정함으로써 이를 완화 할 수 있습니다.

  2. 매개 변수 최적화 위험. 왼쪽/오른 바 등을 적절하게 설정하지 않으면 정확하지 않은 지원 및 저항 수준이 계산 될 수 있습니다. 적절한 왼쪽/오른 바는 다른 제품의 거래 특성에 따라 선택되어야합니다.

  3. 과도한 최적화 위험. 과도한 매개 변수 최적화는 과도한 적합으로 이어질 수 있습니다. 제한된 데이터에 대한 과도한 최적화를 피하기 위해 적절한 백테스팅과 검증이 수행되어야합니다.

  4. 거래 비용 위험. 빈번한 거래는 더 높은 수수료를 초래할 수 있습니다. 이윤 취득 요인 또는 거래 빈도를 제어하는 다른 수단이 고려되어야합니다.

개선 방향

이 전략은 다음과 같은 측면에서 향상될 수 있습니다.

  1. 단일 손실을 제어하기 위해 스톱 손실 조건을 추가합니다.

  2. 이윤을 취득하는 요소를 최적화하여 최적의 이윤을 취득하는 지점을 결정합니다.

  3. 최적의 매개 변수를 결정하기 위해 다양한 매개 변수 조합을 테스트합니다.

  4. 다른 제품에 따라 왼쪽/오른 바 설정을 조정합니다.

  5. 다른 필터를 추가하면, 예를 들어, 가격 변동성을 추가하면 파업 확률을 더 잘 측정할 수 있습니다.

  6. 다른 부피 확인 지표, 예를 들어, 높은 부피의 브레이크아웃을 시도하십시오.

  7. 더 나은 통합을 달성하기 위해 다른 전략이나 지표를 포함합니다.

결론

동적 지원 및 저항 채널 브레이크아웃 전략은 기술 차트 분석에서 지원 및 저항 개념을 활용하여 브레이크아웃의 중요성을 확인하고 시장의 중요한 전환점을 효과적으로 밝히기 위해 볼륨 분석과 함께 사용합니다. 간단하면서도 우아한 인터페이스 디자인, 지표 플롯링 및 신호는 기술 장벽을 크게 낮추고 있습니다. 한편, 사용자 정의 및 통합 가능한 매개 변수 설정은 거래자의 자신의 전략에 쉽게 통합 할 수 있습니다. 요약하면 이것은 포괄적이고 매우 실용적인 수치 거래 전략입니다.


/*backtest
start: 2024-01-10 00:00:00
end: 2024-01-17 00:00:00
period: 30m
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Support and Resistance channel with Breaks p5", shorttitle="Support and Resistance channel with Breaks [cryptoonchain]", overlay=true, max_bars_back=1000)

// Input variables
toggleBreaks = input(true, title="Show Breaks")
leftBars = input(15, title="Left Bars")
rightBars = input(15, title="Right Bars")
volumeThresh = input(20, title="Volume Threshold")

// Calculate pivot levels
highUsePivot = fixnan(ta.pivothigh(leftBars, rightBars)[1])
lowUsePivot = fixnan(ta.pivotlow(leftBars, rightBars)[1])

// Plot resistance and support lines
r1 = plot(highUsePivot, color=color.new(na(highUsePivot) ? na : #FF0000, 0), linewidth=3, offset=-(rightBars + 1), title="Resistance")
s1 = plot(lowUsePivot, color=color.new(na(lowUsePivot) ? na : #233dee, 0), linewidth=3, offset=-(rightBars + 1), title="Support")

// Volume %
short = ta.ema(volume, 5)
long = ta.ema(volume, 10)
osc = 100 * (short - long) / long

// Plot shapes for breaks with volume
plotshape(toggleBreaks and ta.crossunder(close, lowUsePivot) and not (open - close < high - open) and osc > volumeThresh, title="Break", text='B', style=shape.labeldown, location=location.abovebar, color=color.red, textcolor=color.white, transp=0, size=size.tiny)
plotshape(toggleBreaks and ta.crossover(close, highUsePivot) and not (open - low > close - open) and osc > volumeThresh, title="Break", text='B', style=shape.labelup, location=location.belowbar, color=color.green, textcolor=color.white, transp=0, size=size.tiny)

// Alert conditions
alertcondition(ta.crossunder(close, lowUsePivot) and osc > volumeThresh, title="Support Broken", message="Support Broken")
alertcondition(ta.crossover(close, highUsePivot) and osc > volumeThresh, title="Resistance Broken", message="Resistance Broken")

// Strategy conditions with filter
longCondition = low > highUsePivot and osc > volumeThresh
shortCondition = high < lowUsePivot and osc > volumeThresh


// Strategy entries
strategy.entry("My Long Entry Id", strategy.long, when=longCondition)
strategy.entry("My Short Entry Id", strategy.short, when=shortCondition)


더 많은