Ichimoku Cloud com estratégia MACD

Autora:ChaoZhang, Data: 2023-10-16 09:02:29
Tags:

Resumo

Esta é uma estratégia de negociação de criptomoedas que combina o indicador Ichimoku Cloud e o indicador MACD. Utiliza a Nuvem Ichimoku para determinar a direção geral da tendência e os níveis de suporte / resistência, e o MACD para medir a tendência e o ímpeto de curto prazo, gerando sinais de negociação. Esta estratégia pode identificar efetivamente tendências de médio a longo prazo e ajustar prontamente as posições quando a tendência muda de direção.

Estratégia lógica

A estratégia utiliza o cruzamento da linha de conversão e da linha de base da Nuvem Ichimoku para determinar a tendência de médio prazo e o indicador MACD para determinar a tendência e o ímpeto de curto prazo.

Quando a linha de conversão cruza acima da linha de base, é um sinal de alta e o preço estar acima da nuvem indica uma tendência forte.

Quando o histograma MACD está acima da linha zero, ele sinaliza impulso de alta, e quando está abaixo da linha zero, ele sinaliza impulso de baixa.

As regras específicas de negociação são as seguintes:

sinal de entrada longo: linha de conversão cruza acima da linha de base, preço cruza acima da nuvem, linha MACD cruza acima da linha de sinal, vá longo. sinal de saída longo: linha de conversão cruza abaixo da linha de base, preço cruza abaixo da nuvem, linha MACD cruza abaixo da linha de sinal, fechar posição longa.

sinal de entrada curto: linha de conversão cruza abaixo da linha de base, preço cruza abaixo da nuvem, linha MACD cruza abaixo da linha de sinal, vai curto.
Sinal de saída curto: linha de conversão cruza acima da linha de base, preço cruza acima da nuvem, linha MACD cruza acima da linha de sinal, fechar posição curta.

Vantagens da estratégia

  1. A Nuvem de Ichimoku pode determinar tendências de médio a longo prazo e as tendências de curto prazo do MACD. Combinando os dois pode capturar oportunidades de negociação em diferentes prazos.

  2. Os níveis de nuvem da Nuvem Ichimoku indicam claramente zonas de suporte e resistência.

  3. O MACD é eficaz na medição de condições de sobrecompra e sobrevenda a curto prazo, evitando flutuações nos mercados de faixa.

  4. Os parâmetros da estratégia são otimizados e podem funcionar para várias criptomoedas, fornecendo alguma robustez.

Riscos da Estratégia

  1. A Nuvem Ichimoku e o MACD podem gerar sinais falsos, exigindo confirmação de outros indicadores.

  2. A divergência ocorre frequentemente em mercados variados, exigindo ajustes de parâmetros ou suspensão da negociação.

  3. As nuvens espessas exigem breaks claros antes de entrar, potencialmente perdendo algumas oportunidades.

  4. Dados insuficientes de backtesting, exigindo prazos mais longos para otimização de parâmetros.

Os riscos podem ser geridos através da confirmação dos sinais com outros indicadores, do ajustamento dos parâmetros às condições do mercado ou da suspensão da negociação em determinados períodos.

Orientações de otimização

  1. Otimizar os parâmetros de Ichimoku ajustando os períodos de conversão e linha de base para se adequar melhor aos diferentes ativos.

  2. Otimizar os parâmetros do MACD ajustando os períodos de suavização rápido, lento e do sinal para sinais mais precisos.

  3. Adicionar uma estratégia de stop loss para cortar perdas quando o drawdown atingir um determinado limiar.

  4. Adicionar o dimensionamento das posições para ajustar a percentagem do capital em risco por transação com base nas condições de mercado.

  5. Estratégia de teste em diferentes dados de criptomoedas para avaliar a robustez.

  6. Incorporar indicadores adicionais para filtrar sinais falsos.

Conclusão

