Algoritmo de negociação do preço do ouro

Autora:ChaoZhang, Data: 2023-12-13 16:08:12
Tags:

img

Resumo

Este algoritmo negocia ouro com base em sua ação de preço. Ele calcula os preços mais altos e mais baixos dos últimos 20 candelabros para determinar a faixa de flutuação de preços. Ele vai longo quando o preço quebra o preço mais alto do mais recente candelabro e vai curto quando o preço quebra o preço mais baixo do mais recente candelabro. Depois de abrir posições longas ou curtas, ele define os preços de take profit e stop loss.

Princípios

A lógica central deste algoritmo é baseada na teoria do breakout. Ele registra os preços mais altos e mais baixos dos 20 candelabros mais recentes para determinar a faixa de flutuação de preços. Quando o preço excede essa faixa, ele é considerado um breakout e, portanto, um sinal de negociação é acionado. Especificamente, o fluxo do algoritmo é:

  1. Calcular os preços mais altos (máximos) e os preços mais baixos (baixos) dos 20 candelabros mais recentes
  2. Obtenha a faixa de flutuação de preços (priceRange)
  3. Registre o preço mais alto do último candelabro como nível de ruptura (breakoutLevel)
  4. Quando o máximo do último candelabro atravessa o nível de ruptura e o fechamento também atravessa o nível de ruptura, vá longo
  5. Quando o mínimo do último candelabro cai abaixo do nível de ruptura e o fechamento também cai abaixo do nível de ruptura, vá curto
  6. Preços de captação de lucro e de stop loss estabelecidos após a abertura de posições longas ou curtas

Como pode ser visto, os sinais de negociação deste algoritmo vêm de julgamentos de ruptura de preço.

Análise das vantagens

O algoritmo tem as seguintes vantagens:

  1. Simples e claras, fáceis de compreender e implementar
  2. Baseado na ação dos preços, não afectado por outros indicadores
  3. Sinais claros de fuga, tempo de entrada fácil de entender
  4. Pode filtrar significativamente o ruído do mercado e evitar ficar preso
  5. Atividade de avaliação de risco

Em geral, a ideia central deste algoritmo é clara e lógica. É simples de implementar e fácil de entender o tempo de entrada. Também permite controlar a perda de uma única negociação. Assim, é uma estratégia de negociação quantitativa com forte praticidade.

Análise de riscos

O algoritmo também tem alguns riscos:

  1. Alta probabilidade de falha da fuga, risco de perda de lucros
  2. Compreensão inadequada do tempo de fuga, pode entrar muito cedo ou muito tarde
  3. Relativamente grandes saques, necessitam de certa resistência psicológica
  4. Configurações desproporcionadas de lucro e stop loss, podem perder lucros maiores ou assumir perdas maiores

Para controlar e otimizar estes riscos, podem ser tomadas as seguintes medidas:

  1. Confirmar a ruptura com outros indicadores para aumentar a fiabilidade
  2. Otimizar parâmetros para melhorar a precisão do tempo de entrada
  3. Ajustar o dimensionamento das posições para reduzir o risco de perda de uma única transação
  4. Ajuste dinâmico dos preços de tomada de lucro e de stop loss

Orientações de otimização

O algoritmo pode ser otimizado nos seguintes aspectos:

  1. Combinar com outros indicadoresAs médias móveis, as bandas de Bollinger, etc., podem ser introduzidas para confirmar duas vezes os sinais de ruptura e aumentar a confiabilidade.

  2. Optimização de parâmetros. Diferentes combinações de parâmetros podem ser testadas para otimizar o comprimento do período de ruptura e encontrar configurações de parâmetros mais confiáveis.

  3. Optimização de lucro e stop lossAjuste dinâmico da distância de tomada de lucro e stop loss com base na volatilidade etc.

  4. Optimização do dimensionamento da posição. Otimizar o algoritmo de dimensionamento de posições para reduzir o impacto da perda de um único negócio.

  5. Aprendizagem de máquinaAprenda a partir de uma grande quantidade de dados históricos para encontrar automaticamente melhores combinações de parâmetros.

As otimizações acima podem melhorar ainda mais a estabilidade, a taxa de vitória e a lucratividade do algoritmo.

Conclusão

O algoritmo de negociação de ouro gera sinais de negociação com base na ação do preço e na teoria do breakout. A ideia é simples e clara, fácil de implementar e altamente prática. Enquanto isso, também tem alguns riscos e precisa de otimização adicional para melhorar a estabilidade e lucratividade.


/*backtest
start: 2022-12-06 00:00:00
end: 2023-12-12 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("XAUUSD Price Action Strategy", overlay=true)

// Define input parameters
takeProfit = input(500, "Take Profit")
stopLoss = input(200, "Stop Loss")

// Calculate price action
highs = ta.highest(high, 20)
lows = ta.lowest(low, 20)
priceRange = highs - lows
breakoutLevel = highs[1]

// Define conditions for long and short trades
longCondition = high > breakoutLevel and close > highs[1]
shortCondition = low < breakoutLevel and close < lows[1]

// Execute long and short trades with take profit and stop loss
if longCondition
    strategy.entry("Long", strategy.long)
    strategy.exit("Long Exit", "Long", limit = close + takeProfit, stop = close - stopLoss)

if shortCondition
    strategy.entry("Short", strategy.short)
    strategy.exit("Short Exit", "Short", limit = close - takeProfit, stop = close + stopLoss)

// Plot breakout level
plot(breakoutLevel, color=color.blue, title="Breakout Level")

// Highlight long and short trade signals on the chart
bgcolor(longCondition ? color.green : na, transp=80)
bgcolor(shortCondition ? color.red : na, transp=80)

Mais.