Esta estrategia es un sistema de negociación integral que combina el retroceso de Fibonacci, el seguimiento de tendencias y la gestión de riesgos. Utiliza principalmente el nivel de retroceso de Fibonacci de 0.65 como punto de referencia clave de precios, incorpora promedios móviles para la confirmación de tendencias e integra mecanismos dinámicos de stop-loss y take-profit basados en ATR. La estrategia opera en un marco de tiempo de 15 minutos y tiene como objetivo capturar oportunidades comerciales de alta probabilidad alineadas con la tendencia actual del mercado.
La lógica central de la estrategia se basa en varios componentes clave:
Esta es una estrategia de seguimiento de tendencias a mediano plazo bien diseñada que construye un sistema comercial completo combinando la teoría de Fibonacci, el seguimiento de tendencias y la gestión de riesgos. La característica principal de la estrategia es generar señales comerciales basadas en las rupturas de precios de los niveles clave mientras se identifican las tendencias del mercado, gestionando el riesgo a través de mecanismos dinámicos de stop-loss y take-profit.
/*backtest start: 2024-11-26 00:00:00 end: 2024-12-25 08:00:00 period: 3h basePeriod: 3h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("Refined Fibonacci Strategy - Enhanced Risk Management", overlay=true) // Input parameters fibonacci_lookback = input.int(38, minval=2, title="Fibonacci Lookback Period") atr_multiplier = input.float(1.8, title="ATR Multiplier for Stop Loss and Take Profit") sma_length = input.int(181, title="SMA Length") // Calculating Fibonacci levels var float high_level = na var float low_level = na if (ta.change(ta.highest(high, fibonacci_lookback))) high_level := ta.highest(high, fibonacci_lookback) if (ta.change(ta.lowest(low, fibonacci_lookback))) low_level := ta.lowest(low, fibonacci_lookback) fib_level_0_65 = high_level - ((high_level - low_level) * 0.65) // Trend Filter using SMA sma = ta.sma(close, sma_length) in_uptrend = close > sma in_downtrend = close < sma // ATR for Risk Management atr = ta.atr(12) long_stop_loss = close - (atr * atr_multiplier) long_take_profit = close + (atr * atr_multiplier) short_stop_loss = close + (atr * atr_multiplier) short_take_profit = close - (atr * atr_multiplier) // Entry Conditions buy_signal = close > fib_level_0_65 and close[1] <= fib_level_0_65 and in_uptrend sell_signal = close < fib_level_0_65 and close[1] >= fib_level_0_65 and in_downtrend // Execute Trades if (buy_signal) strategy.entry("Buy", strategy.long) if (sell_signal) strategy.entry("Sell", strategy.short) // Exit Conditions if (strategy.position_size > 0) strategy.exit("Exit Long", "Buy", stop=long_stop_loss, limit=long_take_profit) if (strategy.position_size < 0) strategy.exit("Exit Short", "Sell", stop=short_stop_loss, limit=short_take_profit) // Plotting plot(fib_level_0_65, color=color.blue, title="Fibonacci 0.65 Level") plot(sma, color=color.orange, title="SMA")