Sistema de optimización de estrategia de súper tendencia y RSI de ciclo temporal dual

RSI ATR
Fecha de creación: 2024-11-25 17:27:21 Última modificación: 2024-11-25 17:27:21
Copiar: 0 Número de Visitas: 464
1
Seguir
1617
Seguidores

Sistema de optimización de estrategia de súper tendencia y RSI de ciclo temporal dual

Descripción general

La estrategia es un sistema de comercio de doble ciclo de tiempo basado en el indicador SuperTrend y el indicador RSI. Combina dos períodos de tiempo de 120 minutos y 15 minutos con indicadores de análisis técnico para capturar la dirección de la tendencia a medio plazo a través del indicador SuperTrend y al mismo tiempo aprovechar el indicador RSI para obtener ganancias. La estrategia utiliza un mecanismo de gestión de fondos para asignar posiciones por porcentaje y establecer condiciones de parada basadas en porcentajes.

Principio de estrategia

La lógica central de la estrategia se basa en los siguientes elementos clave:

  1. Utiliza el indicador SuperTrend con un ciclo de 120 minutos como herramienta principal para determinar las tendencias, basado en el ATR de 14 ciclos, con un factor de 3.42
  2. La señal de negociación se determina por la intersección de la línea de precio con la línea de SuperTrend, la travesía hacia arriba produce una señal de cotación y la travesía hacia abajo produce una señal de cotación
  3. Utiliza el indicador RSI de 15 minutos de duración como herramienta auxiliar, el RSI de 5 años de duración, para determinar si el mercado está demasiado caliente o demasiado frío
  4. Aplanar las posiciones de más cabeza cuando el RSI alcanza la zona de sobrecompra ((95)) y las posiciones de menos cabeza cuando alcanza la zona de sobreventa ((5))
  5. Establezca un punto de parada porcentual del 30% en relación con el precio promedio de apertura de la posición

Ventajas estratégicas

  1. La combinación de múltiples ciclos de tiempo mejora la fiabilidad de la señal y reduce el efecto de las señales falsas
  2. La optimización de los parámetros de los indicadores SuperTrend es moderada, lo que garantiza la sensibilidad a las tendencias y evita el comercio frecuente causado por la hipersensibilidad.
  3. La configuración de los extremos del RSI es muy estricta (de 5 y 95) para asegurar que se activa una posición cerrada solo en situaciones extremas y evitar una salida prematura
  4. La administración de fondos adopta un porcentaje fijo del valor neto de la cuenta (<35%) para controlar el riesgo y garantizar el espacio de ganancias.
  5. Se cancela automáticamente la posición inversa antes de abrir una nueva posición, evitando el riesgo de tener varias posiciones vacías al mismo tiempo

Riesgo estratégico

  1. Las estrategias de doble ciclo de tiempo pueden tener un efecto de rezago en mercados convulsionados, con la necesidad de tener en cuenta el control de las retiradas.
  2. El RSI está demasiado ajustado a los extremos, lo que puede hacer que se pierdan algunas oportunidades de ganar
  3. El 30% de los puntos de parada son más agresivos y pueden haber terminado prematuramente en un mercado con mucha volatilidad.
  4. La estrategia no tiene un límite de pérdidas y puede sufrir grandes pérdidas si la tendencia se invierte repentinamente
  5. El 35% de las posiciones son comparativamente radicales y más riesgosas en momentos de fuertes fluctuaciones en el mercado

Dirección de optimización de la estrategia

  1. Se recomienda la adición de un mecanismo de stop loss dinámico y se puede considerar un stop loss de seguimiento basado en ATR
  2. Los umbrales de sobrecompra y sobreventa del RSI se pueden relajar adecuadamente y se recomienda ajustar a 10 y 90, para mejorar la adaptabilidad de la estrategia
  3. Se puede agregar un indicador de volumen de intercambio como confirmación auxiliar para mejorar la fiabilidad de la señal
  4. Considere la posibilidad de ajustar dinámicamente la proporción de su posición en función de las fluctuaciones del mercado, utilizando ATR o índice de volatilidad
  5. Se recomienda agregar filtros de intensidad de tendencia, como indicadores DMI o ADX, para filtrar tendencias débiles