Esta estratégia combina os pontos fortes dos indicadores Ichimoku Cloud e MACD, usando as linhas de conversão e base para determinar a direção da tendência de médio prazo, e o MACD para medir os níveis de sobrecompra / sobrevenda de curto prazo, gerando sinais de negociação. Os parâmetros podem ser otimizados para diferentes ativos e outros indicadores ou stop losses adicionados para gerenciar o risco.


/*backtest
start: 2023-10-08 00:00:00
end: 2023-10-15 00:00:00
period: 5m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © Coinrule

//@version=5
strategy('Ichimoku Cloud with MACD (By Coinrule)',
         overlay=true,
         initial_capital=1000,
         process_orders_on_close=true,
         default_qty_type=strategy.percent_of_equity,
         default_qty_value=30,
         commission_type=strategy.commission.percent,
         commission_value=0.1)

showDate = input(defval=true, title='Show Date Range')
timePeriod = time >= timestamp(syminfo.timezone, 2022, 6, 1, 0, 0)


// Stop Loss and Take Profit for Shorting
Stop_loss = input(1) / 100
Take_profit = input(5) / 100
longStopPrice = strategy.position_avg_price * (1 - Stop_loss)
longTakeProfit = strategy.position_avg_price * (1 + Take_profit)


// Inputs
ts_bars = input.int(9, minval=1, title='Tenkan-Sen Bars')
ks_bars = input.int(26, minval=1, title='Kijun-Sen Bars')
ssb_bars = input.int(52, minval=1, title='Senkou-Span B Bars')
cs_offset = input.int(26, minval=1, title='Chikou-Span Offset')
ss_offset = input.int(26, minval=1, title='Senkou-Span Offset')
long_entry = input(true, title='Long Entry')
short_entry = input(true, title='Short Entry')

middle(len) => math.avg(ta.lowest(len), ta.highest(len))

// Ichimoku Components
tenkan = middle(ts_bars)
kijun = middle(ks_bars)
senkouA = math.avg(tenkan, kijun)
senkouB = middle(ssb_bars)

// Plot Ichimoku Kinko Hyo
plot(tenkan, color=color.new(#0496ff, 0), title='Tenkan-Sen')
plot(kijun, color=color.new(#991515, 0), title='Kijun-Sen')
plot(close, offset=-cs_offset + 1, color=color.new(#459915, 0), title='Chikou-Span')
sa = plot(senkouA, offset=ss_offset - 1, color=color.new(color.green, 0), title='Senkou-Span A')
sb = plot(senkouB, offset=ss_offset - 1, color=color.new(color.red, 0), title='Senkou-Span B')
fill(sa, sb, color=senkouA > senkouB ? color.green : color.red, title='Cloud color', transp=90)

ss_high = math.max(senkouA[ss_offset - 1], senkouB[ss_offset - 1])
ss_low = math.min(senkouA[ss_offset - 1], senkouB[ss_offset - 1])


// MACD
[macd, macd_signal, macd_histogram] = ta.macd(close, 12, 26, 9)


// Entry/Exit Signals
tk_cross_bull = tenkan > kijun
tk_cross_bear = tenkan < kijun
cs_cross_bull = ta.mom(close, cs_offset - 1) > 0
cs_cross_bear = ta.mom(close, cs_offset - 1) < 0
price_above_kumo = close > ss_high
price_below_kumo = close < ss_low

bullish = tk_cross_bull and cs_cross_bull and price_above_kumo and ta.crossover(macd, macd_signal)
bearish = tk_cross_bear and cs_cross_bear and price_below_kumo and ta.crossunder(macd, macd_signal)

strategy.entry('Long', strategy.long, when=bullish and long_entry and timePeriod)
strategy.close('Long', when=bearish and not short_entry)

strategy.entry('Short', strategy.short, when=bearish and short_entry and timePeriod)
strategy.close('Short', when=bullish and not long_entry)




Mais.