
A estratégia utiliza vários indicadores técnicos, como bandas de flutuação, indicadores de fraqueza relativa e indicadores de dispersação de médias móveis, para tomar decisões de compra e venda. A estratégia primeiro traça bandas de flutuação tradicionais em um gráfico, diferentemente de representar dois níveis de diferença padrão diferentes com áreas em forma de faixa em duas cores.
Primeiro, a estratégia traça um gráfico de 34 ciclos de bandas de flutuação, contendo um trajeto médio, um trajeto superior e inferior de um desvio padrão e dois desvios padrão.
Quando o preço de fechamento entrar em uma trajetória, abrir uma posição com mais cabeças. Quando o preço de fechamento entrar em uma trajetória inferior, abrir uma posição com a cabeça vazia.
Quando a posição é multi-cabeça, se o preço de fechamento atravessou a trajetória média, a posição é multi-cabeça. Quando a posição é vazia, se o preço de fechamento atravessou a trajetória média, a posição é vazia.
A estratégia também introduziu o indicador RSI, com confirmações adicionais para posições em alta quando o RSI está acima de 70 e para posições em baixa quando o RSI está abaixo de 30.
Quando o RSI ultrapassa 50, a posição está vazia. Quando o RSI ultrapassa 50, a posição está vazia.
A estratégia também introduziu o indicador MACD, como confirmação adicional para a abertura de posições de cabeça alta no MACD Gold Fork e como confirmação adicional para a abertura de posições de cabeça baixa no MACD Dead Fork.
Quando o MACD é um forco morto, a posição está em equilíbrio. Quando o MACD é um forco dourado, a posição está em equilíbrio.
Em resumo, a estratégia requer que os três indicadores da banda de oscilação, RSI e MACD estejam simultaneamente satisfeitos para abrir uma posição. A condição de posição plana também considera os três indicadores, reduzindo a probabilidade de sinais errados.
O uso integrado de vários indicadores de filtragem de sinais, pode efetivamente evitar erros de negociação. A flutuação traz um sinal de ruptura de preço, o filtro RSI supera o fenômeno de sobrevenda, o filtro MACD muda a tendência do mercado, os três confirmam o sinal, o que pode aumentar significativamente a probabilidade de lucro.
A estratégia também estabelece uma lógica de posicionamento de abertura e de posição diferente, controlando rigorosamente o risco de posse. A trajectória central, o eixo central RSI 50 e o forco de ouro do MACD foram introduzidos como condições de posição plana, permitindo a parada rápida e reduzindo os prejuízos individuais.
Em comparação com a estratégia de um único indicador, a estratégia combina as vantagens de vários indicadores, o que pode aumentar significativamente a taxa de lucro e a taxa de vitória, reduzindo a máxima retirada. A filtragem de combinação de vários indicadores pode reduzir a probabilidade de transações erradas, e um mecanismo de stop loss rigoroso pode controlar o impacto de cada transação perdida.
Em geral, a estratégia é muito adequada para a negociação de tendências de linha média e longa, tanto para capturar as principais tendências do mercado quanto para evitar a captura de detalhes do indicador. O mecanismo de controle de risco de múltiplos indicadores também permite o uso seguro de maior alavancagem.
A estratégia apresenta os seguintes principais riscos:
A probabilidade de um indicador emitir um falso sinal. Embora a síntese de vários indicadores possa reduzir o sinal errado, não é possível eliminá-lo completamente. Os parâmetros do indicador precisam ser otimizados para reduzir a taxa de falso sinal.
O mercado unilateral não pode lucrar. Quando a tendência oscila, o stop loss pode ser acionado e não pode ser lucrativo. O padrão de stop loss pode ser adequadamente relaxado e o período de detenção pode ser prolongado.
Alguns indicadores estão atrasados, podendo perder o melhor momento para abrir uma posição. Indicadores mais avançados podem ser testados para capturar o reverso mais cedo.
A abertura de salto de grande amplitude invalida o stop loss. Pode-se configurar o stop loss do canal ou aumentar gradualmente a posição para controlar a perda.
Os parâmetros são muito fixos e precisam ser ajustados para diferentes mercados. Parâmetros de otimização automática de aprendizado de máquina podem ser introduzidos.
Os dados de testes são insuficientes e pode haver uma sobre-adaptação. A robustez da estratégia precisa ser testada em períodos de tempo mais longos e em vários mercados.
A estratégia pode ser melhorada em alguns aspectos:
Optimizar os parâmetros do indicador, encontrar os mais adequados para os períodos de banda oscilante, os períodos RSI e MACD combinação de parâmetros, reduzir os falsos sinais. Você pode encontrar o melhor parâmetro através de métodos como passo a passo, percorrer.
Aumentar o mecanismo de parada de perda de adaptação, em vez de parar o meio-carril fixo. Pode ser combinado com ATR, tendências e outros fatores para ajustar dinamicamente a posição de parada.
A introdução de tecnologia de aprendizagem de máquina permite a otimização adaptativa dos parâmetros. A aprendizagem de reforço pode ser usada para otimizar os parâmetros em diferentes condições de mercado.
Aumentar as regras de discernimento de tendências, distinguir estratégias diferentes em diferentes fases e melhorar a capacidade de adaptação dinâmica das estratégias.
A combinação de análise de texto, dados sociais e outros fatores aumentam a previsão de múltiplos fatores, permitindo que os indicadores mais avançados sejam usados para determinar pontos de inflexão antecipadamente.
Optimizar a rentabilidade, ajustando o tamanho da posição de acordo com o volume de capital, para que os ganhos possam alcançar um crescimento exponencial.
Otimizar o portfólio, procurar estratégias complementares para reduzir a volatilidade dos rendimentos do portfólio usando a não correlação.
Esta estratégia utiliza vários indicadores técnicos para julgar entradas e saídas, além de estabelecer regras rigorosas de stop loss. Em comparação com um único indicador, a combinação de vários indicadores pode reduzir significativamente os sinais falsos e aumentar a probabilidade de lucro. As regras de stop loss também podem controlar o impacto de cada perda.
/*backtest
start: 2023-10-15 00:00:00
end: 2023-11-14 00:00:00
period: 2h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
// Bollinger Bands: Madrid : 14/SEP/2014 11:07 : 2.0
// This displays the traditional Bollinger Bands, the difference is
// that the 1st and 2nd StdDev are outlined with two colors and two
// different levels, one for each Standard Deviation
strategy(shorttitle='MBB', title='Bollinger Bands', overlay=true, currency=currency.NONE, initial_capital = 1000, default_qty_type = strategy.percent_of_equity, default_qty_value = 100, commission_value = 0.05)
src = input(close)
length = input.int(34, minval=1)
mult = input.float(2.0, minval=0.001, maxval=50)
basis = ta.sma(src, length)
dev = ta.stdev(src, length)
dev2 = mult * dev
upper1 = basis + dev
lower1 = basis - dev
upper2 = basis + dev2
lower2 = basis - dev2
colorBasis = src >= basis ? color.blue : color.orange
pBasis = plot(basis, linewidth=2, color=colorBasis)
pUpper1 = plot(upper1, color=color.new(color.blue, 0), style=plot.style_circles)
pUpper2 = plot(upper2, color=color.new(color.blue, 0))
pLower1 = plot(lower1, color=color.new(color.orange, 0), style=plot.style_circles)
pLower2 = plot(lower2, color=color.new(color.orange, 0))
fill(pBasis, pUpper2, color=color.new(color.blue, 80))
fill(pUpper1, pUpper2, color=color.new(color.blue, 80))
fill(pBasis, pLower2, color=color.new(color.orange, 80))
fill(pLower1, pLower2, color=color.new(color.orange, 80))
//Strategy code starts here
long_entry = ta.crossover(src, upper1)
short_entry = ta.crossunder(src, lower1)
strategy.entry("Long", strategy.long, when=long_entry)
strategy.entry("Short", strategy.short, when=short_entry)
if long_entry or close < basis
strategy.close("Long", "Long")
if short_entry or close > basis
strategy.close("Short", "Short")
//Calculate RSI
rsiLength = input(14)
rsiValue = ta.rsi(src, rsiLength)
// Define RSI conditions for entering and exiting trades
rsiLong = rsiValue > 70
rsiShort = rsiValue < 30
//Enter long position when RSI crosses above 50 and Bollinger Bands long entry condition is met
strategy.entry("Long", strategy.long, when=long_entry and rsiLong)
//Exit long position when RSI crosses below 50 or Bollinger Bands exit condition is met
strategy.close("Long Exit", when=rsiShort or close < basis)
//Enter short position when RSI crosses below 50 and Bollinger Bands short entry condition is met
strategy.entry("Short", strategy.short, when=short_entry and rsiShort)
//Exit short position when RSI crosses above 50 or Bollinger Bands exit condition is met
strategy.close("Short Exit", when=rsiLong or close > basis)
//Calculate MACD
fastLength = input(12)
slowLength = input(26)
macdLength = input(9)
macdValue = ta.macd(src, fastLength, slowLength, macdLength)
// Define MACD conditions for entering and exiting trades
macdLong = ta.crossover(src, macdLength)
macdShort = ta.crossunder(src, macdLength)
//Enter long position when MACD crosses above signal line and RSI and Bollinger Bands long entry condition is met
strategy.entry("Long", strategy.long, when=long_entry and rsiLong and macdLong)
//Exit long position when MACD crosses below signal line or RSI crosses below 50 or Bollinger Bands exit condition is met
strategy.close("Long Exit", when=macdShort or rsiShort or close < basis)
//Enter short position when MACD crosses below signal line and RSI crosses below 50 and Bollinger Bands short entry condition is met
strategy.entry("Short", strategy.short, when=short_entry and rsiShort and macdShort)
//Exit short position when MACD crosses above signal line or RSI crosses above 50 or Bollinger Bands exit condition is met
strategy.close("Short Exit", when=macdLong or rsiLong or close > basis)