Долгосрочная стратегия Triple SMA Adaptive K-line Crossover


Дата создания: 2023-11-24 14:26:37 Последнее изменение: 2023-11-24 14:26:37
Копировать: 2 Количество просмотров: 550
1
Подписаться
1617
Подписчики

Долгосрочная стратегия Triple SMA Adaptive K-line Crossover

Обзор

Эта стратегия формирует входный сигнал длинной линии путем комбинирования использования простых движущихся средних (SMA) в трех различных периодах с Кауфмановой адаптированной движущейся средней. Кроме того, стратегия также объединяет цвет сущности K-линии, чтобы определить основную тенденцию, и создает сигнал покупки только в многоочередных тенденциях, чтобы избежать ложных прорывов.

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

В этой стратегии используются 3 различных цикла SMA, включая SMA 4, SMA 9 и SMA 18. Кросс-комбинация этих 3 SMA является классическим техническим показателем для определения направления тренда. Когда SMA 4 проходит через SMA 9 и SMA 9 проходит через SMA 18, создается сигнал покупки длинной линии.

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

Кроме того, эта стратегия использует 100-циклические SMA для определения основного тренда. Когда цена пересекает 100-циклические SMA, она подтверждает, что она вошла в плюсовый тренд. Стратегия создает сигнал покупки только в основных плюсовых трендах.

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

  1. SMA 4 пересекает SMA 9, а SMA 9 пересекает SMA 18, образуя золотую вилку короткоциклического SMA
  2. Закрытие цены выше адаптированной скользящей средней по Кауфману и находится в многоглавном тренде
  3. Цены на 100 циклов SMA, подтверждающие наличие множественного хозяина

Когда вышеперечисленные 3 условия одновременно удовлетворены, генерируется длинная линия покупательского сигнала.

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

У этой стратегии есть следующие преимущества:

  1. Использование трёхзначного SMA для перекрестного определения тенденций, эффективное фильтрация шума, повышение надежности сигнала
  2. Введение адаптивных скользящих средних, чтобы избежать ложных прорывов в отсутствие четкой тенденции
  3. Повышение вероятности получения прибыли в сочетании с оценкой основных тенденций, чтобы избежать повторного открытия позиций в условиях потрясений
  4. Длинно- и короткоциклические СМА пересекаются, образуя длиннолинейные сигналы, которые помогают уловить более крупные тренды
  5. Сигнал более надежен для высоких циклов, таких как 4-часовой или солнечный уровень

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

Однако есть и другие риски:

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

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

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

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

В этой стратегии есть место для дальнейшей оптимизации:

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

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

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

Исходный код стратегии
/*backtest
start: 2022-11-17 00:00:00
end: 2023-11-23 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 at https://mozilla.org/MPL/2.0/
// © Wielkieef


//@version=5
strategy(title='twisted SMA strategy [4h] ', overlay=true, pyramiding=1, initial_capital=10000, default_qty_type=strategy.percent_of_equity, default_qty_value=100, calc_on_order_fills=false, slippage=0, commission_type=strategy.commission.percent, commission_value=0.03)

src = close

Length1 = input.int(4, title='  1-SMA Lenght', minval=1, group='SMA')
Length2 = input.int(9, title='  2-SMA Lenght', minval=1, group='SMA')
Length3 = input.int(18, title='  3-SMA Lenght', minval=1, group='SMA')
SMA1 = ta.sma(close, Length1)
SMA2 = ta.sma(close, Length2)
SMA3 = ta.sma(close, Length3)

Long_ma = SMA1 > SMA2 and SMA2 > SMA3
Short_ma = SMA1 < SMA2 and SMA2 < SMA3

LengthMainSMA = input.int(100, title='  SMA Lenght', minval=1)

SMAas = ta.sma(src, LengthMainSMA)

//  Powered Kaufman Adaptive Moving Average by alexgrover (modificated by Wielkieef)
lengthas = input.int(25, title='    Lenght')
sp = input.bool(true, title='  Self Powered')

er = math.abs(ta.change(close, lengthas)) / math.sum(math.abs(ta.change(close)), lengthas)
pow = sp ? 1 / er : 2
per = math.pow(math.abs(ta.change(close, lengthas)) / math.sum(math.abs(ta.change(close)), lengthas), pow)
a = 0.
a := per * src + (1 - per) * nz(a[1], src)
mad4h = 0.
a_f = a / a[1] > .999 and a / a[1] < 1.001

///.

Bar_color = close > SMAas ? color.green : Long_ma ? color.blue : Short_ma ? color.maroon : color.gray

barcolor(color=Bar_color)

long_cond = Long_ma and SMAas < close and not a_f
  
long_stop = Short_ma 

if  long_cond
    strategy.entry('BUY', strategy.long)

strategy.close_all(when=long_stop)

//by wielkieef