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


Дата создания: 2023-11-07 15:01:19 Последнее изменение: 2023-11-07 15:01:19
Копировать: 0 Количество просмотров: 686
1
Подписаться
1617
Подписчики

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

Обзор

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

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

Эта стратегия начинается с вычисления индикатора ценовых колебаний (GDPO), сравнивая цены закрытия с показателями движущихся средних за определенный период, чтобы определить ценовые циклы в краткосрочной перспективе. Затем GDPO выполняется Гауцкий сглаживание, применяя технологию Гауцкого сглаживания с использованием Arnaud Legoux Moving Averages (ALMA), фильтруя шум, чтобы получить более четкую картину ценовых тенденций.

Стратегия определяет конкретные условия входа и выхода для многозадачи на сглаженном GDPR и его отсталой версии. Когда сглаженный GDPR проходит отсталой версией и является отрицательным, делается многозадачи; когда сглаженный GDPR проходит отсталой версией или нулевой осью, делается многозадачи. Аналогично, когда сглаженный GDPR проходит отсталой версией и является правильным, делается пустой вход; когда сглаженный GDPR проходит отсталой версией или нулевой осью, делается пустые задачи.

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

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

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

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

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

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

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

Эта стратегия может быть оптимизирована в следующих направлениях:

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

  2. В сочетании с трендовыми показателями, такими как ADX, предотвращение реверсивной стратегии в условиях тренда сохраняет убытки.

  3. Добавление стратегий стоп-лосса, таких как корректировка стоп-лосса в зависимости от колебаний цены или перемещение стоп-лосса после прибыли.

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

  5. Оптимизация управления капиталом, корректировка позиций и стоп-стоп в зависимости от рыночных условий.

  6. Тестирование различных ценовых данных, таких как солнечная линия, круговая линия и т. д., для оценки эффективности стратегии в разные периоды.

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

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

Исходный код стратегии
/*backtest
start: 2022-10-31 00:00:00
end: 2023-11-06 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// This source code is subject to the terms of the Mozilla Public License 2.0
// © DraftVenture

//@version=5
strategy(title="Gaussian Detrended Reversion Strategy", overlay=false, default_qty_type=strategy.percent_of_equity, default_qty_value=15)

//Detrended Price Oscillator for price cycles
period_ = input.int(50, title="Price Length", minval=1)

barsback = period_/2 + 1
ma = ta.ema(close, period_)
dpo = close - ma[barsback]

// Rounded ALMA Calculations for gaussian smoothing
almaSource = dpo
almaWindowSize = input(title="Smoothing Length", defval=50)
lagLength = input(title="Lag Length", defval=25)
almaSmoothed = ta.alma(almaSource, almaWindowSize, 0.85, 6)
almaLag = almaSmoothed[lagLength]

// Reversion entry conditions
entryL = ta.crossover(almaSmoothed, almaLag) and almaSmoothed < 0
exitL = ta.crossunder(almaSmoothed, almaLag) or ta.crossunder(almaSmoothed, 0)
entryS = ta.crossunder(almaSmoothed, almaLag) and almaSmoothed > 0
exitS = ta.crossover(almaSmoothed, almaLag) or ta.crossover(almaSmoothed, 0)

// Long entry and exit
if entryL
    strategy.entry("Long", strategy.long)

if exitL
    strategy.close("Long")

// Short entry and exit
if entryS
    strategy.entry("Short", strategy.short)

if exitS
    strategy.close("Short")

// Plot the oscillator
plot(almaSmoothed, title="GDPO", color=color.green)
plot(almaLag, title="Lag", color=color.white)

hline(0, title="Zero Line", color=color.white)

bgcolor(entryL ? color.new(color.green, 40) : na)
bgcolor(entryS ? color.new(color.red, 40) : na)

plotshape(series=ta.crossunder(almaSmoothed, almaLag) or ta.crossunder(almaSmoothed, 0), style=shape.xcross, location=location.top, color=color.white, size=size.tiny)
plotshape(series=ta.crossover(almaSmoothed, almaLag) or ta.crossover(almaSmoothed, 0), style=shape.xcross, location=location.bottom, color=color.white, size=size.tiny)

//Strategy by KP