Esta estrategia es un sistema de negociación de análisis técnico multidimensional que combina indicadores de impulso (RSI, MACD), indicadores de tendencia (EMA), indicadores de volatilidad (banda de Bollinger, ATR) e indicadores de estructura de precios (retracementos de Fibonacci) para capturar oportunidades de mercado a través de la coordinación de señales multidimensionales.
La lógica central incluye las siguientes dimensiones: 1. Confirmación de tendencias:9⁄21cruces de la EMA del período para determinar la dirección de la tendencia 2. Verificación del impulso: Combinando el RSI sobrecomprado/sobrevendido (55⁄45) y el histograma MACD para la validación del impulso Referencia de volatilidad: el uso de bandas de Bollinger (20 períodos, 2 desviaciones estándar) para medir la volatilidad de los precios Apoyo/resistencia: Fibonacci 0.382⁄0.618⁄0.786 niveles calculados a partir del máximo/mínimo de 100 períodos 5. Gestión de riesgos: 1,5 veces el stop-loss ATR y 3 veces el take-profit ATR basado en el ATR de 14 períodos
El comercio sólo ocurre cuando las señales multidimensionales se alinean, mejorando la precisión del comercio.
Esta estrategia construye un sistema de negociación robusto a través de la coordinación de indicadores técnicos multidimensionales. Sus principales ventajas se encuentran en la validación cruzada de señales y el control dinámico del riesgo, pero se debe prestar atención a la optimización de parámetros y la adaptabilidad al entorno del mercado.
/*backtest start: 2024-12-10 00:00:00 end: 2025-01-08 08:00:00 period: 1h basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT","balance":49999}] */ //@version=5 strategy("Optimized Advanced Strategy", overlay=true) // Bollinger Bandı length = input(20, title="Bollinger Band Length") src = close mult = input.float(2.0, title="Bollinger Band Multiplier") basis = ta.sma(src, length) dev = mult * ta.stdev(src, length) upper = basis + dev lower = basis - dev // RSI rsi = ta.rsi(close, 14) // MACD [macdLine, signalLine, _] = ta.macd(close, 12, 26, 9) // EMA emaFast = ta.ema(close, 9) emaSlow = ta.ema(close, 21) // ATR atr = ta.atr(14) // Fibonacci Seviyeleri lookback = input(100, title="Fibonacci Lookback Period") highPrice = ta.highest(high, lookback) lowPrice = ta.lowest(low, lookback) fiboLevel618 = lowPrice + (highPrice - lowPrice) * 0.618 fiboLevel382 = lowPrice + (highPrice - lowPrice) * 0.382 fiboLevel786 = lowPrice + (highPrice - lowPrice) * 0.786 // Kullanıcı Ayarlı Stop-Loss ve Take-Profit stopLossATR = atr * 1.5 takeProfitATR = atr * 3 // İşlem Koşulları longCondition = (rsi < 55) and (macdLine > signalLine) and (emaFast > emaSlow) and (close >= fiboLevel382 and close <= fiboLevel618) shortCondition = (rsi > 45) and (macdLine < signalLine) and (emaFast < emaSlow) and (close >= fiboLevel618 and close <= fiboLevel786) // İşlem Girişleri if (longCondition) strategy.entry("Long", strategy.long, stop=close - stopLossATR, limit=close + takeProfitATR, comment="LONG SIGNAL") if (shortCondition) strategy.entry("Short", strategy.short, stop=close + stopLossATR, limit=close - takeProfitATR, comment="SHORT SIGNAL") // Bollinger Bandını Çizdir plot(upper, color=color.red, title="Bollinger Upper Band") plot(basis, color=color.blue, title="Bollinger Basis") plot(lower, color=color.green, title="Bollinger Lower Band") // Fibonacci Seviyelerini Çizdir // line.new(x1=bar_index[1], y1=fiboLevel382, x2=bar_index, y2=fiboLevel382, color=color.blue, width=1, style=line.style_dotted) // line.new(x1=bar_index[1], y1=fiboLevel618, x2=bar_index, y2=fiboLevel618, color=color.orange, width=1, style=line.style_dotted) // line.new(x1=bar_index[1], y1=fiboLevel786, x2=bar_index, y2=fiboLevel786, color=color.purple, width=1, style=line.style_dotted) // Göstergeleri Görselleştir plot(macdLine, color=color.blue, title="MACD Line") plot(signalLine, color=color.orange, title="MACD Signal Line") plot(emaFast, color=color.green, title="EMA Fast (9)") plot(emaSlow, color=color.red, title="EMA Slow (21)") // İşlem İşaretleri plotshape(series=longCondition, location=location.belowbar, color=color.green, style=shape.labelup, title="Long Entry") plotshape(series=shortCondition, location=location.abovebar, color=color.red, style=shape.labeldown, title="Short Entry")