Стратегия перемещения среднего перемещенного конверта

Автор:Чао Чжан, Дата: 2024-02-02 17:02:18
Тэги:

img

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

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

Эта стратегия использует смещенную экспоненциальную скользящую среднюю величину (EMA) в качестве основного показателя и формирует верхнюю и нижнюю полосы после определенного периода по процентным факторам.

  • EMA ((Цена, Период) - основная скользящая средняя линия
  • top = sEMA[disp] * ((100 + perAb)/100) - верхняя полоса
  • bott = sEMA[disp] * ((100 - perBl)/100) - Нижняя полоса

Здесь проценты выше и проценты ниже контролируют процентный диапазон полос относительно основной скользящей средней линии. Параметр смещения контролирует смещение периода между полосами и основной скользящей средней линией.

Таким образом, мы можем сформировать соответствующие торговые диапазоны путем корректировки вышеуказанных параметров.

  • Если закрытие ниже нижней полосы бута, генерируется сигнал покупки
  • Если закрытие выше верхней полосы, генерируется сигнал продажи

Обратите внимание, что эта стратегия также обеспечивает обратный параметр. Если настроить на true, направление сигнала противоположно вышеизложенному.

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

Основными преимуществами этой стратегии являются:

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

Риски и меры предосторожности

Эта стратегия также сопряжена с некоторыми рисками:

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

Чтобы предотвратить эти риски, можно сделать некоторые оптимизации:

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

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

Для оптимизации этой стратегии еще есть много возможностей:

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

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

Резюме

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


/*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 )

Больше