Простая комбинированная стратегия: Pivot Point Supertrend и двойная экспоненциальная скользящая средняя

ATR DEMA EMA
Дата создания: 2024-06-17 14:49:14 Последнее изменение: 2024-06-17 14:49:14
Копировать: 0 Количество просмотров: 723
1
Подписаться
1617
Подписчики

Простая комбинированная стратегия: Pivot Point Supertrend и двойная экспоненциальная скользящая средняя

Обзор

Эта стратегия объединяет индикатор супертенденции на центральной оси и двойной индексный подвижной средний (DEMA) индикатор, чтобы оценить торговый сигнал, анализируя позиционную связь цен между этими двумя индикаторами. Когда цена пробивает индикатор супертенденции на центральной оси и выше показателя DEMA, генерируется многосигналный сигнал; когда цена падает ниже индикатора супертенденции на центральной оси и ниже показателя DEMA, генерируется пустой сигнал.

Стратегический принцип

  1. Вычисление гипертенденциального индикатора опорных точек: с помощью вычисления среднего значения наивысшей и наименьшей цены в течение определенного периода в качестве центральной точки, а затем вычисления на основе средней реальной диапазоны волн ((ATR) вверх и вниз, формируя динамические точки поддержки и сопротивления.
  2. Вычислить показатель DEMA: сначала вычислить индексную скользящую среднюю цены закрытия ((EMA), затем сделать индексную скользящую среднюю для EMA, а затем уменьшить DEMA в два раза, чтобы получить окончательный показатель DEMA.
  3. Получает торговый сигнал: появление сигнала, когда цена пересекает сверхтенденцию и находится выше показателя DEMA; появление сигнала, когда цена пересекает сверхтенденцию и находится ниже показателя DEMA.
  4. Настройка стоп-лосс и стоп-принтов: конкретные стоп-лосс и стоп-принты рассчитываются в зависимости от пиповой стоимости (Pip Value) и заданного количества стоп-лосс (Stop Loss Pips) и стоп-принтов (Take Profit Pips).

Стратегические преимущества

  1. Сильная способность отслеживать тенденции: Супертенденционный индикатор Hubspot может эффективно улавливать тенденции рынка, а индикатор DEMA может устранять ценовой шум и обеспечивать более плавную основу для определения тенденций, что в сочетании позволяет точно понять основные тенденции рынка.
  2. Адаптируемость: благодаря динамической корректировке взлета и падения сверхтенденционного индикатора, можно адаптироваться к различным рыночным колебаниям и повысить адаптивность стратегии.
  3. Сильная способность к контролю риска: установлены четкие позиции стоп-лосса и стоп-стопа, которые позволяют эффективно контролировать риск входа в отдельную сделку, а также своевременно блокировать уже полученную прибыль.

Стратегический риск

  1. Риск параметровой настройки: эффективность стратегии зависит от настройки нескольких параметров, таких как период точек оси, ATR-фактор, длина DEMA и т. д. Различные комбинации параметров могут привести к значительному различию в эффективности стратегии, требуя тщательного выбора и оптимизации.
  2. Риск шокирующего рынка: в условиях шокирующего рынка, частота торговых сигналов может привести к чрезмерной торговле, что увеличивает стоимость торговли и риск скольжения.
  3. Риск поворота тренда: когда рыночная тенденция поворачивается, стратегия может оказаться в убыточном состоянии, что требует своевременной корректировки стратегии в сочетании с другими методами анализа.

Направление оптимизации стратегии

  1. Параметровая оптимизация: находить оптимальные комбинации параметров, повышая стабильность и прибыльность стратегии путем проведения параметро-оптимизированных тестов на различные временные периоды и торговые разновидности.
  2. Сигнальная фильтрация: при появлении торгового сигнала может быть произведена повторная подтверждение в сочетании с другими техническими показателями или характеристиками ценового поведения, повышая надежность сигнала и уменьшая убытки от ложных сигналов.
  3. Управление позициями: Динамически корректируйте размер позиций для каждой сделки в зависимости от рыночных колебаний и рисковой устойчивости счета, контролируя общий риск.
  4. Оптимизация портфеля: комбинирование стратегии с другими стратегиями или торговыми системами для повышения долгосрочной эффективности стратегии путем дифференцирования риска и повышения стабильности.

Подвести итог

Эта стратегия может лучше улавливать рыночные тенденции, а также реагировать на краткосрочные колебания, используя комбинацию гипертенденциальных показателей и показателей DEMA. Стратегия обладает преимуществами, такими как высокая способность отслеживать тенденции, высокая адаптивность и высокая способность управлять рисками, но в то же время она также сталкивается с такими рисками, как настройка параметров, рыночная волатильность и изменение тенденции. С помощью таких средств, как оптимизация параметров, фильтрация сигналов, управление позицией и оптимизация портфеля, можно еще больше повысить стабильность и прибыльность стратегии и лучше адаптироваться к различным рыночным условиям.

Исходный код стратегии
/*backtest
start: 2024-05-01 00:00:00
end: 2024-05-31 23:59:59
period: 4h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Simple Combined Strategy: Pivot Point SuperTrend and DEMA", overlay=true)

// Pivot Point SuperTrend settings
prd = input.int(2, title="Pivot Point Period", minval=1, maxval=50)
Factor = input.float(3.0, title="ATR Factor", minval=1, step=0.1)
Pd = input.int(10, title="ATR Period", minval=1)

// Double EMA settings
demaLength = input.int(200, title="DEMA Length", minval=1)
src = input(close, title="Source")

// Pip settings
pipValue = input.float(0.0001, title="Pip Value")
stopLossPips = input.int(15, title="Stop Loss (pips)")
takeProfitPips = input.int(35, title="Take Profit (pips)")

// Pivot Point SuperTrend Calculation
float ph = ta.pivothigh(prd, prd)
float pl = ta.pivotlow(prd, prd)
var float center = na
if not na(ph)
    center := na(center) ? ph : (center * 2 + ph) / 3
if not na(pl)
    center := na(center) ? pl : (center * 2 + pl) / 3

Up = center - (Factor * ta.atr(Pd))
Dn = center + (Factor * ta.atr(Pd))
var float TUp = na
var float TDown = na
var int Trend = na

if na(Trend)
    TUp := Up
    TDown := Dn
    Trend := close > Dn ? 1 : -1
else
    TUp := close[1] > TUp[1] ? math.max(Up, TUp[1]) : Up
    TDown := close[1] < TDown[1] ? math.min(Dn, TDown[1]) : Dn
    Trend := close > TDown[1] ? 1 : close < TUp[1] ? -1 : nz(Trend[1], 1)

Trailingsl = Trend == 1 ? TUp : TDown
linecolor = Trend == 1 ? color.lime : color.red
plot(Trailingsl, color=linecolor, linewidth=2, title="PP SuperTrend")

// Double EMA Calculation
e1 = ta.ema(src, demaLength)
e2 = ta.ema(e1, demaLength)
dema = 2 * e1 - e2
plot(dema, "DEMA", color=color.new(#43A047, 0))

// Strategy Logic
longCondition = close > Trailingsl and close > dema and strategy.position_size <= 0
shortCondition = close < Trailingsl and close < dema and strategy.position_size >= 0

// Plot signals
plotshape(series=longCondition, title="Long", location=location.belowbar, color=color.green, style=shape.labelup, text="Long")
plotshape(series=shortCondition, title="Short", location=location.abovebar, color=color.red, style=shape.labeldown, text="Short")

// Strategy Entry and Exit
if (longCondition)
    strategy.entry("Long", strategy.long, stop=close - (stopLossPips * pipValue), limit=close + (takeProfitPips * pipValue))
if (shortCondition)
    strategy.entry("Short", strategy.short, stop=close + (stopLossPips * pipValue), limit=close - (takeProfitPips * pipValue))

alertcondition(longCondition, title="Long Alert", message="Long Signal")
alertcondition(shortCondition, title="Short Alert", message="Short Signal")