Стратегия динамического тренда сочетает в себе индекс относительного импульса (RMI) и индивидуальный индикатор текущего тренда в одном мощном торговом подходе.
RMI является вариацией индекса относительной силы (RSI), который измеряет импульс движений вверх и вниз по отношению к предыдущим изменениям цен в течение определенного периода.
RMI = 100 - 100/(1 + средний рост/средний спад)
Значения RMI варьируются от 0 до 100. Более высокие значения указывают на более сильный импульс вверх, в то время как более низкие значения указывают на более сильный импульс вниз.
Индикатор currentTrend объединяет средний истинный диапазон (ATR) с скользящей средней для определения направления тренда и динамических уровней поддержки/сопротивления.
Верхняя полоса: MA + (ATR x F)
Нижняя полоса: MA - (ATR x F)
MA - скользящая средняя задержка за M периодов.
ATR - средний истинный диапазон за M периодов.
F - множитель для регулировки чувствительности.
Направление тренда меняется, когда цена пересекает текущие диапазоны тренда, сигнализируя о потенциальных точках входа или выхода.
Условия въезда:
Условия выхода с динамической остановкой:
Уравнения для динамической остановки слежения:
Двойной анализ импульса RMI и текущего направления тренда / остановки отслеживания является сильной стороной этой стратегии.
Преимущества этой стратегии включают:
Потенциальные риски, которые следует учитывать:
Правильная оптимизация параметров, выравнивание трендов и уточнение логики входа могут уменьшить вышеуказанные риски.
Области для улучшения стратегии включают:
Стратегия Momentum Trend Synergy обеспечивает многоуровневый подход, включающий как индикаторы импульса, так и тренда для точной и управляемой риском торговли. Высокая настраиваемость этой стратегии позволяет трейдерам адаптировать ее к своему личному стилю и рыночной среде.
/*backtest start: 2024-01-19 00:00:00 end: 2024-02-18 00:00:00 period: 1h basePeriod: 15m 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/ // © PresentTrading //@version=5 strategy("PresentTrend RMI Synergy - Strategy [presentTrading]", shorttitle="PresentTrend RMI Synergy - Strategy [presentTrading]", overlay=false) // Inputs tradeDirection = input.string("Both", title="Trade Direction", options=["Long", "Short", "Both"]) lengthRMI = input.int(21, title="RMI Length") lengthSuperTrend = input.int(5, title="presentTrend Length") multiplierSuperTrend = input.float(4.0, title="presentTrend Multiplier") // RMI Calculation up = ta.rma(math.max(ta.change(close), 0), lengthRMI) down = ta.rma(-math.min(ta.change(close), 0), lengthRMI) rmi = 100 - (100 / (1 + up / down)) // PresentTrend Dynamic Threshold Calculation (Simplified Example) presentTrend = ta.sma(close, lengthRMI) * multiplierSuperTrend // Simplified for demonstration // SuperTrend for Dynamic Trailing Stop atr = ta.atr(lengthSuperTrend) upperBand = ta.sma(close, lengthSuperTrend) + multiplierSuperTrend * atr lowerBand = ta.sma(close, lengthSuperTrend) - multiplierSuperTrend * atr trendDirection = close > ta.sma(close, lengthSuperTrend) ? 1 : -1 // Entry Logic longEntry = rmi > 60 and trendDirection == 1 shortEntry = rmi < 40 and trendDirection == -1 // Exit Logic with Dynamic Trailing Stop longExitPrice = trendDirection == 1 ? lowerBand : na shortExitPrice = trendDirection == -1 ? upperBand : na // Strategy Execution if (tradeDirection == "Long" or tradeDirection == "Both") and longEntry strategy.entry("Long Entry", strategy.long) strategy.exit("Exit Long", stop=longExitPrice) if (tradeDirection == "Short" or tradeDirection == "Both") and shortEntry strategy.entry("Short Entry", strategy.short) strategy.exit("Exit Short", stop=shortExitPrice) // Visualization plot(rmi, title="RMI", color=color.orange) hline(50, "Baseline", color=color.white) hline(30, "Baseline", color=color.blue) hline(70, "Baseline", color=color.blue)