Стратегия отслеживания волатильности на основе двойной скользящей средней


Дата создания: 2024-02-29 11:15:08 Последнее изменение: 2024-02-29 11:15:08
Копировать: 0 Количество просмотров: 627
1
Подписаться
1617
Подписчики

Стратегия отслеживания волатильности на основе двойной скользящей средней

Обзор

Двухлинейная стратегия отслеживания волатильности объединяет в себе два основных подхода: стратегию отслеживания волатильности и стратегию отслеживания волатильности. Определение волатильности осуществляется путем расчета простых движущихся среднелинейных перекрестков разных циклов, а в сочетании с полосами Боллинджера и индикатором VIDYA - для определения тенденций и волатильности рынка, для четкого определения тенденций и эффективного захвата ключевых точек.

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

Ключевые показатели этой стратегии включают в себя простые движущиеся средние, колеблющиеся полосы Bollinger и средние значения волатильности индекса VIDYA. Стратегия устанавливает различные периоды быстрого SMA и медленного LMA, с золотым крестом быстрого и медленного LMA в качестве многосигнального сигнала, а мертвым крестом в качестве сигнала равновесия. В то же время, волатильная полоса Bollinger определяет, когда цены прорываются вверх и вниз в процессе удержания позиции.

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

Анализ преимуществ

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

  1. Стратегия “Золотой форк” проста и эффективна, она позволяет четко определить переломные моменты в тренде.
  2. Показатель волатильности VIDYA позволяет динамически отслеживать изменения волатильности рынка;
  3. Поскольку Bollinger Bands позволяют стратегии своевременно реагировать на колебания цены,

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

Анализ рисков

Несмотря на все преимущества этой стратегии, существуют определенные риски, о которых следует помнить:

  1. Неправильная настройка параметров может привести к чрезмерной частоте торгов, увеличению стоимости торгов и потере скользящих точек;
  2. В случае конфликта сигналов в двойных оценках требуется четкий приоритет, иначе можно пропустить оптимальный момент входа в игру;
  3. Существует риск перенастройки стратегического отбора, и реальная производительность может значительно отличаться от результатов отбора.

Для снижения вышеуказанных рисков рекомендуется оптимизировать параметры, четко определить приоритет сигналов индикатора, увеличить контроль скольжения и многократно проверять устойчивость стратегии в различных рыночных условиях.

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

Основные направления оптимизации этой стратегии сосредоточены на параметрах и условиях фильтрации, которые могут быть выполнены в следующих измерениях:

  1. оптимизация среднелинейных параметров циклов для быстрых и медленных линий;
  2. корректировка параметров полосы пропускания для полосы колебаний Боллинджера;
  3. Оптимизация параметров α-гладкости в VIDYA;
  4. Условия фильтрации сверхнормативных цен или объемов сделок.

Комбинация оптимизации параметров и оптимизации правил может способствовать дальнейшему повышению стабильности и доходности стратегии.

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

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

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

//@version=5
strategy("Combined Golden Cross and Progressive Trend Tracker", shorttitle="GCC-PTT", overlay=true)

// Inputs
fastMA_period = input(50, title="Fast MA Period")
slowMA_period = input(200, title="Slow MA Period")
src = input(close, title="Source")
lengthBB = input(20, title="Bollinger Bands Length")
mult = input(2.0, title="Bollinger Bands Multiplier")
mavType = input.string(title="Moving Average Type", defval="VAR", options=['SMA', 'EMA', 'WMA', 'TMA', 'VAR', 'WWMA', 'ZLEMA', 'TSF'])

// Calculate Moving Averages for Golden Cross
fastMA = ta.sma(src, fastMA_period)
slowMA = ta.sma(src, slowMA_period)
bullish_cross = ta.crossover(fastMA, slowMA)
bearish_cross = ta.crossunder(fastMA, slowMA)

// Progressive Trend Tracker Components (Adjusted for NA assignment issue)
Var_Func(src, length) =>
    valpha = 2 / (length + 1)
    vud1 = src > src[1] ? src - src[1] : 0
    vdd1 = src < src[1] ? src[1] - src : 0
    vUD = math.sum(vud1, length)
    vDD = math.sum(vdd1, length)
    vCMO = (vUD - vDD) / (vUD + vDD)
    VAR = 0.0 // Adjusted here, assign an initial value
    VAR := ta.ema(src * math.abs(vCMO), length)
    VAR

VAR = Var_Func(src, 14) // Example VAR calculation, adjust as needed

// Bollinger Bands for dynamic support and resistance
BBandTop = fastMA + mult * ta.stdev(src, lengthBB)
BBandBot = fastMA - mult * ta.stdev(src, lengthBB)

// Plotting
plot(fastMA, color=color.blue, title="Fast MA")
plot(slowMA, color=color.red, title="Slow MA")
plot(BBandTop, color=color.green, title="Bollinger Band Top")
plot(BBandBot, color=color.red, title="Bollinger Band Bottom")
plot(VAR, color=color.purple, title="VAR", linewidth=2)

// Strategy Logic (Adjusted for strategy use)
// Long Entry when bullish cross and close above VAR
// Exit when bearish cross or close below VAR
if (bullish_cross and close > VAR)
    strategy.entry("CGC_PTT_Long", strategy.long)
if (bearish_cross or close < VAR)
    strategy.close("CGC_PTT_Long")