
A estratégia de linha curta de cruz de linha dupla é uma estratégia de negociação de linha curta simples e eficiente. A estratégia usa o sinal de cruz de preços com a média móvel como um sinal de compra e venda, capturando os movimentos tendenciais dos preços dentro da linha curta.
A estratégia de dupla equilíbrio de linha cruzada usa duas médias móveis de diferentes períodos, uma MA de curto prazo e uma MA de longo prazo. Gera um sinal de compra quando a MA de curto prazo quebra a MA de longo prazo a partir da direção inferior; Gera um sinal de venda quando a MA de curto prazo cai da direção superior para a MA de longo prazo.
A estratégia define o comprimento do período de tempo de duração da variável length, designando o MA como 50, e define o price como o preço de fechamento, calcula o valor da linha MA de comprimento, e o guarda na variável ma. Define bcond para determinar se o price é maior do que o valor de ma, e se for bcount adicione 1, caso contrário retorna a zero. Se bcond acionar várias vezes consecutivas as barras de confirmação (confirmBars) (default 2), gera um sinal de compra.
Para filtrar parte do sinal inválido, a estratégia adiciona três condições de filtragem clc, clc0 e clc1. Estas três condições determinam a relação entre o tamanho do preço de fechamento do ciclo atual e o tamanho do preço de fechamento do ciclo atual e o tamanho do preço de abertura, permitindo a geração de sinais se forem simultaneamente satisfeitas.
Por fim, quando o preço volta a cair para cima ou volta a cair para baixo, liquide as posições em excesso ou em aberto correspondentes.
Para reduzir o risco, pode-se considerar o ajuste do parâmetro da linha média de acordo com a dinâmica da volatilidade do mercado; também pode-se adotar um stop loss ou um stop loss percentual, permitindo que o ponto de parada seja ajustado com flexibilidade.
A estratégia pode ser melhorada em vários aspectos:
Optimizar os parâmetros do sistema de mediana, como ajustar o comprimento da mediana de acordo com a dinâmica de indicadores como a volatilidade do mercado.
Adicionar condições de filtragem adicionais, como aumento de volume de transação, para melhorar a qualidade do sinal.
Optimizar a estratégia de parada de perdas, usando o método de parada flutuante ou percentual, para reduzir a probabilidade de parada prematura.
Em combinação com outros indicadores, como MACD, RSI, etc., a verificação de múltiplos fatores aumenta a eficácia do sinal.
Aumentar as estratégias de gestão de risco automáticas, como o ajuste dinâmico do tamanho da posição e o controle de perdas individuais.
A adição de métodos de aprendizagem de máquina para os sinais de compra e venda permite a criação de modelos de julgamento de sinais mais precisos.
A estratégia de linha curta de duplo equilíbrio é uma estratégia de negociação de linha curta muito prática, com vantagens como a simplicidade de operação e a facilidade de implementação. No entanto, é necessário ter em conta o controle de falsos sinais de mercados turbulentos e fazer melhorias como a otimização de parâmetros dinâmicos para que a estratégia seja mais eficaz.
/*backtest
start: 2023-09-29 00:00:00
end: 2023-10-29 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
strategy("MovingAvg Cross", overlay=true)
length = input(50)
confirmBars = input(2)
price = close
ma = sma(price, length)
bcond = price > ma
bcount = 0
bcount := bcond ? nz(bcount[1]) + 1 : 0
clc=close[0]>close[1]
clc0=close[0]>open[0]
clc1=close[1]>open[1]
if clc and clc0 and clc1 and (bcount == confirmBars)
strategy.entry("buy", strategy.long)
scond = price < ma
scount = 0
scount := scond ? nz(scount[1]) + 1 : 0
csc=close[0]<close[1]
csc0=close[0]<open[0]
csc1=close[1]<open[1]
if csc and csc0 and csc1 and (scount == confirmBars)
strategy.entry("sell", strategy.short)
strategy.close("buy", when=scond)
strategy.close("sell",when=bcond)
plot(ma, color=color.red)
//plot(strategy.equity, title="equity", color=color.red, linewidth=2, style=plot.style_areabr)