Импульсный тренд после MACD-RSI Двойное подтверждение торговой стратегии

MACD RSI TS MA DUAL
Дата создания: 2024-12-12 16:16:54 Последнее изменение: 2024-12-12 16:16:54
Копировать: 0 Количество просмотров: 353
1
Подписаться
1617
Подписчики

Импульсный тренд после MACD-RSI Двойное подтверждение торговой стратегии

Обзор

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

Стратегический принцип

Основная логика стратегии основана на следующих ключевых элементах:

  1. Система сигналов MACD использует более короткий период ((6,13,5)), что повышает чувствительность к реакции рынка. Когда MACD проходит по линии сигнала, это указывает на возможную тенденцию к росту.
  2. Индекс RSI используется в качестве вспомогательного инструмента подтверждения, устанавливая 30 как превышение прожиточного минимума. RSI запускает сигнал покупки только в том случае, если его значение больше или равно 30, чтобы избежать частых торгов в перепроданных зонах.
  3. Управление капиталом использует стратегию фиксированной суммы, в которой на каждую сделку вкладывается 110 котируемых валют, а количество позиций рассчитывается в зависимости от текущей динамики цен.
  4. Мобильный стоп-механизм, установленный на 2% отслеживаемого расстояния, позволяет эффективно блокировать прибыль и контролировать риск вывода.

Стратегические преимущества

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

Стратегический риск

  1. Краткоциклическая установка MACD может привести к созданию избыточного количества торговых сигналов на колеблющихся рынках и увеличению стоимости торгов.
  2. RSI перепродает на 30 и может упустить некоторые важные возможности для начала тренда.
  3. Фиксированная сумма может привести к недостаточному использованию средств счета и повлиять на общую доходность.
  4. Движущаяся стоп-дистанция 2% может быть слишком близко, чтобы быть подвергнутой колебаниям на рынке.
  5. Стратегия поддерживает только многоторговые сделки, которые не приносят прибыли в падении.

Направление оптимизации стратегии

  1. Рекомендуется корректировать параметры MACD в зависимости от динамики различных рыночных циклов, чтобы повысить адаптивность стратегии.
  2. Можно вводить показатели волатильности (например, ATR) для динамической корректировки расстояния мобильной остановки и повышения эффективности остановки.
  3. Рассмотреть возможность добавления дисконтирования, чтобы стратегия могла приносить прибыль в двусторонних условиях.
  4. Для повышения надежности подтверждения сигналов можно использовать рыночные показатели объема сделок.
  5. Рекомендуется добавить механизм управления динамическими позициями, автоматически корректирующий размер сделки в зависимости от чистой стоимости счета и рыночного риска.

Подвести итог

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

Исходный код стратегии
/*backtest
start: 2024-11-11 00:00:00
end: 2024-12-11 00:00:00
period: 4h
basePeriod: 4h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © cryptohitman09

//@version=6
strategy("MACD + RSI 交易系统 - 110 美金买入", overlay=true)

// MACD 設定
fastLength = input.int(6, title="MACD Fast Length")
slowLength = input.int(13, title="MACD Slow Length")
signalSmoothing = input.int(5, title="MACD Signal Smoothing")
[macdLine, signalLine, _] = ta.macd(close, fastLength, slowLength, signalSmoothing)

// RSI 設定
rsiLength = input.int(14, title="RSI Length")  // RSI 計算週期
rsiValue = ta.rsi(close, rsiLength)  // 計算 RSI 值
rsiThresholdHigh = input.int(70, title="RSI 超買閾值")  // RSI 超買閾值
rsiThresholdLow = input.int(30, title="RSI 超賣閾值")  // RSI 超賣閾值

// 做多信号条件:MACD 線突破信号線,且 RSI 不低於 30
buySignal = (macdLine > signalLine) and (rsiValue >= rsiThresholdLow) // 只有 RSI 大於或等於 30 時才觸發買入

// 计算每次交易的仓位(每次交易目标为 110 美金的买入金额)
tradeAmount = 20010  // 每次买入110 美金
orderSize = tradeAmount / close  // 根据当前价格计算仓位大小

// 移动止损(Trailing Stop)
enableTrailingStop = input.bool(true, title="启用移动止损")
trailingStopDistance = input.float(2, title="移动止损距离 (%)") / 89500  // 增加移动止损的距离
longTrailingStop = strategy.position_avg_price * (1 - trailingStopDistance)

// 交易逻辑:仅做多
if buySignal
    strategy.entry("买入", strategy.long, qty=orderSize)
    if enableTrailingStop
        strategy.exit("卖出", from_entry="买入", trail_price=longTrailingStop, trail_offset=trailingStopDistance * close)                                                                               

// 绘制 MACD 指标
plot(macdLine, color=color.blue, title="MACD Line")
plot(signalLine, color=color.red, title="Signal Line")

// 绘制 RSI 值
plot(rsiValue, color=color.orange, title="RSI Value")
hline(rsiThresholdHigh, "RSI 超买", color=color.red)
hline(rsiThresholdLow, "RSI 超卖", color=color.green)

// 绘制买入信号
plotshape(series=buySignal, location=location.belowbar, color=color.green, style=shape.labelup, title="买入信号", text="BUY")

// 如果触发买入信号,则发送警报
if buySignal
    alert('{"secret": "eyJhbGciOiJIUzI1NiJ9.eyJzaWduYWxzX3NvdXJjZV9pZCI6MTAwMDAyfQ.G1wLNjNyUPlTqYWsIqXSWnn_M4pRCKerBm7eTpyCiH8", "max_lag": "300", "timestamp": "{{timenow}}", "trigger_price": "{{close}}", "tv_exchange": "{{exchange}}", "tv_instrument": "{{ticker}}", "action": "{{strategy.order.action}}", "bot_uuid": "493b76f0-8a3c-4633-8b2b-90c02659dd4d", "strategy_info": {"market_position": "{{strategy.market_position}}", "market_position_size": "{{strategy.market_position_size}}", "prev_market_position": "{{strategy.prev_market_position}}", "prev_market_position_size": "{{strategy.prev_market_position_size}}"}, "order": {"amount": "{{strategy.order.contracts}}", "currency_type": "base"}}', alert.freq_once_per_bar_close)