Эта стратегия использует скользящие средние и индикатор MACD для определения ценовых тенденций и импульса, в сочетании с перекрестными сигналами для принятия торговых решений.
Эта стратегия использует двойной перекресток скользящей средней для генерирования сигналов. Быстрая скользящая средняя имеет длину 12 дней, в то время как медленная скользящая средняя имеет длину 26 дней. Когда быстрая MA пересекает над медленной MA, образуется золотой крест, который дает длинный сигнал. Когда быстрая MA пересекает ниже медленной MA, образуется смертный крест, который дает короткий сигнал.
В то же время эта стратегия использует индикатор MACD для измерения импульса. MACD рассчитывается путем вычитания медленного MA (26-дневной EMA) от быстрого MA (12-дневной EMA), а затем сглаживается сигнальной линией (9-дневной EMA). Когда MACD пересекает линию сигнала, это указывает на увеличение бычьего импульса. Когда он пересекает ниже линии сигнала, это указывает на увеличение медленного импульса.
Эта стратегия рассматривает как сигналы пересечения скользящей средней, так и сигналы индикатора MACD для принятия торговых решений.
Использование двойных скользящих средних в сочетании с MACD учитывает как ценовую тенденцию, так и импульс, избегая упущенных торговых возможностей.
Стремительно и медленно движущиеся средние длины разумно настроены для определения среднесрочных тенденций.
Графическая визуализация индикаторов делает торговые сигналы ясными и интуитивными.
Параметры стратегии гибкие для оптимизации. Длины MA и параметры MACD могут быть настроены для различных рыночных условий.
Он реализует тенденции и может извлекать выгоду из устойчивых направленных тенденций.
Двойной скользящий средний перекресток может задерживаться, задерживая сигналы входа.
MACD может часто давать ложные сигналы, требующие подтверждения цены.
Смертные пересечения в восходящих тенденциях могут сигнализировать о коррекциях, существующие длинные позиции не должны выходить преждевременно.
Золотые кресты в нисходящих тенденциях могут сигнализировать о подъеме, существующие шорты не должны быть закрыты преждевременно.
Следует соблюдать строгое управление денежными средствами, ограничивая размер позиций для контроля риска.
Оптимизировать параметры MA путем тестирования различных комбинаций периодов для улучшения надежности перекрестного перехода.
Оптимизировать параметры MACD путем корректировки коротких и длинных EMA и линии сигнала для уменьшения ложных сигналов.
Добавьте другие показатели, такие как KDJ, BOLL для слияния, чтобы улучшить точность сигнала.
Включайте показатели объема, чтобы избежать ложных прорывов.
Бактэст для поиска оптимальных комбинаций параметров на основе исторических данных.
Внедрять стратегии стоп-лосса для строгого ограничения потерь на одну сделку и снижения риска.
Эта стратегия объединяет двойной скользящий средний кроссовер и MACD для торговли трендом. Оптимизация параметров и соблюдение благоразумного управления деньгами помогут достичь устойчивых прибылей в долгосрочной перспективе. Но ложные сигналы необходимо избегать, подтверждая действием цены. Дальнейшие оптимизации могут улучшить эффективность стратегии.
/*backtest start: 2022-11-09 00:00:00 end: 2023-11-15 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=3 strategy(title="Moving Average Convergence/Divergence MaCD Backesting", shorttitle="MACD Backtesting", precision = 6, pyramiding = 3, default_qty_type = strategy.percent_of_equity, currency = currency.USD, commission_type = strategy.commission.percent, commission_value = 0.10, initial_capital = 1000, default_qty_value = 100) source = close fastLength = input(12, minval=1), slowLength=input(26,minval=1) signalLength=input(9,minval=1) fastMA = ema(source, fastLength) slowMA = ema(source, slowLength) macd = fastMA - slowMA signal = ema(macd, signalLength) hist = macd - signal plot(hist, color=red, style=histogram) plot(macd, color=blue) plot(signal, color=orange) buy = crossover(macd,signal) sell = crossunder(macd,signal) plotshape(buy, "buy", shape.triangleup, color = olive , size = size.tiny, location = location.bottom) plotshape(sell, "sell", shape.triangledown, color = orange , size = size.tiny, location = location.bottom) if (buy) strategy.entry("Long Trigger", true) if(sell) strategy.entry("Short Trigger", false) if (sell) strategy.exit("Close Long Trigger", "Long Trigger") if (buy) strategy.exit("Close Short Trigger", "Short Trigger")