
O algoritmo é baseado na ação do preço do ouro para a negociação. Ele calcula os preços mais altos e mais baixos das últimas 20 linhas K para determinar a amplitude de flutuação do preço. Quando o preço quebra o preço mais alto da linha K mais recente, faz mais; Quando o preço cai abaixo do preço mais baixo da linha K mais recente, fica vazio.
A lógica central deste algoritmo é baseada na teoria das rupturas. Ele registra os preços mais altos e mais baixos das últimas 20 linhas K para determinar o alcance das flutuações de preços. Quando o preço ultrapassa esse alcance, é considerado uma ruptura e, portanto, pode ser negociado.
Como pode ser observado, o sinal de negociação do algoritmo é baseado no julgamento de uma ruptura de preço, e o núcleo é identificar o momento da ruptura de preço.
O algoritmo tem as seguintes vantagens:
Em geral, a ideia central do algoritmo é clara, lógica razoável, implementação simples, fácil de dominar o timing de entrada e controle de perdas individuais, uma estratégia de negociação quantitativa muito prática.
O algoritmo também apresenta alguns riscos:
Os riscos podem ser controlados e otimizados através das seguintes medidas:
O algoritmo pode ser otimizado de várias maneiras:
Combinação com outros indicadoresPode-se introduzir indicadores como médias móveis, linhas de Brin, para uma segunda confirmação de brechas, aumentando a confiabilidade do sinal.
Optimização de parâmetrosPode testar diferentes combinações de parâmetros, otimizar a duração do ciclo de julgamento de ruptura e encontrar configurações de parâmetros que tornam os sinais de negociação mais confiáveis.
Optimização de Stop LossPode ser combinado com indicadores como a taxa de flutuação, ajustando dinamicamente a distância de parada em tempo real.
Otimização da gestão de posiçõesOptimizar o algoritmo de posição e reduzir o impacto de perdas individuais.
Aprendizagem automática◦ Aprender grandes quantidades de dados históricos usando algoritmos de aprendizagem de máquina, procurando automaticamente combinações de parâmetros melhores.
Com essas melhorias, a estabilidade, a vitória e a rentabilidade do algoritmo podem ser ainda melhoradas.
O algoritmo de negociação de ouro baseado em julgamentos de ação de preços, usando a teoria da ruptura para gerar sinais de negociação. A idéia é simples, clara, fácil de implementar e prática. Ao mesmo tempo, também tem um certo risco e precisa de otimização adicional para melhorar a estabilidade e o nível de lucro.
/*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)