Esta estratégia identifica oportunidades de negociação através do cálculo dos rácios corpo-candelário/candelário e da combinação de indicadores RSI para detectar condições de mercado de sobrecompra/supervenda.
A lógica central desta estratégia baseia-se no seguinte:
Calcule a percentagem de corpo/candelário: Calculando os preços de abertura, fechamento, alta e baixa, derive a percentagem ocupada pelo corpo e as mechas da vela.
Calcule a porcentagem de mudança da força da vela: Calcule a magnitude do movimento interno do preço de cada vela para determinar a força da vela.
Combine com o RSI para identificar condições de sobrecompra / sobrevenda: defina linhas de limiar de sobrecompra e sobrevenda para o RSI. RSI acima da linha de sobrecompra significa estado de sobrecompra e vice-versa para sobrevenda.
Determine os sinais de reversão: Quando a porcentagem de mecha < 20% e a força da vela > 2 x a força média, juntamente com o fechamento da vela anterior maior que o fechamento da vela atual, ele sinaliza a condição curta. O oposto indica a condição longa.
Definir stop loss e take profit: definir stop loss baseado em percentagem fixa e tomar níveis de lucro separadamente para transações longas e curtas.
As vantagens desta estratégia incluem:
Identificação eficaz da tendência e das inversões utilizando proporções corpo de vela/wick. Detecta bem a dinâmica de preços e pontos de virada.
Maior precisão dos sinais de reversão combinando mudança de intensidade da vela e RSI. O RSI é ajustável, proporcionando maior capacidade de otimização.
Configuração razoável de stop loss/take profit para capitalizar as oportunidades de curto prazo, reduzindo simultaneamente a exposição ao risco comercial.
Flexível ajuste dos parâmetros para otimização em diferentes produtos e prazos.
Alguns riscos da estratégia:
Potenciais sinais falsos durante fortes rupturas de tendência. Pode ser reduzido através da otimização de períodos de comparação de velas e parâmetros do RSI.
A probabilidade de reversões fracassadas não pode ser totalmente eliminada. Estar longo em tendência de queda e vice-versa induz perdas. As perdas de parada devem ser ajustadas em conformidade para minimizar os danos.
O desempenho depende do produto e do período de tempo.
A estratégia pode ser otimizada das seguintes formas:
Períodos de ajuste fino considerados na identificação de sobrecompra/supervenda para determinar as combinações de parâmetros ideais.
Otimizar os limiares de RSI de sobrecompra/supervenda com base nas especificidades do produto.
Teste os rácios stop loss/take profit para derivar um plano ideal de gestão de riscos.
Classificar os produtos de acordo com a volatilidade para um ajuste de parâmetros mais direcionado.
Os filtros adicionais baseados em outros indicadores podem melhorar a robustez.
A estratégia é altamente prática em geral para detectar reversões, entendendo as informações do candelabro. Como um sistema de negociação de curto prazo típico, tem uma capacidade de otimização considerável em produtos e ambientes para rastrear tendências de médio prazo.
/*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 )