Стратегия перекрестного использования скользящих средних с использованием нескольких МСФО

Автор:Чао Чжан, Дата: 2023-11-28 15:08:37
Тэги:

img

Обзор

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

Принцип стратегии

  1. Вычислить 5 скользящих средних SMA различных периодов (8-дневный, 21-дневный, 50-дневный, 100-дневный, 200-дневный)
  2. Возьмите среднее из 5 скользящих средних, чтобы получить окончательный индикатор скользящей средней.
  3. Создание сигналов о покупке, когда цены закрытия поднимаются выше скользящей средней
  4. Создание сигналов продажи при падении цены закрытия ниже скользящей средней

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

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

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

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

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

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

Руководство по оптимизации

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

Резюме

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


/*backtest
start: 2023-11-20 00:00:00
end: 2023-11-27 00:00:00
period: 30m
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=3
strategy("STRATEGY AVERAGE MULTI_SMA", overlay=true)


sma1 = sma(close,input(title="SMA 1", defval=8))

sma2 = sma(close,input(title="SMA 2", defval=21))

sma3 = sma(close,input(title="SMA 3", defval=50))

sma4 = sma(close,input(title="SMA 4", defval=100))

sma5 = sma(close,input(title="SMA 5", defval=200))


mediaSMA= (sma1+sma2+sma3+sma4+sma5)/5

//color mediaSMA

MediaUP = mediaSMA>mediaSMA[1]
colorUP = (MediaUP ? #3CFF35 : na)

MediaDOWN = mediaSMA<mediaSMA[1]
colorDOWN =(MediaDOWN ? #FF0F03 : na)

colorN =(not MediaUP and not MediaDOWN and mediaSMA==mediaSMA[1] ? white : na )

plot(mediaSMA,title="Avarege MULTI_SMA UP", color=colorUP, style=circles, linewidth=2, transp=0)
plot(mediaSMA,title="Avarege MULTI_SMA DOWN", color=colorDOWN, style=circles, linewidth=2, transp=0)
plot(mediaSMA,title="Avarege MULTI_SMA UP NEUTRAL", color=colorN, style=circles, linewidth=2, transp=0)


//plot(sma1,color=blue,linewidth=1, style=line,transp=0,title="SMA 1")
//plot(sma2,color=yellow,linewidth=1, style=line,transp=0,title="SMA 2")
//plot(sma3,color=green,linewidth=1, style=line,transp=0,title="SMA 3")
//plot(sma4,color=purple,linewidth=1, style=line,transp=0,title="SMA 4")
//plot(sma5,color=red,linewidth=1, style=line,transp=0,title="SMA 5")


// Strategy

//BUY
comprar=close>mediaSMA and mediaSMA>mediaSMA[1] 
fechar=close<mediaSMA and mediaSMA<mediaSMA[1]
 
strategy.entry("BUY",strategy.long,when=comprar)
strategy.entry("SELL",strategy.short, when=fechar)

//SELL
vender=close<mediaSMA and mediaSMA<mediaSMA[1] 
fechar2=close>mediaSMA and mediaSMA>mediaSMA[1]

strategy.entry("SELL",strategy.short, when=vender)
strategy.entry("BUY", strategy.long,when=fechar2)



Больше