Инверсивный импульс MACD связан с краткосрочной скальпинг-стратегией DMI Breakout

Автор:Чао Чжан, Дата: 2023-11-13 17:42:23
Тэги:

img

Обзор

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

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

Кроме того, вы можете использовать это при торговле контрактами на фьючерсных рынках, где нет необходимости уже владеть базовым активом до его короткого продажи.

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

Торговая система использует индикатор Momentum Average Convergence Divergence (MACD) и индикатор Directional Movement Index (DMI), чтобы подтвердить, когда лучшее время для продажи.

MACD - это индикатор тренда, следующий за импульсом и обеспечивающий определение направления краткосрочного тренда.

DMI показывает, в каком направлении движется цена, и сравнивает предыдущие минимумы и максимумы с двумя линиями, проведенными между каждой - положительной линией направленного движения (+DI) и отрицательной линией направленного движения (-DI).

Система будет вести торговлю, когда будут выполнены два условия:

  1. Гистограмма MACD становится медвежьей.

  2. Если отрицательный DMI больше положительного DMI.

Стратегия поставляется с фиксированной прибылью в сочетании с остановкой волатильности, которая выступает в качестве остановки для адаптации к силе тренда.

Позиция закрывается, когда:

Выход с рынка прибыли: снижение цены на +8% по сравнению с начальной ценой.

ИЛИ

Stop-Loss Exit: цена пересекает границу переменности.

В целом этот подход подходит для средне- и долгосрочных стратегий. Обратное тестирование этой стратегии начинается с 1 апреля 2022 года по 18 июля 2022 года, чтобы продемонстрировать свои результаты на медвежьем рынке. Дальнейшее обратное тестирование с начала 2022 года и далее также дает хорошие результаты.

Парами, которые дают очень сильные результаты, являются SOLUSDT на 45 м, MATICUSDT на 2 ч и AVAUSDT на 1 ч. Как правило, обратное тестирование показывает, что он лучше всего работает на 45 м/1 ч.

Также учитывается комиссионная за торговлю в размере 0,1% и соответствует базовой комиссионной, применяемой на Binance.

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

Преимущества этой стратегии включают:

  • Использует преимущества индикаторов MACD и DMI для повышения точности сигналов входа и предотвращения ложных прорывов.

  • Использует сочетание фиксированных механизмов получения прибыли и механизмов выхода с фиксированной волатильностью, чтобы обеспечить более высокую прибыль при одновременном контроле риска.

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

  • Можно использовать для хеджирования длинных позиций для получения дополнительного дохода или прямых коротких фьючерсных контрактов для скальпирования.

  • Хорошие результаты обратных тестов, особенно на 1h и 45m временных рамок, подходящих для высокочастотных торгов.

Анализ рисков

Риски этой стратегии включают:

  • DMI и MACD как индикаторы отставания имеют более высокую вероятность генерирования ошибочных сигналов вокруг поворотных точек тренда, что требует мониторинга стоп-лосса.

  • Неправильное установление фиксированной прибыли может привести к тому, что прибыль будет слишком маленькой или слишком большой.

  • Волатильность остановки может быть нарушена в периоды сильных колебаний, требуя сочетания с дополнительной остановкой потери.

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

  • На реальную производительность будут влиять торговые сборы, сдвиг рыночных заказов и т.д., что приведет к отклонениям от обратного теста.

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

Эта стратегия может быть дополнительно оптимизирована в следующих аспектах:

  • Использование машинного обучения для автоматической оптимизации комбинаций параметров MACD и DMI, адаптированных к различным временным рамкам и монетам.

  • Добавьте динамические прибыли, основанные на волатильности, корректируя диапазон прибыли, основанный на волатильности рынка.

  • Включить дополнительные показатели, формирующие многофакторную модель для улучшения фильтрации, такие как BVN и OBV.

  • Добавьте модели машинного обучения, чтобы помочь MACD и DMI в сигнализации.

  • Используйте лимитные ордера вместо рыночных, чтобы уменьшить влияние скольжения.

  • Испытание на отдельных монетах для поиска оптимальных параметров временных рамок.

Заключение

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


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

//@version=5
strategy("Inverse MACD + DMI Scalping with Volatility Stop (Shorting) (By Coinrule)",

         overlay=true,
         initial_capital=10000,
         process_orders_on_close=true,
         default_qty_type=strategy.percent_of_equity,
         default_qty_value=100,
         commission_type=strategy.commission.percent,
         commission_value=0.1)

showDate = input(defval=true, title='Show Date Range')
timePeriod = time >= timestamp(syminfo.timezone, 2022, 4, 1, 0, 0)
notInTrade = strategy.position_size <= 0

// DMI and MACD inputs and calculations
[pos_dm, neg_dm, avg_dm] = ta.dmi(14, 14)
[macd, macd_signal, macd_histogram] = ta.macd(close, 12, 26, 9)

Take_profit = input(3) / 100
longTakeProfit = strategy.position_avg_price * (1 + Take_profit)

length = input.int(20, 'Length', minval=2)
src = input(close, 'Source')
factor = input.float(2.0, 'vStop Multiplier', minval=0.25, step=0.25)
volStop(src, atrlen, atrfactor) =>
    var max = src
    var min = src
    var uptrend = true
    var stop = 0.0
    atrM = nz(ta.atr(atrlen) * atrfactor, ta.tr)
    max := math.max(max, src)
    min := math.min(min, src)
    stop := nz(uptrend ? math.max(stop, max - atrM) : math.min(stop, min + atrM), src)
    uptrend := src - stop >= 0.0
    if uptrend != nz(uptrend[1], true)
        max := src
        min := src
        stop := uptrend ? max - atrM : min + atrM
        stop
    [stop, uptrend]
    
[vStop, uptrend] = volStop(src, length, factor)

closeShort = close > longTakeProfit or ta.crossunder(close, vStop)

//Entry
strategy.entry(id='short', direction=strategy.short, when=ta.crossover(macd_signal, macd) and pos_dm < neg_dm and timePeriod)

//Exit
strategy.close('short', when=closeShort and timePeriod)


Больше