В этой статье подробно объясняется количественная стратегия торговли на основе нормализованного индикатора MACD. Она оптимизирует классическую стратегию MACD для улучшения качества сигнала.
I. Логика стратегии
Основная идея этой стратегии заключается в нормализации традиционного индикатора MACD для снижения уровня ошибок.
Вычислить короткие и длинные периоды Hull скользящих средних и использовать их перекресток для направления тренда.
Вычислите разницу MACD.
Нормализация MACD в течение определенного периода.
Вычислить скользящую среднюю нормированного MACD в качестве запуска.
Пройти длинный, когда нормализованный MACD пересекает выше триггера, и идти короткий, когда пересекает ниже.
Добавьте фильтрацию трендов, чтобы не пропустить важные движения.
Установите стоп-лосс и принимайте прибыль, чтобы контролировать риск по сделке.
Нормализация уменьшает абсолютную величину различий MACD, снижая шум для повышения качества сигнала. Фильтрация тренда избегает ложных переворотов против основного тренда. Стоп-лосс и взятка прибыли контролируют потерю на торговле.
II. Преимущества стратегии
По сравнению с простыми стратегиями MACD наибольшее преимущество заключается в нормализации, которая может эффективно уменьшить ошибки MACD и улучшить точность сигнала.
Еще одним преимуществом является добавление фильтрации тренда для предотвращения ложных переворотов.
Наконец, параметры стоп-лосса и прибыли также обеспечивают контролируемый риск-вознаграждение за сделку для разумного управления деньгами.
III. Потенциальные недостатки
Несмотря на оптимизацию, на практике следует учитывать следующие риски:
Во-первых, большая сложность оптимизации параметров может привести к перенастройке, если настроить неправильно.
Во-вторых, если стоп-лосс слишком близко, то риски могут быть преждевременными.
Наконец, сигналы могут задерживаться во время переходов тренда, не реагируя вовремя.
IV. Резюме
В целом, в этой статье объяснена количественная стратегия торговли, которая нормализует индикатор MACD. Она улучшает классическую стратегию MACD для эффективного повышения качества сигнала и включает механизмы управления рисками. Но сложность оптимизации параметров и установки стоп-лосса все еще необходимо обрабатывать осторожно. В целом, она обеспечивает жизнеспособный подход к оптимизации стратегий MACD.
/*backtest start: 2023-08-14 00:00:00 end: 2023-09-13 00:00:00 period: 6h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=2 // Normalized MACD but heavily modified by SeaSide420. Normalized MACD v420 strategy("Normalized MACD (v420)",shorttitle="NmacD(v420)",overlay=true, default_qty_type=strategy.percent_of_equity, max_bars_back=1440, default_qty_value=100, calc_on_order_fills= true, calc_on_every_tick=true, pyramiding=0) p=input(ohlc4) jah=input(title="HullMA cross",defval=21) tsp = input(34,title='Trigger') np = input(50,title='Normalize') SL = input(defval=-420.00, title="Stop Loss in $", step=1) TP = input(defval=31.00, title="Target Point in $", step=1) ot=1 n2ma=2*wma(p,round(jah/2)) nma=wma(p,jah) diff=n2ma-nma sqn=round(sqrt(jah)) n2ma1=2*wma(p[2],round(jah/2)) nma1=wma(p[2],jah) diff1=n2ma1-nma1 sqn1=round(sqrt(jah)) n1=wma(diff,sqn) n2=wma(diff1,sqn) sh=n1 lon=n2 ratio = min(sh,lon)/max(sh,lon) Mac = (iff(sh>lon,2-ratio,ratio)-1) MacNorm = ((Mac-lowest(Mac, np)) /(highest(Mac, np)-lowest(Mac, np)+.000001)*2)- 1 MacNorm2 = iff(np<2,Mac,MacNorm) Trigger = wma(MacNorm2, tsp) Hist =(MacNorm2-Trigger) Hist2= Hist>1?1:Hist<-1?-1:Hist teh=MacNorm2+MacNorm2[2]-MacNorm2[1] closelong = strategy.openprofit<SL or strategy.openprofit>TP or teh[1]<Trigger[1] and n1<n2[1] if (closelong) strategy.close("Long") closeshort = strategy.openprofit<SL or strategy.openprofit>TP or teh[1]>Trigger[1] and n1>n2[1] if (closeshort) strategy.close("Short") longCondition = Trigger<0 and teh>Trigger and MacNorm>Trigger and strategy.opentrades<ot if (longCondition) strategy.entry("Long",strategy.long) shortCondition = Trigger>0 and teh<Trigger and MacNorm<Trigger and strategy.opentrades<ot if (shortCondition) strategy.entry("Short",strategy.short)