SMA 및 PSAR 지표를 기반으로 한 롱숏 전략


생성 날짜: 2023-12-18 10:31:31 마지막으로 수정됨: 2023-12-18 10:31:31
복사: 0 클릭수: 772
avatar of ChaoZhang ChaoZhang
1
집중하다
1621
수행원

SMA 및 PSAR 지표를 기반으로 한 롱숏 전략

개요

이 전략은 SMA와 PSAR 다공간 전략 이라고 불리며, 간단한 이동 평균 ((SMA) 과 패러블라인 전환 지표 ((PSAR) 의 장점을 결합하여 시장의 경향 방향을 판단하여 거래 신호를 발산합니다. SMA가 상승 추세를 보이고 PSAR이 가격 아래에있을 때, 구매 시점으로 간주하고; SMA가 하향 추세를 보이고 PSAR이 가격보다 높을 때, 판매 신호로 간주합니다.

전략 원칙

이 전략은 100주기의 SMA를 사용하여 전체 트렌드 방향을 판단한다. 종결 가격 상승이 SMA 100을 돌파할 때 상승 트렌드로 정의되며, 종결 가격이 SMA 100을 돌파할 때 하락 트렌드로 정의된다.

동시에, 계산 PSAR 지표 판단 세부 시장 진입 지점. PSAR 초기 값은 0.02, 증가 값은 0.01, 최대 값은 0.2이다. 상승 추세에서, PSAR이 종결 가격 아래에 있으면 구매 신호를 발생; 그리고 하향 추세에서 PSAR이 종결 가격보다 높으면 판매 신호를 발생한다.

종합적으로 볼 때, 상승 추세로 판단할 때, PSAR이 종료 가격보다 낮으면 구매 신호가 발생하고, 하향 추세로 판단할 때, PSAR이 종료 가격보다 높으면 판매 신호가 발생한다.

거래 위험을 줄이기 위해, 이 전략은 또한 시간적 출구를 설정하여 거래 5분 후에 매각한다.

우위 분석

이 전략은 SMA와 PSAR 지표의 판단 트렌드 및 출시 시기를 결합하여 두 가지 지표의 장점을 효과적으로 활용하여 의사 결정의 정확성을 향상시킬 수 있습니다. SMA는 큰 트렌드를 판단하는 데 사용할 수 있으며, PSAR은 세부적인 출시 지점에 더 민감합니다. 두 가지의 조합은 전략을 더 완벽하게 사용할 수 있습니다.

또한, 시간 출구를 설정하는 것은 단일 거래의 위험을 제어하고 과도한 손실을 피하는 데 도움이됩니다. 전체적으로, 이 전략은 안정적이고 신뢰할 수 있으며 대부분의 시장 환경에 적합합니다.

위험 분석

  • SMA와 PSAR 지표는 잘못된 신호를 만들어 불필요한 거래 손실을 초래할 수 있습니다.

  • 시간 출구 설정이 짧기 때문에 트렌드를 제대로 파악할 수 없습니다.

  • 매개 변수 설정 (SMA 주기, PSAR 매개 변수 등) 은 특정 품종에 적합하지 않을 수 있으며 최적화가 필요합니다.

  • 리테크 데이터 적합성 위험. 실장에서의 시장 환경이 변할 수 있으며, 전략은 리테크보다 좋지 않을 수 있다.

최적화 방향

  • 다양한 SMA 주기 변수를 테스트하여 특정 품종에 더 적합한 값을 찾습니다.

  • 테스트는 PSAR의 파라미터 설정을 최적화하여 세부적인 출시점을 더 정확하게 판단할 수 있도록 합니다.

  • 기간을 연장하는 Exit의 변수, 수익성이 충분하다는 전제 하에, 보유 기간을 적절히 연장한다.

  • 단 하나 거래의 최대 손실을 제어하기 위해 Stop Loss 전략이 추가되었습니다.

요약하다

이 전략은 SMA와 PSAR과 같은 지표를 종합적으로 사용하여 시장의 움직임을 판단하고 시장 진입 시기를 판단하며 안정적이고 신뢰할 수 있으며 대부분의 시장 환경에 적합합니다. 동시에 시간 출구를 설정하는 것은 위험을 제어하는 데 도움이됩니다. 이 전략은 파라미터 최적화, 손해 차단 전략 등으로 더 개선 될 수 있으므로 더 나은 실전 효과를 얻을 수 있습니다.

전략 소스 코드
/*backtest
start: 2023-12-10 00:00:00
end: 2023-12-17 00:00:00
period: 1m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
strategy(title="SMA and Parabolic SAR Strategy with Time-Based Exit", shorttitle="SMA+PSAR", overlay=true)

// Define the parameters for the Parabolic SAR
psarStart = 0.02
psarIncrement = 0.01
psarMax = 0.2

// Calculate the 100-period SMA
sma100 = sma(close, 1000)

// Calculate the Parabolic SAR
sar = sar(psarStart, psarIncrement, psarMax)

// Determine the trend direction
isUpTrend = close < sma100

// Buy condition: Up trend and SAR below price
buyCondition = isUpTrend and sar < close

// Sell condition: Down trend and SAR above price
sellCondition = not isUpTrend and sar > close

// Plot the SMA and Parabolic SAR
plot(sma100, color=color.blue, title="100-period SMA")
plot(sar, color=color.red, title="Parabolic SAR")

// Plot buy and sell signals
plotshape(series=buyCondition, title="Buy Signal", location=location.belowbar, color=color.green, style=shape.triangleup, size=size.small)
plotshape(series=sellCondition, title="Sell Signal", location=location.abovebar, color=color.red, style=shape.triangledown, size=size.small)

// Strategy entry
strategy.entry("Buy", strategy.long, when = buyCondition)

// Time-based exit after 5 minutes
strategy.exit("Close Buy", from_entry = "Buy", when = time[0] > timestamp(year, month, dayofmonth, hour, minute + 5))

strategy.entry("Sell", strategy.short, when = sellCondition)

// Time-based exit after 5 minutes
strategy.exit("Close Sell", from_entry = "Sell", when = time[0] > timestamp(year, month, dayofmonth, hour, minute + 5))