Otimização da estratégia de banda de nuvem Ichimoku


Data de criação: 2024-01-19 14:45:21 última modificação: 2024-01-19 14:45:21
cópia: 0 Cliques: 641
1
focar em
1617
Seguidores

Otimização da estratégia de banda de nuvem Ichimoku

Visão geral

A estratégia é uma estratégia de acompanhamento de tendências que combina um indicador de gráfico de nuvem e vários indicadores auxiliares. Usando principalmente um gráfico de nuvem para determinar a direção da tendência, auxiliado por indicadores como MACD, CMF, TSI e filtragem para melhorar a qualidade do sinal.

Princípio da estratégia

A estratégia utiliza principalmente a mudança de um mapa de nuvens para determinar a direção da tendência. Quando o antena atravessa a faixa de nuvens, faça mais e deixe vazio quando atravessa a faixa de nuvens. Ao mesmo tempo, a combinação de linhas de pneus de reserva, gráficos de colunas MACD, índice de fluxo de capital CMF e índice de força real TSI para realizar filtragem em várias camadas, assegura a qualidade do sinal.

A partir daí, o que é feito com os sinais é:

  1. A banda de nuvens na antena
  2. A banda de nuvens é mais larga, e a linha de rotação está acima da linha de referência.
  3. A linha de atraso está acima do eixo 0.
  4. Preço de fechamento acima da nuvem
  5. MACD coluna acima do eixo 0
  6. CMF maior que 0,1
  7. TSI acima do eixo 0

Os sinais de vazio são a condição de ação oposta. Assim, através de um julgamento integrado de vários indicadores, é possível filtrar efetivamente a maioria dos sinais falsos e bloquear as principais tendências do mercado.

Vantagens estratégicas

A maior vantagem da estratégia é que a combinação de indicadores múltiplos elimina os sinais falsos e capta as tendências fortes. Em particular, existem as seguintes vantagens principais:

  1. Um mapa de nuvem para determinar a direção das principais tendências e garantir que a grande maioria esteja correta
  2. Indicadores auxiliares filtram sinais e reduzem o risco de negociação
  3. O sinal é mais confiável com uma análise abrangente dos fatores de ciclo de tempo
  4. As condições são rigorosas, apenas com sinais de alta qualidade, evitando mercados fracos.
  5. Combinado com o acompanhamento de tendências, maximizar o lucro de bloqueio de tendências

Com base no julgamento abrangente acima, a estratégia pode efetivamente capturar o setor de pontos quentes de linha média e longa do mercado de ações, fazer arbitragem de seguimento de tendências e obter lucros extras abundantes.

Risco estratégico

A estratégia apresenta os seguintes riscos:

  1. Risco de Falso Breakout. Quando os preços são falsos, é fácil gerar um sinal de erro.
  2. Risco de reversão de tendência. O funcionamento das ações é regular, o longo prazo deve reverter, existindo a possibilidade de perda de todos os lucros.
  3. A frequência de negociação é um risco baixo. As condições são mais rigorosas e você pode perder algumas oportunidades.

Os métodos para reduzir o risco são:

  1. A liberalização adequada das condições de filtragem, aumentando a frequência das transações.
  2. Aumentar as condições de suspensão para evitar a expansão dos prejuízos.
  3. Optimizar parâmetros para melhorar a precisão do sinal.

Direção de otimização da estratégia

A estratégia pode ser melhorada em vários aspectos:

  1. Optimização de parâmetros. Os parâmetros podem ser otimizados com mais dados de ressonância, para encontrar uma melhor combinação de parâmetros.

  2. Aumentar o mecanismo de suspensão de perdas. A liberalização adequada das condições de entrada, mas a configuração de suspensão de perdas para controlar o risco.

  3. Aumentar o stop loss móvel. Utilize o stop loss de seguimento de tendências para bloquear o lucro e evitar a reversão de perdas.

  4. Optimizar os indicadores de filtragem. Pode testar mais indicadores e encontrar uma melhor combinação de sinais de filtragem.

  5. Aumentar a regra de reconhecimento automático de brechas falsas. Evitar o risco de perseguição.

Resumir

A estratégia de aplicação integrada de um gráfico de nuvem com vários indicadores auxiliares de julgamento de efeito é notável. Através de parâmetros de otimização, stop loss mecanismo de melhoria, otimização de indicadores e outros meios, pode aumentar ainda mais a estabilidade da estratégia, melhorar a qualidade do sinal, obter um maior rendimento estável. A estratégia tem uma forte praticidade.

Código-fonte da estratégia
/*backtest
start: 2024-01-11 00:00:00
end: 2024-01-13 14:00:00
period: 1m
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/
// © exlux99

//@version=4
strategy("Ichimoku with MACD/ CMF/ TSI", overlay=true, margin_long=0, margin_short=0)



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

middle(len) => avg(lowest(len), highest(len))

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


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

// Entry/Exit Signals
fast_length = input(title="Fast Length", type=input.integer, defval=17)
slow_length = input(title="Slow Length", type=input.integer, defval=28)
src = input(title="Source", type=input.source, defval=close)
signal_length = input(title="Signal Smoothing", type=input.integer, minval = 1, maxval = 50, defval = 5)
sma_source = input(title="Simple MA(Oscillator)", type=input.bool, defval=true)
sma_signal = input(title="Simple MA(Signal Line)", type=input.bool, defval=true)

// Calculating
fast_ma = sma_source ? sma(src, fast_length) : ema(src, fast_length)
slow_ma = sma_source ? sma(src, slow_length) : ema(src, slow_length)
macd = fast_ma - slow_ma
signal = sma_signal ? sma(macd, signal_length) : ema(macd, signal_length)
hist = macd - signal


tk_cross_bull = tenkan > kijun
tk_cross_bear = tenkan < kijun
cs_cross_bull = mom(close, cs_offset-1) > 0
cs_cross_bear = mom(close, cs_offset-1) < 0
price_above_kumo = close > ss_high
price_below_kumo = close < ss_low


//CMF
lengthA = input(8, minval=1, title="CMF Length")
ad = close==high and close==low or high==low ? 0 : ((2*close-low-high)/(high-low))*volume
mf = sum(ad, lengthA) / sum(volume, lengthA)


//TSI
long = input(title="Long Length", type=input.integer, defval=8)
short = input(title="Short Length", type=input.integer, defval=8)
price = close
double_smooth(src, long, short) =>
	fist_smooth = ema(src, long)
	ema(fist_smooth, short)
pc = change(price)
double_smoothed_pc = double_smooth(pc, long, short)
double_smoothed_abs_pc = double_smooth(abs(pc), long, short)
tsi_value = 100 * (double_smoothed_pc / double_smoothed_abs_pc)



bullish = tk_cross_bull and cs_cross_bull and price_above_kumo and hist > 0 and mf > 0.1 and tsi_value > 0
bearish = tk_cross_bear and cs_cross_bear and price_below_kumo and hist < 0  and mf < -0.1 and tsi_value < 0



strategy.entry("Long", strategy.long, when=bullish and long_entry)
strategy.entry("Short", strategy.short, when=bearish and short_entry)

strategy.close("Long", when=bearish and not short_entry)
strategy.close("Short", when=bullish and not long_entry)