Esta estrategia integra tres indicadores de Bollinger Bands, Relative Strength Index (RSI) y Exponential Moving Average (EMA) para implementar una estrategia de trading automática con largos períodos de retención para las acciones. Genera señales de compra cuando el RSI está por debajo de la línea de sobreventa y el precio está cerca o toca el carril inferior de Bollinger Bands, y genera señales de venta cuando el precio sube para tocar el carril superior de Bollinger Bands, utilizando Bollinger Bands para determinar las tendencias del mercado y el estado de sobrecompra / sobreventa para una doble confirmación.
Esta estrategia juzga principalmente en base a tres indicadores: Bollinger Bands, RSI y EMA. El carril medio de las bandas de Bollinger es el promedio móvil simple del precio, y los carriles superior e inferior son dos rangos de desviación estándar del precio. Las bandas de Bollinger pueden juzgar el estado de sobrecompra / sobreventa del mercado. Cuando el precio está cerca del carril inferior, indica el estado de sobreventa y cuando el precio está cerca del carril superior, indica el estado de sobreventa.
La señal de compra para esta estrategia se genera cuando el RSI está por debajo de la línea de sobreventa de 30 y al mismo tiempo el precio se ha acercado o tocado el rieles inferior de las bandas de Bollinger en estado de sobreventa. Esto evita señales falsas.
La señal de venta se genera cuando el precio toca el tren superior de las bandas de Bollinger durante una tendencia alcista.
Soluciones:
La estrategia se puede optimizar aún más en los siguientes aspectos:
La estrategia integra bandas de Bollinger, RSI y EMA para una estrategia de negociación automática de tenencia larga con filtros de doble confirmación. La doble confirmación para el estado de sobrecompra / sobreventa evita señales falsas de manera efectiva, y el uso de EMA para la determinación de tendencias evita el comercio contra la tendencia. Mientras tanto, los ajustes de parámetros flexibles lo hacen adaptable a diferentes acciones. Una mejora adicional en los aspectos de los mecanismos de stop loss y salida puede mejorar la eficiencia y la gestión de riesgos 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")