리소스 로딩... 로딩...

위크 반전 패턴 전략

저자:차오장, 날짜: 2023-10-16 08:58:12
태그:

전반적인 설명

피크 반전 패턴 전략은 촛불 패턴을 탐지함으로써 가격이 상승 추세에서 하락 추세로 전환하거나 반대로 전환하는 반전 지점을 식별합니다. 주로 촛불 피크와 몸 사이의 비율을 기반으로 반전 지점 주위에 긴 또는 짧은 포지션을 입력합니다.

전략 논리

이 전략의 핵심 논리는 촛불 피트와 몸 사이의 비율을 감지하여 잠재적인 반전 패턴을 식별하는 것입니다.

하향 촛불이 있을 때, 하위 빗이 상위 빗과 몸보다 훨씬 길다면, 그것은 강한 구매 압력을 나타내고 가격이 상향으로 역전될 수 있음을 나타냅니다. 구체적으로, 그것은 상위 빗과 몸과 비교하여 긴 하위 빗을 특정 곱수로 감지하여 긴 신호를 생성합니다.

반대로, 상승 촛불이 있을 때, 상단 윗부분이 하단 윗부분과 몸보다 훨씬 길다면, 이것은 강한 판매 압력을 나타내고 가격이 하향으로 역전될 수 있음을 나타냅니다. 구체적으로, 그것은 짧은 신호를 생성하기 위해 특정 곱셈자에 의해 하단 윗부분과 몸과 비교하여 긴 상단 윗부분을 감지합니다.

게다가, 작은 몸집이 있는 긴 매개로도 역전 신호를 발산할 수 있습니다.

검출은 옆 시장에서 잘못된 신호를 피하기 위해 평균 촛불 범위와 비교하여 필터링됩니다. 평균보다 큰 범위의 촛불만이 신호를 생성합니다.

장점

  • 피크와 몸의 비율을 비교하여 반전 패턴을 감지
  • 길고 짧은 반전 신호를 모두 식별
  • 중간 범위를 필터와 함께 옆에서 잘못된 신호를 피합니다
  • 단순하고 직관적인 패턴 인식 논리

위험성

  • 피크와 몸의 비율 매개 변수는 경험을 바탕으로 세밀하게 조정해야 합니다.
  • 단 하나의 촛불 패턴에 기초한 반전을 판단하는 것은 지역 변동에 의해 오해 될 수 있습니다
  • 트렌드 편향의 부재로 인해 트렌드 반대 거래에서 손실이 발생할 수 있습니다.

역동 트렌드 거래를 피하기 위해 트렌드 지표를 통합하는 것을 고려하십시오. 다른 기술 지표와 결합하면 신호를 확인하는 데 도움이 될 수 있습니다. 매개 변수는 백테스팅을 통해 최적화 될 수 있습니다.

강화

  • 트렌드 방향과 일치하는 반전을 보장하기 위해 트렌드 편향을 추가합니다.
  • 신호를 확인하기 위해 볼링거 밴드 같은 다른 지표를 포함
  • 기계 학습을 활용하여 자동으로 매개 변수와 몸 비율을 최적화합니다.
  • 손실을 중지하고 출구를 최적화하기 위해 반전 후 수익을 설정

요약

위크 반전 패턴 전략은 간단한 패턴 인식을 사용하여 반전 패턴을 효과적으로 식별하고 전환점을 잡습니다. 그러나 단일 촛불 패턴에만 의존하는 것은 오해의 소지가 있습니다. 다른 기술적 지표와 결합하고 트렌드 편향을 추가하는 것은 역 트렌드 거래를 피하고 전략 안정성을 향상시키는 데 도움이됩니다. 매개 변수 최적화 및 스톱 로스/프로프트 취득 또한 전략을 더욱 향상시키는 데 도움이됩니다. 요약하면, 위크 반전 전략은 간단하고 실용적인 아이디어를 제공하지만 성능을 극대화하기 위해 다른 기술로 보완되어야합니다.


/*backtest
start: 2023-10-08 00:00:00
end: 2023-10-15 00:00:00
period: 3m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © adiwajshing

//@version=4
strategy("Wick Reversal Signal", overlay=true)

wickMultiplier = input(3.25)
bodyPercentage = input(0.35)
barsBack = input(50)
bodyMultiplier = input(1.1)

myCandleSize = high-low
averageCandleSize = rma(myCandleSize, barsBack)

longSignal = close > open and open-low >= (close-open)*wickMultiplier and high-close <= (high-low)*bodyPercentage and high-low >= averageCandleSize*bodyMultiplier
longSignal := longSignal or (close < open and close-low >= (open-close)*wickMultiplier and high-close <= (high-low)*bodyPercentage and high-low >= averageCandleSize*bodyMultiplier)
longSignal := longSignal or (abs(close-open) < 0.01 and close != high and high-low >= (high-close)*wickMultiplier and high-close <= (high-low)*bodyPercentage and high-low >= averageCandleSize*bodyMultiplier)

shortSignal = close < open and high-open >= (open-close)*wickMultiplier and close-low <= (high-low)*bodyPercentage and high-low >= averageCandleSize*bodyMultiplier
shortSignal := shortSignal or (close > open and high-close >= (close-open)*wickMultiplier and close-low <= (high-low)*bodyPercentage and high-low >= averageCandleSize*bodyMultiplier)
shortSignal := shortSignal or (abs(close-open) < 0.01 and close != low and high-low >= (close-low)*wickMultiplier and close-low <= (high-low)*bodyPercentage and high-low >= averageCandleSize*bodyMultiplier)

plotshape(longSignal, style=shape.triangleup, size=size.normal)
plotshape(shortSignal, style=shape.triangledown, size=size.normal)

strategy.entry("LONG", strategy.long, when=longSignal)
strategy.entry("SHORT", strategy.short, when=shortSignal)

더 많은