
O Dual Moving Average Price Channel Trading Strategy é uma estratégia de negociação quantitativa que combina o indicador de canal de preço e o indicador de canal de preço. A estratégia determina a direção do canal de preço através da construção de um canal de preço; ao mesmo tempo, a utilização da linha de média determina a tendência de preço para a geração de sinais de negociação.
Os princípios centrais da estratégia de negociação do canal de preços de dupla linha são:
Construir um trajeto ascendente e descendente de preços, formando um canal de preços. Quando o preço sobe, é um sinal de alta e quando o preço desce, é um sinal de baixa.
Calcule a linha média. Quando o preço acima da linha média é uma tendência de alta, o preço abaixo da linha média é uma tendência de baixa.
A combinação de um indicador de canal de preço e um indicador de linha média pode gerar um sinal de negociação mais confiável. As regras específicas são:
A estratégia combina os dois indicadores de canal de preço e linha de equilíbrio, permitindo um julgamento mais preciso da tendência do mercado, filtrando os falsos sinais, com uma certa estabilidade.
A estratégia de negociação de canal de preço de linha dupla tem as seguintes vantagens:
A combinação de dois indicadores, o canal de preço e a linha média, torna os sinais de negociação mais confiáveis e evita a produção de muitos sinais falsos.
Utilizando o canal de preço para determinar o estado do preço, usando a linha média para determinar a tendência do preço, os dois indicadores se verificam mutuamente, mais precisos.
A estratégia de desenho paramétrico, o comprimento da linha média e o comprimento do canal de preço podem ser ajustados com parâmetros para adaptar-se a diferentes variedades e períodos.
A estratégia de sinalização é mais estável, sem oscilações, reduzindo o risco de negociação.
A lógica da estratégia é simples, clara, fácil de entender e fácil de operar no disco.
A estratégia é totalmente baseada em indicadores, sem necessidade de treinamento, com zero dependência de dados, e aplica-se a várias variedades e ciclos.
A estratégia de negociação de um canal de preço de linha dupla também apresenta alguns riscos, principalmente:
A estratégia pode perder a oportunidade de um rápido rompimento do preço, deixando-o sem a capacidade de capturar a tendência de curto prazo.
Quando os preços flutuam perto da trajetória ascendente e descendente, são frequentemente acionados sinais de negociação, aumentando a frequência de negociação.
Se os preços das variedades de futuros flutuam fortemente, a configuração inadequada dos parâmetros do canal de preço também aumenta o risco de negociação.
A estratégia não leva em conta a lógica de stop loss e não consegue controlar o risco de forma eficaz quando os prejuízos aumentam.
A solução para o risco é:
Reduzir adequadamente os ciclos médios, tornando a estratégia mais sensível e capturando tendências de curto prazo.
Aumentar os parâmetros de comprimento do canal de preços, reduzindo os falsos sinais. Ao mesmo tempo, flexibilizar adequadamente as condições de entrada e controlar a frequência de negociação.
Teste de otimização de parâmetros para escolher o parâmetro de canal de preço mais adequado.
Adicionar a lógica de stop loss móvel para reduzir a perda individual.
A estratégia de negociação de um canal de preços de linha dupla ainda tem espaço para ser melhorada:
Em condições de entrada, pode ser combinado com outros indicadores, como MACD, KDJ, etc., para implementar filtragem de vários indicadores, para tornar o sinal mais estável.
Pode-se testar a influência de diferentes parâmetros sobre a eficácia da estratégia, procurando a combinação ideal de parâmetros. Por exemplo, testar diferentes parâmetros de ciclo médio.
Pode ser adicionado um módulo de parada de perda dinâmica. Quando o prejuízo atinge uma certa amplitude, o prejuízo é interrompido e o risco é efetivamente controlado.
Também é possível introduzir modelos de aprendizado de máquina para treinar e otimizar os parâmetros da estratégia usando dados históricos, permitindo o ajuste dinâmico dos parâmetros.
Melhorias mais complexas são a utilização de algoritmos de aprendizagem profunda para extrair características e sinais de julgamento, o uso de redes neurais em vez de indicadores tradicionais, e a inteligência das estratégias.
A estratégia de negociação de canal de preço de dupla linha uniforme, através de julgamento de duplo indicador, forma um sinal de negociação mais estável e confiável. Ao mesmo tempo, a estratégia é projetada de forma paramétrica e pode ser adaptada de forma flexível para diferentes variedades. A estratégia combina os benefícios do canal de preço e da linha uniforme, é relativamente simples e prática, adequada para o mercado de negociação quantificado.
/*backtest
start: 2024-01-11 00:00:00
end: 2024-01-18 00:00:00
period: 1m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
// This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © paparegier
//@version=4
strategy("G-Channel and EMA Strategy", shorttitle="GEMA", overlay=true)
// G-Channel Indicator
length = input(100)
a = 0.0
b = 0.0
a := na(a[1]) ? close : max(close, a[1]) - (a[1] - b[1]) / length
b := na(b[1]) ? close : min(close, b[1]) + (a[1] - b[1]) / length
avg = avg(a, b)
crossup = b[1] < close[1] and b > close
crossdn = a[1] < close[1] and a > close
bullish = barssince(crossdn) <= barssince(crossup)
// EMA Indicator
emaLength = input(20, title="EMA Length")
emaValue = ema(close, emaLength)
// Strategy Conditions
buyCondition = bullish and close < emaValue
sellCondition = not bullish and close > emaValue
// Execute Strategy
strategy.entry("Buy", strategy.long, when=buyCondition)
strategy.entry("Sell", strategy.short, when=sellCondition)
// Plotting
plot(avg, color=color.new(bullish ? color.lime : color.red, 90), linewidth=1, title="G-Channel Average")
plot(emaValue, color=color.rgb(0, 0, 255, 90), linewidth=1, title="EMA")
// Mark Buy and Sell Signals
plotshape(series=buyCondition, title="Buy Signal", color=color.green, style=shape.labelup, text="Buy", size=size.small)
plotshape(series=sellCondition, title="Sell Signal", color=color.red, style=shape.labeldown, text="Sell", size=size.small)