
Складка скользящих средних стратегий, которая использует скользящие средние индексов из 8 различных периодов, чтобы определить тенденции рынка и создать торговый сигнал на основе скольжения скользящих средних наименьшего и наиболее длительного периодов.
Эта стратегия основана на восьми движущихся средних: 20-й, 25-й, 30-й, 35-й, 40-й, 45-й, 50-й и 55-й. Эти восемь движущихся средних образуют переплет движущихся средних, идущих снизу вверх.
Например, когда 20-я линия пробивает 55-ю линию с нижнего направления, создается сигнал покупки; когда 20-я линия падает с верхнего направления до 55-й линии, создается сигнал продажи.
Стратегия переплетения скользящих средних имеет следующие преимущества:
Использование различных периодических скользящих средних позволяет более точно оценивать изменения в рыночных тенденциях.
Несколько скользящих средних построены на переплетениях, чтобы сделать торговые сигналы более четкими.
В сочетании с долгосрочными и краткосрочными скользящими средними, учитываются как долгосрочные тенденции рынка, так и краткосрочные корректировки.
Поле для оптимизации параметров стратегии достаточно большое, так как можно оптимизировать стратегию, например, путем корректировки периодичности движущихся средних.
Стратегическая логика проста и понятна, легко понятна и реализуема.
Однако есть и другие риски, связанные с подвижной средней:
В случае невозможности определить тенденцию в целом, может возникнуть ошибочный сигнал. Подтверждение может быть получено в сочетании с другими показателями.
Частота сделок может быть слишком высокой, увеличивая расходы на сделки и стоимость скольжения. Можно соответствующим образом регулировать циклы скольжения средней и снижать частоту сделок.
Неправильная настройка параметров может привести к чрезмерной чувствительности или чрезмерной задержке. Необходимо повторно тестировать параметры оптимизации.
Внезапные события, вызывающие быстрый прыжок в воздух, могут привести к неэффективности стратегии.
Стратегия пересечения скоплений скользящих средних может быть оптимизирована в следующих аспектах:
Настройка циклических параметров движущихся средних для поиска оптимальной комбинации параметров.
Добавление других технических показателей для фильтрации и подтверждения сигналов, повышение точности сигналов.
Снижение частоты торгов в условиях низкой волатильности в сочетании с волатильностью.
Устанавливайте стратегию стоп-лосса и контролируйте убытки.
Оптимизация стратегии управления капиталом и повышение доходности.
Тестирование параметров устойчивости контрактов различных сортов. Поиск оптимальных сортов.
Общая концепция стратегии с переплетением скользящих средних чётко определяет рыночные тенденции и генерирует торговые сигналы. Стратегия оптимизирована с большим пространством, можно настроить параметры, добавить фильтрацию сигналов и другие методы оптимизации. В целом, эта стратегия является простой и практичной, подходящей для обучения количественному трейдингу.
/*backtest
start: 2024-01-14 00:00:00
end: 2024-01-21 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
strategy(title="EMA Ribbon [Krypt] with Buy/Sell Signals", shorttitle="EMA Ribbon", overlay=true)
dropn(src, n) =>
na(src[n]) ? na : src
length1 = input(20, title="MA-1 period", minval=1)
length2 = input(25, title="MA-2 period", minval=1)
length3 = input(30, title="MA-3 period", minval=1)
length4 = input(35, title="MA-4 period", minval=1)
length5 = input(40, title="MA-5 period", minval=1)
length6 = input(45, title="MA-6 period", minval=1)
length7 = input(50, title="MA-7 period", minval=1)
length8 = input(55, title="MA-8 period", minval=1)
source_input = input(close, title="Source")
price = dropn(source_input, 1)
ema1 = ema(price, length1)
ema2 = ema(price, length2)
ema3 = ema(price, length3)
ema4 = ema(price, length4)
ema5 = ema(price, length5)
ema6 = ema(price, length6)
ema7 = ema(price, length7)
ema8 = ema(price, length8)
plot(ema1, title="MA-1", color=#f5eb5d, transp=0, linewidth=2)
plot(ema2, title="MA-2", color=#f5b771, transp=0, linewidth=2)
plot(ema3, title="MA-3", color=#f5b056, transp=0, linewidth=2)
plot(ema4, title="MA-4", color=#f57b4e, transp=0, linewidth=2)
plot(ema5, title="MA-5", color=#f56d58, transp=0, linewidth=2)
plot(ema6, title="MA-6", color=#f57d51, transp=0, linewidth=2)
plot(ema7, title="MA-7", color=#f55151, transp=0, linewidth=2)
plot(ema8, title="MA-8", color=#aa2707, transp=0, linewidth=2)
// Buy and sell signals based on crossover and crossunder
buySignal = crossover(ema1, ema8)
sellSignal = crossunder(ema1, ema8)
plotshape(series=buySignal, title="Buy Signal", color=color.green, style=shape.triangleup, size=size.small)
plotshape(series=sellSignal, title="Sell Signal", color=color.red, style=shape.triangledown, size=size.small)
if buySignal
strategy.entry("Enter Long", strategy.long)
else if sellSignal
strategy.entry("Enter Short", strategy.short)