Esta estrategia identifica las oportunidades de negociación mediante el cálculo de los ratios de cuerpo de vela / parrilla y la combinación de indicadores RSI para detectar las condiciones de mercado de sobrecompra / sobreventa.
La lógica central de esta estrategia se basa en lo siguiente:
Cálcule el porcentaje de cuerpo / mecha de los candelabros: Al calcular los precios abiertos, cerrados, altos y bajos, obtenga el porcentaje ocupado por el cuerpo y las mechas de la vela.
Cálcule el porcentaje de cambio de la fuerza de la vela: Calcule la magnitud del movimiento del precio interno de cada vela para determinar la fuerza de la vela.
Combinar con el RSI para identificar las condiciones de sobrecompra / sobreventa: Establezca líneas de umbral de sobrecompra y sobreventa para el RSI. El RSI por encima de la línea de sobrecompra significa estado de sobrecompra y viceversa para sobreventa.
Determinar las señales de reversión: Cuando el porcentaje de mecha < 20% y la fuerza de la vela > 2 veces la fuerza media, junto con el cierre de la vela anterior más alto que el cierre de la vela actual, indica una condición corta.
Definir el stop loss y el take profit: establecer un stop loss basado en porcentajes fijos y tomar niveles de ganancia por separado para operaciones largas y cortas.
Las ventajas de esta estrategia incluyen:
Identificación eficaz de tendencias e inversiones utilizando las proporciones cuerpo de la vela / perilla. Detecta bien el impulso del precio y los puntos de inflexión.
Mayor precisión de las señales de inversión mediante la combinación de cambio de intensidad de la vela y RSI.
Configuración razonable de stop loss/take profit para capitalizar las oportunidades a corto plazo y reducir al mismo tiempo la exposición al riesgo comercial.
Flexible capacidad de ajuste de parámetros para la optimización en diferentes productos y plazos de tiempo.
Algunos de los riesgos presentes en la estrategia:
Se pueden reducir mediante la optimización de los períodos de comparación de velas y los parámetros del RSI.
La probabilidad de reversiones fallidas no se puede eliminar por completo. Estar largo en tendencia bajista y viceversa induce pérdidas. Las pérdidas de parada deben ajustarse en consecuencia para minimizar el daño.
El rendimiento depende del producto y del período de tiempo, por lo que se recomienda precaución en el caso de productos altamente volátiles.
La estrategia se puede optimizar de las siguientes maneras:
Los periodos de ajuste fino considerados para determinar las combinaciones óptimas de parámetros.
Optimizar los umbrales de RSI de sobrecompra/sobreventa basados en las características del producto.
Prueba las relaciones stop loss/take profit para obtener el plan de gestión de riesgos ideal.
Categorizar los productos según la volatilidad para ajustar los parámetros de manera más específica.
Los filtros adicionales basados en otros indicadores pueden mejorar la robustez.
La estrategia es muy práctica en general para detectar reversiones mediante la comprensión de la información de las velas. Como un sistema comercial típico a corto plazo, tiene una capacidad de optimización considerable en productos y entornos para rastrear tendencias a mediano plazo. Sin embargo, es imperativo un control adecuado del riesgo a través de las pérdidas de parada.
/*backtest start: 2024-01-01 00:00:00 end: 2024-01-31 23:59:59 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("mecha larga study",overlay = true, max_bars_back = 600) //Porcentaje Mecha cuerpo bodyPercent = math.abs(open - close) / (high - low) * 100 wickPercent = 100 - bodyPercent plot(bodyPercent, "Porcentaje del cuerpo", color.rgb(163, 76, 175)) plot(wickPercent, "Porcentaje de la mecha", color.red) VelaDeFuerza = math.abs(((high[0] - low[0])*100)/high)//PORCENTAJE DE VARIACION DE UNA VELA plot(VelaDeFuerza, color = color.purple) Promedio = ((VelaDeFuerza[0] + VelaDeFuerza[1] + VelaDeFuerza[2] + VelaDeFuerza[3] + VelaDeFuerza[4] + VelaDeFuerza[5] + VelaDeFuerza[6] + VelaDeFuerza[7] + VelaDeFuerza[8] + VelaDeFuerza[9] + VelaDeFuerza[10] + VelaDeFuerza[11] + VelaDeFuerza[12] + VelaDeFuerza[13] + VelaDeFuerza[14] ) / 15) plot(Promedio, color = color.yellow) // rsi per_Rsi = input.int(14, "Periodo RSI",minval= 11, maxval=20) //inicializo el rsi en 14 periodos pero doy la posibilidad al usuario de cambiarlo rsi_Sc = input.int(75,"Sobre Compra",minval=68,maxval=80) //ENTRADA DE SOBRE COMPRA DE RSI rsi_Sv = input.int(25,"Sobre Venta",minval=20,maxval=33) //ENTRADA DE SOBRE VENTA DE RSI rsi= ta.rsi(close,per_Rsi)//guardo el rsi con los paramentros anteriores en una variable //logica MayorPromedio = Promedio + 0.800 plot(MayorPromedio, color = color.green) Venta = bodyPercent > 80 and VelaDeFuerza > Promedio * 2 and close < close[1] Compra = bodyPercent > 80 and VelaDeFuerza > Promedio * 2 and close > close[1] precioVenta = Venta? close : na precioCompra = Compra? close : na tp1 = 0.00 sl = 0.00 tp1 := 0.003 sl := 0.010 TP1short = precioVenta - (precioVenta * tp1) Slshort = precioVenta + (precioVenta * sl) TP1long = precioCompra + (precioCompra * tp1) SLlong = precioCompra - (precioCompra * sl) name1 = "tp1" name2 = "tp2" name3= "SL" if ( precioVenta ) strategy.entry("short", strategy.short , comment = "Sell SL: " + str.tostring(Slshort, "0.000") + " TP1: " + str.tostring(TP1short,"0.000") ) strategy.exit("exit" , "short", stop = Slshort , limit = TP1short ,qty_percent = 100 ) if ( precioCompra ) strategy.entry("long", strategy.long , comment = "Buy SL: " + str.tostring(SLlong, "0.000") + " TP1: " + str.tostring(TP1long,"0.000") ) strategy.exit("exit" , "long", stop = SLlong , limit = TP1long ,qty_percent = 100 )