Стратегия перемены скользящего среднего процента

Автор:Чао Чжан, Дата: 14 сентября 2023 года 14:53:53
Тэги:

Логика стратегии

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

Сделки совершаются, когда процентный разрыв между ценой и MA достигает заранее установленного уровня.

В частности, логика такова:

  1. Вычислить абсолютную разницу между ценой и Н-периодным МР
  2. Преобразовать разницу в проценты, т.е. разделить на цену
  3. Сокращение, когда процентный разрыв превышает верхний порог (например, 5%)
  4. Пройти длинный период, когда процентный разрыв опускается ниже низкого порога (например, -3%)
  5. Опционально обратные сигналы (длинные становятся короткими, короткие становятся длинными)

Например, при N=14, верхний предел=5%, нижний предел=-3%:

  • Пройти короткий период, когда цена превышает 14-дневную МДП более чем на 5%
  • Продолжительность, когда цена <3% ниже 14-дневного MA

Параметры N, верхние/нижние пределы могут регулировать чувствительность.

Преимущества

  • Процентные разрывы объясняют изменение уровня цен
  • Регулируемые параметры подходят для различных циклов
  • Стратегия BREAK направлена на раннее замещение поворотных моментов

Риски

  • Процентные разрывы сами по себе не могут подтвердить направление тренда
  • Подвержен ложным сигналам, нуждается в дополнительных фильтрах.
  • МА, отстающие, могут не заметить быстрого отступления

Резюме

Процентная стратегия MA использует процентный разрыв между ценой и MA для выявления потенциальных поворотных точек с подходом BREAK.


/*backtest
start: 2023-08-14 00:00:00
end: 2023-09-13 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=2
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 30/07/2018
// Percent difference between price and MA
//
// You can change long to short in the Input Settings
// WARNING:
// - For purpose educate only
// - This script to change bars colors.
////////////////////////////////////////////////////////////
strategy(title="Percent difference between price and MA Backtest")
Length = input(14, minval=1)
SellZone = input(0.54, minval=0.01, step = 0.01)
BuyZone = input(0.03, minval=0.01, step = 0.01)
reverse = input(false, title="Trade reverse")
hline(BuyZone, color=green, linestyle=line)
hline(SellZone, color=red, linestyle=line)
xSMA = sma(close, Length)
nRes = abs(close - xSMA) * 100 / close
pos = iff(nRes < BuyZone, 1,
       iff(nRes > SellZone, -1, nz(pos[1], 0))) 
possig = iff(reverse and pos == 1, -1,
          iff(reverse and pos == -1, 1, pos))	   
if (possig == 1) 
    strategy.entry("Long", strategy.long)
if (possig == -1)
    strategy.entry("Short", strategy.short)	   	    
barcolor(possig == -1 ? red: possig == 1 ? green : blue ) 
plot(nRes, color=blue, title="PD MA")

Больше