Resumir

Es una estrategia de seguimiento de tendencias estructurada y lógica. Al combinar indicadores técnicos de diferentes períodos de tiempo, al mismo tiempo que se toma en cuenta el control de los riesgos, se toma en cuenta el control de los riesgos. Si bien hay algunos espacios que se pueden optimizar, la idea de diseño general cumple con los principios básicos de la negociación cuantitativa.

Código Fuente de la Estrategia
/*backtest
start: 2024-10-01 00:00:00
end: 2024-10-31 23:59:59
period: 1h
basePeriod: 1h
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/
// © felipemiransan

//@version=5
strategy("Supertrend Strategy", overlay=true)

// Function for Supertrend
supertrend(_factor, _atrPeriod) =>
    [out, _] = ta.supertrend(_factor, _atrPeriod)
    out

// Supertrend Settings
factor = input.float(3.42, title="Supertrend Factor")
atrPeriod = input.int(14, title="ATR Period")
tf2 = input.timeframe("120", title="Supertrend Timeframe")

// RSI Settings
rsi_tf = input.timeframe("15", title="RSI Timeframe")
rsiLength = input.int(5, title="RSI Length")
rsiUpper = input.int(95, title="RSI Upper Limit")  
rsiLower = input.int(5, title="RSI Lower Limit")   

// RSI Timeframe
rsi_tf_value = request.security(syminfo.tickerid, rsi_tf, ta.rsi(close, rsiLength), lookahead=barmerge.lookahead_off, gaps=barmerge.gaps_off)

// Supertrend Timeframe
supertrend_tf2 = request.security(syminfo.tickerid, tf2, supertrend(factor, atrPeriod), lookahead=barmerge.lookahead_off, gaps=barmerge.gaps_off)

// Take Profit Settings (Percentage in relation to the average price)
takeProfitPercent = input.float(30, title="Take Profit", step=0.1) / 100

// Entry conditions based on price crossover with Supertrend Timeframe
longCondition = ta.crossover(close, supertrend_tf2) and barstate.isconfirmed
shortCondition = ta.crossunder(close, supertrend_tf2) and barstate.isconfirmed

// Execution of reversal orders with closing of previous position
if (longCondition)
    // Close a short position before opening a long position
    if (strategy.position_size < 0)
        strategy.close("Short", comment="Close Short for Long Entry")
    strategy.entry("Long", strategy.long)

if (shortCondition)
    // Close long position before opening short position
    if (strategy.position_size > 0)
        strategy.close("Long", comment="Close Long for Short Entry")
    strategy.entry("Short", strategy.short)

// Calculate take profit levels relative to the average entry price
if (strategy.position_size > 0)
    takeProfitLong = strategy.position_avg_price * (1 + takeProfitPercent)
    strategy.exit("Take Profit Long", "Long", limit=takeProfitLong)

if (strategy.position_size > 0 and (rsi_tf_value >= rsiUpper))
    strategy.close("Long", comment="RSI Take Profit Long")

if (strategy.position_size < 0)
    takeProfitShort = strategy.position_avg_price * (1 - takeProfitPercent)
    strategy.exit("Take Profit Short", "Short", limit=takeProfitShort)

if (strategy.position_size < 0 and (rsi_tf_value <= rsiLower))
    strategy.close("Short", comment="RSI Take Profit Short")

// Plot Supertrend timeframe with commit check to avoid repainting
plot(barstate.isconfirmed ? supertrend_tf2 : na, color=color.blue, title="Supertrend Timeframe (120 min)", linewidth=1)

// Plot RSI for visualization
plot(rsi_tf_value, "RSI", color=color.purple)
hline(rsiUpper, "RSI Upper", color=color.red)
hline(rsiLower, "RSI Lower", color=color.green)