Esta estratégia combina o conceito de Vector Candles com o reconhecimento de padrões tradicional de Channel Breakout e Chocolate Sauce (ChoCH) para capturar os movimentos de ruptura no mercado.
Esta estratégia combina de forma inovadora Vector Candles com padrões clássicos de Channel Breakout e ChoCH, melhorando a confiabilidade e reconhecibilidade do sinal através da diferenciação de cores e um mecanismo de vela de confirmação. As vantagens da estratégia estão em suas regras claras, sinais intuitivos e certo grau de flexibilidade e potencial de otimização. No entanto, a estratégia também tem algumas limitações e riscos, como desempenho abaixo do normal em mercados agitados, compreensão insuficiente das tendências do mercado e falta de gerenciamento de stop-loss e take-profit. No futuro, a estratégia pode ser refinada em termos de confirmação de tendência, faixa de negociação, otimização de parâmetros, controle de risco e outros aspectos para alcançar um desempenho comercial mais robusto.
/*backtest start: 2024-02-01 00:00:00 end: 2024-02-29 23:59:59 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=4 strategy("Custom ChoCH and BOS Strategy with Vector Candles", overlay=true) // Input Parameters length = input(10, title="Lookback Length for Volume") volMultiplier = input(2.0, title="Volume Multiplier for Vector Candles") confirmationCandles = input(3, title="Confirmation Candles") // Calculate the average volume of the last 'length' candles avgVol = sma(volume, length) // Vector Candle Definitions vectorCandleRed = (close < open) and (volume > avgVol * volMultiplier) ? 1.0 : 0.0 vectorCandleGreen = (close > open) and (volume > avgVol * volMultiplier) ? 1.0 : 0.0 vectorCandleBlue = (close < open) and (volume > avgVol * 1.5) ? 1.0 : 0.0 // 150% volume for blue vectorCandlePurple = (close > open) and (volume > avgVol * 1.5) ? 1.0 : 0.0 // 150% volume for purple // Detecting BOS and ChoCH isRedChoCH = vectorCandleRed > 0 and (close < low[1]) // Red ChoCH isGreenBOS = vectorCandleGreen > 0 and (close > high[1]) // Green BOS // Confirmation Logic redChoCHConfirmed = (sum(vectorCandleRed, confirmationCandles) >= 2) ? 1.0 : 0.0 greenBOSConfirmed = (sum(vectorCandleGreen, confirmationCandles) >= 2) ? 1.0 : 0.0 // Entry Conditions buyCondition = redChoCHConfirmed > 0 sellCondition = greenBOSConfirmed > 0 // Strategy Execution if (buyCondition) strategy.entry("Buy", strategy.long) if (sellCondition) strategy.close("Buy") // Plotting Vector Candles and Signals plotshape(series=isRedChoCH, title="Red ChoCH Signal", location=location.belowbar, color=color.red, style=shape.circle, text="Red ChoCH") plotshape(series=isGreenBOS, title="Green BOS Signal", location=location.abovebar, color=color.green, style=shape.circle, text="Green BOS") // Plotting Vector Candles for Visualization plotchar(vectorCandleRed > 0, title="Vector Candle Red", location=location.belowbar, color=color.red, char='R', text="Red") plotchar(vectorCandleGreen > 0, title="Vector Candle Green", location=location.abovebar, color=color.green, char='G', text="Green") plotchar(vectorCandleBlue > 0, title="Vector Candle Blue", location=location.belowbar, color=color.blue, char='B', text="Blue") plotchar(vectorCandlePurple > 0, title="Vector Candle Purple", location=location.abovebar, color=color.purple, char='P', text="Purple")