Параболическая стратегия обратного SAR

Автор:Чао Чжан, Дата: 2023-09-18 21:59:08
Тэги:

Обзор

Эта стратегия торгуется на основе индикатора Parabolic 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()


Больше