파라볼리 SAR 역전 전략

저자:차오장, 날짜: 2023-09-18 21:59:08
태그:

전반적인 설명

이 전략은 트렌드에서 잠재적 인 반전 지점을 식별하는 패러볼릭 SAR 지표에 기반하여 거래됩니다. SAR가 가격 이상 또는 아래로 전환되면 입시 신호가 생성됩니다.

원칙

패러볼리 SAR는 주로 트렌드 반전을 식별하는 트렌드를 따르는 지표입니다.

SAR가 가격 아래로 떨어지면 상승 추세를 나타냅니다. SAR가 가격 위에 돌면 짧은 신호를 제공합니다.

SAR가 가격보다 높으면 하락 추세를 나타냅니다. SAR가 가격보다 낮으면 긴 신호를 제공합니다.

이 전략은 단순히 SAR 플립을 신호 방향으로 거래하고 SAR를 스톱 로스로 거래합니다.

장점

  1. SAR는 역행할 수 있는 지점을 정확하게 파악합니다.

  2. 트렌드를 따르는 메커니즘은 잘못된 신호를 줄여줍니다.

  3. SAR는 후속 정지 역할을 하고, 함락되는 것을 피합니다.

  4. 다른 지표나 필터가 필요하지 않습니다.

  5. 쉽게 매개 변수를 최적화 할 수 있습니다. 기본 설정은 종종 작동합니다.

위험 및 완화

  1. SAR는 시장의 범위에서 윙사이를 할 수 있습니다. 트렌드 필터는 추가 될 수 있습니다.

  2. SAR가 가격에 너무 가까워지면 타격을 받을 위험이 있습니다.

  3. 부피는 무시되고, 분리가 발생할 위험이 있습니다. 부피 지표는 도움이 될 수 있습니다.

  4. 마감액은 상당한 수 있습니다. 적절한 포지션 사이즈가 중요합니다.

  5. 역행은 항상 성공하지 않습니다. 확인이 필요할 수도 있습니다.

더 나은 기회

  1. SAR 매개 변수를 개선할 수 있는지 테스트합니다.

  2. MACD와 같은 지표를 추가하면 역전 가능성을 확인합니다.

  3. 역동적인 후속 정지 메커니즘을 만들자

  4. SAR 신호를 활용하기 위해 입구 위치 크기를 최적화합니다.

  5. 리버스 확인 논리를 추가하는 연구

요약

이 전략은 SAR에 의해 식별된 잠재적 인 반전 지점을 거래하며, SAR가 가격을 뒤집을 때 거래를합니다. 장점에는 함정을 피하기 위해 후속 중지가 포함됩니다. 그러나 SAR 타이밍은 정확하지 않을 수 있으며 정리가 필요합니다. 전반적으로 SAR 반전 개념은 배울 가치가 있습니다.


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

//@version=3
strategy("Parabolic SAR Strategy", overlay=true)

// 
// author: Kozlod
// date: 2018-09-03
// https://www.tradingview.com/u/Kozlod/
// 

start = input(0.02)
increment = input(0.02)
maximum = input(0.2)

////////////////////////////////////////////////////////////////////////////////
// BACKTESTING RANGE
 
// From Date Inputs
fromDay = input(defval = 1, title = "From Day", minval = 1, maxval = 31)
fromMonth = input(defval = 1, title = "From Month", minval = 1, maxval = 12)
fromYear = input(defval = 2018, title = "From Year", minval = 1970)
 
// To Date Inputs
toDay = input(defval = 1, title = "To Day", minval = 1, maxval = 31)
toMonth = input(defval = 1, title = "To Month", minval = 1, maxval = 12)
toYear = input(defval = 2019, title = "To Year", minval = 1970)
 
// Calculate start/end date and time condition
startDate = timestamp(fromYear, fromMonth, fromDay, 00, 00)
finishDate = timestamp(toYear, toMonth, toDay, 00, 00)
time_cond = true
 
////////////////////////////////////////////////////////////////////////////////

psar = sar(start, increment, maximum)

// Signals
psar_long  = high[1] < psar[2] and high > psar[1] 
psar_short = low[1]  > psar[2] and low  < psar[1] 

// Plot PSAR
plotshape(psar, location = location.absolute, style = shape.cross, size = size.tiny, color = low < psar[1] and not psar_long ? green : red)


if (psar >= high and time_cond)
    strategy.entry("ParLE", strategy.long, stop=psar, comment="ParLE")
else
    strategy.cancel("ParLE")

if (psar <= low and time_cond)
    strategy.entry("ParSE", strategy.short, stop=psar, comment="ParSE")
else
    strategy.cancel("ParSE")

if (not time_cond)
    strategy.close_all()


더 많은