As Entradas de Ichimoku é uma estratégia quantitativa que identifica a direção da tendência usando gráficos de nuvem de Ichimoku, e gera sinais de negociação em combinação com Bandas de Bollinger e indicadores RSI. Esta estratégia determina principalmente se o mercado está atualmente em uma tendência de alta ou baixa com base na cruz de ouro ou cruz de morte da Linha Tenkan e Linha Kijun, e, assim, produz sinais de entrada para posições longas e curtas.
O núcleo desta estratégia está nas duas linhas importantes do gráfico das nuvens de Ichimoku - Linha Tenkan e Linha Kijun. A Linha Tenkan é a média do mais alto e mais baixo nos últimos 9 dias, representando a tendência de curto prazo. A Linha Kijun é a média do mais alto e mais baixo nos últimos 26 dias, representando a tendência de médio a longo prazo. Quando a Linha Tenkan cruza acima da Linha Kijun, ela sinaliza uma entrada para ir longo. Quando a Linha Tenkan cai abaixo da Linha Kijun, ela sinaliza uma entrada para ir curto. Isso julga a direção da tendência atual.
Além da nuvem de Ichimoku, a estratégia também analisa as Bandas de Bollinger e o indicador RSI para gerar sinais de negociação. É considerado um sinal de atividade anormal de preços quando o preço de fechamento atravessa as Bandas de Bollinger superiores ou inferiores.
Na lógica de saída, a estratégia verifica se a ruptura das bandas de Bollinger é bem sucedida e se o oscilador de proximidade comercial cruza o eixo 0, para decidir sobre o bloqueio de lucros ou a interrupção de perdas.
A maior vantagem desta estratégia é que combina a determinação de tendências e flutuações anormais de preços para determinar a direção do comércio. A nuvem de Ichimoku revela claramente a tendência, enquanto as Bandas de Bollinger capturam anomalias. O RSI efetivamente filtra falhas. O uso de múltiplos indicadores coordenados torna os sinais de negociação mais confiáveis. Além disso, a lógica de stop loss e take profit ajuda a bloquear lucros e evitar grandes perdas.
Apesar de ter a vantagem de identificar tendências e anomalias, a estratégia ainda apresenta alguns riscos. Como é negociada junto com as tendências, muitos sinais falsos podem surgir em mercados variados. Configurações incorretas de parâmetros também podem prejudicar o desempenho da estratégia.
A estratégia pode ser melhorada nos seguintes aspectos:
A estratégia de entrada de Ichimoku é uma estratégia de negociação de tendências integrada com vários indicadores. Ao julgar a direção da tendência e as anormalidades de preço, ela captura o ritmo do mercado de forma bastante confiável. Embora haja espaço para melhoria, em geral, esta é uma estratégia com desempenho consistente e riscos controláveis.
/*backtest start: 2023-01-30 00:00:00 end: 2024-01-30 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("ichi strategy", overlay=true) // Input parameters rsiLength = input(14, title="RSI Length") bbLength = input(20, title="Bollinger Bands Length") bbMultiplier = input(2, title="Bollinger Bands Multiplier") stopLossPct = input(1, title="Stop Loss Percentage") takeProfitPct = input(2, title="Take Profit Percentage") // Calculate Ichimoku Cloud components tenkan = ta.sma(high + low, 9) / 2 kijun = ta.sma(high + low, 26) / 2 senkouA = (tenkan + kijun) / 2 senkouB = ta.sma(high + low, 52) / 2 // Bollinger Bands basis = ta.sma(close, bbLength) upperBB = basis + bbMultiplier * ta.stdev(close, bbLength) lowerBB = basis - bbMultiplier * ta.stdev(close, bbLength) // RSI rsiValue = ta.rsi(close, rsiLength) // Trade Proximity Oscillator length = input(14, title="Channels Length") multiplier = input(2, title="Channels Multiplier") atr_length = input(14, title="ATR Length") threshold_percentage = input(1.5, title="Threshold Percentage (%)") ma = ta.sma(close, length) std_dev = ta.stdev(close, length) upper_band = ma + multiplier * std_dev lower_band = ma - multiplier * std_dev distance_upper = close - upper_band distance_lower = lower_band - close atr_value = ta.atr(atr_length) threshold = atr_value * threshold_percentage oscillator = distance_upper - distance_lower // Strategy logic longCondition = close > upperBB and tenkan > kijun and ta.crossover(close, basis) and rsiValue < 70 shortCondition = close < lowerBB and tenkan < kijun and ta.crossunder(close, basis) and rsiValue > 30 strategy.entry("Long", strategy.long, when = longCondition) strategy.entry("Short", strategy.short, when = shortCondition) // Exit logic longExitCondition = close < upperBB and ta.crossover(oscillator, 0) shortExitCondition = close > lowerBB and ta.crossunder(oscillator, 0) strategy.exit("Take Profit/Stop Loss", from_entry="Long", loss=close - close * stopLossPct / 100, profit=close + close * takeProfitPct / 100, when = longExitCondition) strategy.exit("Take Profit/Stop Loss", from_entry="Short", loss=close + close * stopLossPct / 100, profit=close - close * takeProfitPct / 100, when = shortExitCondition) // Plotting plot(senkouA, color=color.green, title="Senkou A") plot(senkouB, color=color.red, title="Senkou B") plot(upperBB, color=color.blue, title="Upper Bollinger Band") plot(lowerBB, color=color.blue, title="Lower Bollinger Band") // Additional Plots plot(tenkan, color=color.orange, title="Tenkan") plot(kijun, color=color.purple, title="Kijun")