Estratégia de negociação quantitativa baseada em bandas de média móvel de 5 dias e sinais de compra/venda GBS

Autora:ChaoZhang, Data: 2024-02-05 10:50:35
Tags:

img

Resumo

Esta estratégia combina a faixa média móvel de 5 dias e os sinais de compra/venda do GBS para identificar a direção da tendência e gerar sinais de negociação. A faixa média móvel é usada para julgar a direção da tendência e os principais níveis de suporte/resistência, enquanto os sinais de compra/venda do GBS são usados para encontrar o momento preciso de entrada sob a direção da tendência. Esta estratégia é adequada para negociação de tendência de médio prazo e pode alcançar retornos excessivos em mercados de faixa.

Princípios de estratégia

  1. Calcular a média móvel simples dos preços altos e baixos de 5 dias para obter a faixa média móvel de 5 dias
  2. Quando o preço de fechamento atravessa a faixa da média móvel, indica uma inversão de tendência
  3. Quando é identificada uma tendência ascendente, as posições longas são tomadas se os sinais de compra do GBS forem acionados; quando é identificada uma tendência descendente, as posições curtas são tomadas se os sinais de venda do GBS forem acionados
  4. Mecanismos de saída de stop loss/take profit, saída quando o drawdown exceder um determinado limiar

Vantagens da estratégia

  1. A faixa da média móvel julga com precisão a principal direcção da tendência
  2. Os sinais de compra/venda da GBS têm uma taxa de ganhos relativamente elevada
  3. O mecanismo de stop loss controla eficazmente os riscos e limita as perdas

Riscos e soluções

  1. Os falsos breakouts podem ocorrer com frequência em mercados de gama, causando erros de negociação
    • Solução: alargar a faixa da média móvel para garantir operações apenas durante tendências claras
  2. Riscos baseados num único indicador
    • Solução: adicionar a validação de outros indicadores, por exemplo MACD, RSI, para evitar a ausência de sinais de reversão
  3. Riscos de sobreajuste de ensaio posterior
    • Solução: alargar o prazo de backtest, comparar os resultados entre diferentes produtos e parâmetros

Orientações para a otimização da estratégia

  1. Optimização de parâmetros para encontrar combinações ótimas de parâmetros
  2. Adicionar sinais de validação de outros indicadores
  3. Desenvolver mecanismos de média móvel adaptativa
  4. Ajustar o nível de stop loss com base nas condições de mercado
  5. Adicionar algoritmos de aprendizagem de máquina para otimizar automaticamente a estratégia

Conclusão

Esta estratégia integra a faixa média móvel e os sinais de compra/venda do GBS, operando com alta confiança após identificar uma direção de tendência clara para filtrar o ruído do mercado. Pode bloquear lucros de médio prazo e sair em tempo hábil. A estratégia é simples e eficiente na utilização do capital, proporcionando lucros estáveis para os comerciantes quant.


/*backtest
start: 2024-01-05 00:00:00
end: 2024-02-04 00:00:00
period: 4h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("5MABAND + GBS Buy & Sell Strategy", overlay=true)

// Command 1 - 5MABAND Calculation
length = input(5, title="Number of Candles for Average")
avgHigh = ta.sma(high, length)
avgLow = ta.sma(low, length)

// Plotting 5MABAND Bands
plot(avgHigh, color=color.green, title="5MABAND High Line", linewidth=1)
plot(avgLow, color=color.red, title="5MABAND Low Line", linewidth=1)

// Command 2 - GBS concept Buy Entry
gbsBuyCondition = close > open and high - close < close - open and open - low < close - open and close - open > close[1] - open[1] and close - open > close[2] - open[2] and close - open > close[3] - open[3] and close[1] < avgHigh and close[2] < avgHigh and close[3] < avgHigh and open[1] < avgHigh and open[2] < avgHigh and open[3] < avgHigh

// Command 3 - GBS Concept Sell Entry
gbsSellCondition = open - close > open[1] - close[1] and open - close > open[2] - close[2] and open - close > open[3] - close[3] and open[1] > avgLow and open[2] > avgLow and open[3] > avgLow and open - close > open - low and open - close > high - open

// Command 6 - 5MABAND Exit Trigger
exitTriggerCandle_5MABAND_Buy = low < avgLow
exitTriggerCandle_5MABAND_Sell = high > avgHigh

// Exit Signals for 5MABAND
exitBuySignal_5MABAND = close < avgLow
exitSellSignal_5MABAND = close > avgHigh

// Execute Buy and Sell Orders
strategy.entry("Buy", strategy.long, when = gbsBuyCondition)
strategy.close("Buy", when = exitBuySignal_5MABAND)

strategy.entry("Sell", strategy.short, when = gbsSellCondition)
strategy.close("Sell", when = exitSellSignal_5MABAND)

// Exit Buy and Sell Orders for 5MABAND
strategy.close("Buy", when = exitTriggerCandle_5MABAND_Buy)
strategy.close("Sell", when = exitTriggerCandle_5MABAND_Sell)


Mais.