Эта стратегия генерирует торговые сигналы на основе индикатора перемещенного конверта скользящей средней. Полосы конверта рассчитываются по процентным факторам скользящей средней. Если предыдущий максимум превышает верхний диапазон, генерируется сигнал продажи. Если предыдущий минимум превышает нижний диапазон, генерируется сигнал покупки.
Эта стратегия использует смещенную экспоненциальную скользящую среднюю величину (EMA) в качестве основного показателя и формирует верхнюю и нижнюю полосы после определенного периода по процентным факторам.
Здесь проценты выше и проценты ниже контролируют процентный диапазон полос относительно основной скользящей средней линии. Параметр смещения контролирует смещение периода между полосами и основной скользящей средней линией.
Таким образом, мы можем сформировать соответствующие торговые диапазоны путем корректировки вышеуказанных параметров.
Обратите внимание, что эта стратегия также обеспечивает обратный параметр. Если настроить на true, направление сигнала противоположно вышеизложенному.
Основными преимуществами этой стратегии являются:
Эта стратегия также сопряжена с некоторыми рисками:
Чтобы предотвратить эти риски, можно сделать некоторые оптимизации:
Для оптимизации этой стратегии еще есть много возможностей:
С помощью этих оптимизаций можно еще больше улучшить стабильность, адаптивность и эффективность стратегии.
Стратегия перемещенного конверта скользящего среднего использует простые экспоненциальные системы скользящих средних и параметризированные полосы для формирования четких правил торговли, которые легко интерпретируются и реализуются. Это типичная система, следующая за трендом. Благодаря настройке параметров и оптимизации можно достичь хороших результатов.
/*backtest start: 2024-01-25 00:00:00 end: 2024-02-01 00:00:00 period: 1m basePeriod: 1m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=4 //////////////////////////////////////////////////////////// // Copyright by HPotter v1.0 14/08/2020 // Moving Average Displaced Envelope. These envelopes are calculated // by multiplying percentage factors with their displaced expotential // moving average (EMA) core. // How To Trade Using: // Adjust the envelopes percentage factors to control the quantity and // quality of the signals. If a previous high goes above the envelope // a sell signal is generated. Conversely, if the previous low goes below // the envelope a buy signal is given. // // WARNING: // - For purpose educate only // - This script to change bars colors. //////////////////////////////////////////////////////////// strategy(title="Moving Average Displaced Envelope Backtest", shorttitle="MA DE", overlay = true) Price = input(title="Source", type=input.source, defval=close) Period =input(defval=9, minval=1) perAb = input(title = "Percent above", defval=.5, minval=0.01, step = 0.1) perBl = input(title = "Percent below", defval=.5, minval=0.01, step = 0.1) disp = input(title = "Displacement", defval=13, minval=1) reverse = input(false, title="Trade reverse") pos = 0 sEMA = ema(Price, Period) top = sEMA[disp] * ((100 + perAb)/100) bott = sEMA[disp]* ((100 - perBl)/100) pos := iff(close < bott , 1, iff(close > top, -1, pos[1])) 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) if (possig == 0) strategy.close_all() barcolor(possig == -1 ? #b50404: possig == 1 ? #079605 : #0536b3 )