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

트렌드 필터링 핀 바 역전 전략

저자:차오장, 날짜: 2024-06-07 16:48:23
태그:SMARSIPB

img

전반적인 설명

이 전략은 주로 핀 바라는 특정 촛불 패턴을 인식함으로써 잠재적인 시장 반전 지점을 식별하는 것을 목표로 한다. 핀 바는 긴 그림자와 작은 몸으로 특징이며, 그 가격 수준에서 상당한 시장 변동성을 나타냅니다. 그러나 궁극적으로 가격은 다시 돌아갑니다. 이 수준이 지원 또는 저항으로 작용할 수 있음을 암시합니다. 이 전략은 현재 트렌드 방향을 결정하기 위해 50 기간 간 간단한 이동 평균 (SMA) 과 20 기간 간 볼륨 SMA를 필터로 사용합니다. 핀 바 신호가 유효한 것으로 간주되기 위해서는 볼륨이 이 평균 이상으로 간주되어야합니다. 또한, 상대 강도 지표 (RSI) 는 계산되지만 입출 조건에서 직접 사용되지 않으며 선택적 인 추가 조건 필터링으로 사용됩니다.

전략 원칙

  1. 먼저, 핀 바의 상부와 하부 그림자와 몸의 상대 크기를 결정하고, 상부 또는 하부 그림자가 전체 촛불의 높고 낮은 범위의 적어도 60%를 차지하는 것을 요구하고, 몸의 크기는 30%를 초과해서는 안됩니다.
  2. 핀 바가 상승하거나 하락하는지를 결정하기 위해 종료 및 개막 가격을 비교하십시오.
  3. 현재 트렌드를 식별하기 위해 50주기 SMA를 사용하며, 종료 가격이 SMA보다 높을 때 상승 트렌드, 그 아래에서 하락 트렌드로 간주합니다.
  4. 분량 필터의 임계값으로 20주기 분량 SMA를 설정하고, 분량 발생시 분량이 이 값보다 크면만 유효한 핀 바 신호를 고려합니다.
  5. 확인된 상승률과 하락률을 나타냅니다.
  6. 올리는 핀 바가 나타나면 긴 포지션과 하락하는 핀 바가 나타나면 짧은 포지션을 입력합니다.
  7. 스톱 로스를 핀 바의 몸의 두 배로 설정하고 수익을 3 배로 설정하십시오. 긴 포지션에서는 스톱 로스를 핀 바의 낮보다 낮고 수익을 높게 설정하십시오. 짧은 포지션에서는 그 반대의 경우.

이점 분석

  1. 핀 바는 매우 직관적이고 효과적인 가격 반전 패턴으로 시장 분위기의 갑작스러운 변화를 정확하게 파악할 수 있습니다.
  2. 트렌드 필터는 핀 바 신호가 현재 트렌드 방향과 일치하도록 보장하여 신호의 승률을 크게 향상시킵니다.
  3. 부피 조건은 시장 소음을 필터링하여 충분한 유동성을 확보하여 핀 바 신호가 적절한 시장 참여를 보장합니다.
  4. 스톱 로즈와 수익 포지션은 핀 바의 특성에 따라 설정되며 합리적인 리스크/이익 비율을 제공합니다.
  5. 코드 논리와 규칙은 명확하고 이해하기 쉽고 구현하기 쉽습니다.

위험 분석

  1. 트렌드 필터가 덜 효과적 인 불안정한 시장에서 핀 바 신호의 신뢰성은 크게 감소 할 수 있습니다.
  2. 핑 바스는 매우 강한 하향 또는 상승 현상에 직면했을 때 실패할 수 있습니다.
  3. 거래 빈도는 상대적으로 낮아서 백테스트 샘플이 충분하지 않을 수 있습니다.
  4. 기본 매개 변수는 특정 도구 및 시간 프레임에 대한 추가 최적화가 필요할 수 있습니다.
  5. 단일 신호 시스템으로서 전체적인 위험은 상대적으로 높습니다.

최적화 방향

  1. 신호 소스를 풍부하게 하기 위해 내부 바와 같은 다른 반전 패턴을 도입하는 것을 고려하십시오.
  2. ATR와 같은 변동성 지표를 사용하여 다른 시장 조건에 적응하기 위해 동적으로 스톱 로스를 조정하고 수익 포지션을 취합니다.
  3. 이윤을 극대화하기 위해 지연 중지 비율을 구현합니다.
  4. 경제 달력이나 중요한 사건과 같은 더 기본적인 데이터를 포함시켜 잠재적으로 유효하지 않은 신호를 필터링합니다.
  5. 각 거래의 위험 노출을 제어하기 위한 자금 관리 모듈을 도입해야 합니다.

요약

이 핀 바 반전 전략은 트렌드 필터링과 볼륨 필터링을 사용하여 신호 인식 정확성을 향상시키기 위해 간단하고 효과적인 접근 방식을 사용합니다. 개선할 여지가 있지만 전반적인 개념은 실현 가능하며 추가 최적화 및 테스트에 가치가 있습니다. 고전적인 가격 패턴으로서, 핀 바는 더 견고한 거래 시스템을 달성하기 위해 다른 지표 또는 신호와 결합 될 수 있습니다.


/*backtest
start: 2024-05-01 00:00:00
end: 2024-05-31 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Filtered Pin Bar Strategy with Relaxed Volume", overlay=true)

// Define the size of the pin bar's wick and body
wickSize = 0.6
bodySize = 0.3

// Calculate the size of the wicks and body
upperWick = high - math.max(open, close)
lowerWick = math.min(open, close) - low
body = math.abs(close - open)

// Define a simple moving average to determine the trend
smaLength = 50
sma = ta.sma(close, smaLength)

// Define a more relaxed volume threshold
volumeThreshold = ta.sma(volume, 20) * 1.0

// Define RSI parameters
rsiLength = 14
rsiOverbought = 70
rsiOversold = 30
rsi = ta.rsi(close, rsiLength)

// Define the conditions for a bullish pin bar
bullishPinBar = (lowerWick > (wickSize * (high - low))) and
     (body < (bodySize * (high - low))) and
     (close > open) and
     (close > sma) and
     (volume > volumeThreshold)

// Define the conditions for a bearish pin bar
bearishPinBar = (upperWick > (wickSize * (high - low))) and
     (body < (bodySize * (high - low))) and
     (close < open) and
     (close < sma) and
     (volume > volumeThreshold)

// Plot the bullish and bearish pin bars on the chart
plotshape(series=bullishPinBar, title="Bullish Pin Bar", location=location.belowbar, color=color.green, style=shape.labelup, text="PB")
plotshape(series=bearishPinBar, title="Bearish Pin Bar", location=location.abovebar, color=color.red, style=shape.labeldown, text="PB")

// Entry and exit rules
if (bullishPinBar)
    strategy.entry("Bullish Pin Bar", strategy.long)
if (bearishPinBar)
    strategy.entry("Bearish Pin Bar", strategy.short)

// Optional: Set stop loss and take profit
stopLoss = 2 * body
takeProfit = 3 * body
strategy.exit("Exit Long", from_entry="Bullish Pin Bar", stop=low - stopLoss, limit=high + takeProfit)
strategy.exit("Exit Short", from_entry="Bearish Pin Bar", stop=high + stopLoss, limit=low - takeProfit)


관련

더 많은