Esta estrategia combina tres indicadores de clasificación: RSI, CCI y Williams%R para generar señales comerciales efectivas. Emitirá señales de compra o venta cuando los tres indicadores muestren simultáneamente señales de sobrecompra o sobreventa. En comparación con el uso de un solo indicador, esta estrategia compuesta filtra más señales falsas y mejora la estabilidad.
La estrategia se llama
La estrategia se basa principalmente en los siguientes indicadores para las decisiones comerciales:
Cuando el RSI está por debajo de 25, indica un estado de sobreventa. Cuando el RSI está por encima de 75, indica un estado de sobrecompra. La misma lógica se aplica a los parámetros CCI y Williams%R.
Cuando los tres indicadores muestran simultáneamente señales de compra, es decir, RSI < 25, CCI < -130, Williams %R < -85, la estrategia será larga. Cuando los tres indicadores muestran simultáneamente señales de venta, es decir, RSI > 75, CCI > 130, Williams %R > -15, la estrategia será corta.
Esto evita señales falsas de un solo indicador y mejora la confiabilidad. También configura stop loss y take profit para controlar los riesgos y los rendimientos por operación.
Combinación de múltiples indicadores filtra señales falsas
Al combinar RSI, CCI y Williams%R, la estrategia filtra algunas señales falsas de indicadores individuales, mejorando la precisión.
Auto stop de pérdidas/beneficios gestiona los riesgos Las funciones integradas de stop loss y take profit establecen automáticamente los precios de salida para cada operación, limitando efectivamente las pérdidas dentro de umbrales tolerables.
Negociación a medio plazo La estrategia funciona mejor para las operaciones a medio plazo, identificando claramente los puntos de inflexión a medio plazo a través de la combinación de indicadores.
Datos sólidos de las pruebas de retroceso
La estrategia utiliza barras de 45 minutos del EUR/USD, un par de divisas importante con abundante liquidez y datos, reduciendo los riesgos de sobreajuste de datos insuficientes.
Identificación de tendencias débiles a largo plazo
La estrategia se basa más en señales contrarias. Sus capacidades para medir y seguir tendencias a largo plazo son limitadas. Durante los mercados unidireccionales de larga duración, el potencial de ganancia está limitado.
Falta de oscilaciones a corto plazo Con barras de 45 minutos, la estrategia pierde oportunidades rentables por fluctuaciones de precios a corto plazo más frecuentes.
Riesgos sistémicos
La estrategia se aplica principalmente al EUR/USD. En tiempos de grave crisis económica que sacude el mercado global de divisas, sus reglas de negociación podrían fallar, incurriendo en enormes pérdidas.
Adición de indicadores de tendencia
Trate de incorporar métricas de tendencia como MA, Boll, etc. para ayudar al reconocimiento de tendencias a largo plazo.
Optimización de los parámetros de stop loss/profit Reanudar más datos históricos para evaluar el impacto de varios parámetros de stop loss/beneficio en la rentabilidad final, con el fin de encontrar el ajuste óptimo.
Productos en expansión
Actualmente se aplica principalmente al EUR/USD. Podemos intentar desplegarlo en otros pares de divisas importantes como GBP, JPY, AUD para examinar su estabilidad y transferencia.
La estrategia Three Trail Trawler identifica los puntos de inversión de precios para las señales de sobrecompra/sobreventa utilizando una combinación de RSI, CCI y Williams %R. En comparación con las métricas individuales, esta configuración de múltiples indicadores filtra más señales falsas y mejora la precisión. Las funciones de stop loss / take profit automatizadas también ayudan a limitar los riesgos comerciales. En general, es una estrategia estable adecuada para el comercio a mediano plazo y puede ser un módulo valioso en nuestros sistemas cuantitativos. Aún así, debemos prestar atención a sus deficiencias en la detección de tendencias a largo plazo y la captura de oscilaciones a corto plazo. Las medidas de ajuste fino como agregar métricas de tendencia, optimizar parámetros de salida y expandir productos mejorarán la estrategia como un motor de beneficios constante para nuestros sistemas cuantitativos.
/*backtest start: 2024-01-16 00:00:00 end: 2024-01-23 00:00:00 period: 1m basePeriod: 1m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("RSI CCI Williams %R Strategy with TP and SL", overlay=true) // Input parameters for indicators rsi_period = input(14, title="RSI Period") cci_period = input(20, title="CCI Period") williams_period = input(14, title="Williams %R Period") // Thresholds for overbought and oversold conditions rsi_oversold = input(25, title="RSI Oversold Level") rsi_overbought = input(75, title="RSI Overbought Level") cci_oversold = input(-130, title="CCI Oversold Level") cci_overbought = input(130, title="CCI Overbought Level") williams_oversold = input(-85, title="Williams %R Oversold Level") williams_overbought = input(-15, title="Williams %R Overbought Level") // Take profit and stop loss levels as a percentage take_profit_pct = input(1.2, title="Take Profit (%)") / 100 stop_loss_pct = input(0.45, title="Stop Loss (%)") / 100 // Indicator calculations rsi = ta.rsi(close, rsi_period) cci = ta.cci(close, cci_period) highestHigh = ta.highest(high, williams_period) lowestLow = ta.lowest(low, williams_period) williamsR = (highestHigh - close) / (highestHigh - lowestLow) * -100 // Entry conditions longCondition = rsi < rsi_oversold and cci < cci_oversold and williamsR < williams_oversold and strategy.position_size == 0 shortCondition = rsi > rsi_overbought and cci > cci_overbought and williamsR > williams_overbought and strategy.position_size == 0 // Execute strategy entry orders if (longCondition) strategy.entry("Long", strategy.long) strategy.exit("Take Profit or Stop Loss Long", "Long", limit=close * (1 + take_profit_pct), stop=close * (1 - stop_loss_pct)) if (shortCondition) strategy.entry("Short", strategy.short) strategy.exit("Take Profit or Stop Loss Short", "Short", limit=close * (1 - take_profit_pct), stop=close * (1 + stop_loss_pct)) // Plot the signals on the chart plotshape(series=longCondition, title="Buy Signal", location=location.belowbar, color=color.green, style=shape.triangleup, text="BUY") plotshape(series=shortCondition, title="Sell Signal", location=location.abovebar, color=color.red, style=shape.triangledown, text="SELL") // Plot the indicators for visualization plot(rsi, title="RSI", color=color.blue) plot(cci, title="CCI", color=color.purple) plot(williamsR, title="Williams %R", color=color.orange)