Estrategia de trading dual con bandas de Bollinger + RSI + EMA


Fecha de creación: 2023-12-29 14:46:57 Última modificación: 2023-12-29 14:46:57
Copiar: 2 Número de Visitas: 1097
1
Seguir
1621
Seguidores

Estrategia de trading dual con bandas de Bollinger + RSI + EMA

Descripción general

Esta estrategia integra los tres indicadores de la banda de Brin, el índice relativamente fuerte (RSI) y el promedio móvil del índice (EMA) para lograr una estrategia de comercio automático de acciones que se mantiene en la línea larga. Se genera una señal de compra cuando el RSI está por debajo de la línea de venta y el precio está cerca o toca la banda de Brin. Se genera una señal de venta cuando el precio está cerca y toca la banda de Brin.

Principio de estrategia

Esta estrategia se basa principalmente en tres indicadores: la banda de Brin, el RSI y el EMA. La línea media de la banda de Brin es el promedio móvil simple de los precios, y la línea de subida y bajada es el doble de la diferencia estándar de los precios. La banda de Brin es capaz de determinar el fenómeno de sobreventa y sobreventa del mercado, el precio está cerca de la baja y el precio está cerca de la subida. El indicador RSI es uno de los indicadores importantes para determinar si una acción está sobrevendida.

Las condiciones de compra de esta estrategia son: La señal de compra se genera cuando el indicador RSI está por debajo de la línea de venta por encima de 30, y se necesita para satisfacer al mismo tiempo el estado de venta por encima de los precios que se han acercado o tocado la línea de baja de Brin, para evitar falsas señales.

Las condiciones de venta de esta estrategia son: Durante el alza de precios, cuando se toca la banda de Brin se genera una señal de venta, comboBox1. Así, se utiliza la banda de Brin para determinar el estado de sobrecompra y se realiza una venta de parada.2.

Ventajas estratégicas

  1. La banda de Brin y el indicador RSI están integrados, con un doble filtro para determinar el estado de sobrecompra y sobreventa y evitar falsas señales.
  2. Utiliza la EMA para determinar la dirección de la tendencia de los precios y evitar la negociación en contra.
  3. Los parámetros RSI y los parámetros de las bandas de Brin se pueden configurar de forma personalizada para diferentes acciones.
  4. La lógica de la estrategia es simple, clara y fácil de entender.

Riesgo estratégico

  1. Tanto el BRI como el RSI pueden generar señales erróneas que conduzcan a compras erróneas.
  2. La configuración de la posición de parada de pérdidas necesita ser optimizada, y el riesgo de retiro es mayor.
  3. La EMA no puede juzgar la tendencia a la perfección y puede haber perdido el punto de inflexión.
  4. La configuración inadecuada de los parámetros puede causar una operación demasiado frecuente o perder oportunidades de negociación.

La solución al riesgo:

  1. La reducción adecuada del ciclo de la banda de Bryn y la optimización de los parámetros RSI.
  2. La pérdida de seguimiento dinámico.
  3. La integración de otros indicadores en las tendencias de evaluación.
  4. Prueba diferentes configuraciones de parámetros para encontrar la combinación óptima de ellos.

Dirección de optimización de la estrategia

Esta estrategia puede ser optimizada en las siguientes direcciones:

  1. Añadir otros indicadores para juzgar, como el indicador de KD para juzgar sobrecompra y sobreventa.
  2. Aumentar las estrategias de detención de pérdidas para administrar el riesgo, como el movimiento de las paradas y los parados intermitentes.
  3. Aumentar las estrategias de salida en las condiciones de venta, como las salidas de tendencia según EMA.
  4. Optimización de la configuración de los parámetros para mejorar el espacio de ganancias, como ajustar el ancho de banda de Brin.
  5. Se han incrementado las reglas de apertura de almacenes para evitar falsos robos y filtrar lo que se pueda.

Resumir

Esta estrategia integra tres indicadores, el Brin Belt, el RSI y el EMA, para lograr una estrategia de negociación automática con una línea larga de doble filtración. El mecanismo de doble filtración para determinar el estado de sobrecompra y sobreventa puede evitar falsas señales, y el uso de la tendencia de determinación de EMA puede evitar el comercio contrario.

Código Fuente de la Estrategia
/*backtest
start: 2023-12-21 00:00:00
end: 2023-12-28 00:00:00
period: 3m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
strategy("Bollinger + RSI + EMA, Double Strategy Long-Only (by ChartArt) v1.3", shorttitle="rsi 30 min ADJ Buy", overlay=true)

///////////// RSI
RSIlength = input(2, title="RSI Period Length") // Adjusted RSI period length
RSIoverSold = input(30, title="RSI Oversold Level")  // Adjustable RSI oversold level
RSIoverBought = input(80, title="RSI Overbought Level")  // Adjustable RSI overbought level
price = close
vrsi = rsi(price, RSIlength)

///////////// Bollinger Bands
BBlength = input(231, minval=1, title="Bollinger Period Length") // Adjusted Bollinger period length
BBmult = 2
BBbasis = sma(price, BBlength)
BBdev = BBmult * stdev(price, BBlength)
BBupper = BBbasis + BBdev
BBlower = BBbasis - BBdev

///////////// EMA
useEMA = input(true, title="Use EMA?")
emaLength = input(20, title="EMA Period Length")
ema = useEMA ? ema(close, emaLength) : na

source = close
buyEntry = crossover(source, BBlower) or (close < BBlower and close > BBbasis) or (low < BBlower and close > BBbasis) // Add condition for low touching Bollinger Band
sellEntry = crossunder(source, BBupper)

///////////// Plotting
plot(BBbasis, color=color.aqua, title="Bollinger Bands SMA Basis Line")
plot(BBupper, color=color.silver, title="Bollinger Bands Upper Line")
plot(BBlower, color=color.silver, title="Bollinger Bands Lower Line")
plot(ema, color=color.orange, title="EMA")  // Plot EMA

///////////// RSI + Bollinger Bands Strategy
long = crossover(vrsi, RSIoverSold) and buyEntry
close_long = close >= BBupper

if (not na(vrsi))
    if long
        strategy.entry("Buy", strategy.long, qty=10, stop=BBlower, comment="Buy")
    else
        strategy.cancel(id="Buy")
        
    if close_long
        strategy.close("Buy")