
Это сложная многопоказательная торговая стратегия, которая объединяет четыре инструмента технического анализа: EMA, RSI, MACD и Bollinger Bands, чтобы идентифицировать потенциальные точки входа для торговли с помощью многократной сигнальной проверки. Стратегия фокусируется на захвате трендовых движений цен и снижении вероятности ложных сигналов с помощью строгих механизмов фильтрации сигналов.
Основные принципы стратегии основаны на комплексном анализе четырех ключевых технических показателей:
Конкретная логика приема включает в себя:
Условия:
Условия для освобождения:
Это высоко систематизированная многопаметровая стратегия с перекрестным трендовым динамиком, проверяемая комбинацией четырех технических показателей, предназначенная для предоставления более точных и надежных торговых сигналов. Несмотря на значительные преимущества стратегии, она требует постоянной оптимизации и управления рисками.
/*backtest
start: 2024-04-02 00:00:00
end: 2025-04-01 00:00:00
period: 2d
basePeriod: 2d
exchanges: [{"eid":"Futures_Binance","currency":"BNB_USDT"}]
*/
//@version=5
strategy("Multi-Indicator Trading Strategy", overlay=true)
// Input variables
len1 = input(50, "EMA 50")
len2 = input(100, "EMA 100")
len3 = input(200, "EMA 200")
rsiLength = input(14, "RSI Length")
rsiOverbought = input(70, "RSI Overbought")
rsiOversold = input(30, "RSI Oversold")
// Indicators
ema50 = ta.ema(close, len1)
ema100 = ta.ema(close, len2)
ema200 = ta.ema(close, len3)
rsi = ta.rsi(close, rsiLength)
[macdLine, signalLine, histLine] = ta.macd(close, 12, 26, 9)
[middle, upper, lower] = ta.bb(close, 20, 2)
// Trading signals
longCondition = ta.crossover(close, ema50) and ema50 > ema100 and ema100 > ema200 and rsi > 50 and rsi < rsiOverbought and macdLine > signalLine
shortCondition = ta.crossunder(close, ema50) and
ema50 < ema100 and
ema100 < ema200 and
rsi < 50 and
rsi > rsiOversold and
macdLine < signalLine
// Plots
plot(ema50, "EMA 50", color.blue)
plot(ema100, "EMA 100", color.yellow)
plot(ema200, "EMA 200", color.red)
plot(upper, "BB Upper", color.gray)
plot(middle, "BB Middle", color.gray)
plot(lower, "BB Lower", color.gray)
// Signals
plotshape(longCondition, "Long", shape.triangleup, location.belowbar, color.green)
plotshape(shortCondition, "Short", shape.triangledown, location.abovebar, color.red)
// Strategy
if (longCondition)
strategy.entry("Long", strategy.long)
if (shortCondition)
strategy.entry("Short", strategy.short)