Адаптивная стратегия следования за трендом веса (система комбинирования нескольких индикаторов VIDYA)

EMA CMO MA
Дата создания: 2024-12-05 15:07:47 Последнее изменение: 2024-12-05 15:07:47
Копировать: 0 Количество просмотров: 404
1
Подписаться
1617
Подписчики

Адаптивная стратегия следования за трендом веса (система комбинирования нескольких индикаторов VIDYA)

Обзор

Стратегия является системой для отслеживания трендов, основанной на индикаторе VIDA (Динамическая средняя по переменным индексам). Стратегия адаптируется к рыночным колебаниям с помощью динамического регулирования веса, сочетает в себе два метода вычисления - динамический индикатор CMO и стандартный разрыв StDev для более точного выявления трендов и генерации торговых сигналов. Система вводит механизм самостоятельной адаптации, основанный на традиционных движущихся средних, способных автоматически корректировать чувствительность в зависимости от рыночных условий.

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

В основе стратегии лежит индикатор VIDYA, процесс его расчета включает в себя следующие ключевые шаги:

  1. Определяет базовый цикл (например, 21-й по умолчанию) и сглаживающий коэффициент alpha с помощью параметров
  2. Введение CMO или StDev в качестве метода расчета волатильности
  3. Использование динамических весов k для корректировки чувствительности VIDYA к изменениям цены
  4. При переходе линии ВИДЯ вверх образуется многосигнал, а при переходе вниз - пустой сигнал.

Эта стратегия позволяет пользователям выбирать между использованием CMO или стандартного отклонения для расчета коэффициента волатильности, что увеличивает гибкость стратегии. В режиме CMO фиксируется 9 циклов, а в режиме стандартного отклонения - базовый цикл.

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

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

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

  1. Трендозависимость: частое возникновение ложных сигналов на рынке во время колебаний
  2. Чувствительные к параметрам: различные комбинации параметров влияют на эффективность стратегии
  3. Отсталость: существует определенная отсталость в качестве среднелинейного показателя
  4. Рыночная адаптивность: в некоторых конкретных рыночных условиях может быть недостаточной
  5. Управление деньгами: отсутствие механизма остановки убытков может привести к более крупным отступлениям

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

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

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

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

Исходный код стратегии
/*backtest
start: 2019-12-23 08:00:00
end: 2024-12-04 00:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © GriffinJames


//@version=5
strategy("VIDYA Strategy", overlay=true, initial_capital=25000)

// Inputs
src = input(close, title="Source")
pds = input.int(21, title="Length")
fixCMO = input.bool(true, title="Fixed CMO Length (9)?")
select = input.bool(true, title="Calculation Method: CMO/StDev?")
alpha = 2 / (pds + 1)
momm = ta.change(src)

// Functions to calculate MOM
f1(m) => m >= 0.0 ? m : 0.0
f2(m) => m >= 0.0 ? 0.0 : -m

m1 = f1(momm)
m2 = f2(momm)
sm1 = fixCMO ? math.sum(m1, 9) : math.sum(m1, pds)
sm2 = fixCMO ? math.sum(m2, 9) : math.sum(m2, pds)

percent(nom, div) => 100 * nom / div
chandeMO = na(percent(sm1 - sm2, sm1 + sm2)) ? 0 : percent(sm1 - sm2, sm1 + sm2)

// Select calculation method
k = select ? math.abs(chandeMO) / 100 : ta.stdev(src, pds)

// Calculate VIDYA
var float VIDYA = na
VIDYA := na(VIDYA[1]) ? src : alpha * k * src + (1 - alpha * k) * VIDYA[1]

// Conditions for long and short
col12 = VIDYA > VIDYA[1]
col32 = VIDYA < VIDYA[1]

// Plot VIDYA with dynamic colors
color2 = col12 ? color.new(color.blue, 0) : col32 ? color.new(color.maroon, 0) : color.new(color.blue, 0)
plot(VIDYA, "VAR", color=color2, linewidth=2)

// Long and Short Strategy
if (col12)
    strategy.entry("Go Long", strategy.long)
if (col32)
    strategy.entry("Go Short", strategy.short)

// Alert for VIDYA color change
alertcondition(ta.cross(VIDYA, VIDYA[1]), title="Color ALARM!", message="VIDYA has changed color!")