
A estratégia usa o sinal de cruzamento da média móvel do índice (EMA) para capturar a mudança de dinâmica dos preços. Comparando o EMA de curto prazo com o EMA de longo prazo, quando o EMA de curto prazo atravessa o EMA de longo prazo, um sinal de compra é produzido, o que, por sua vez, gera um sinal de venda. A estratégia introduz um mecanismo de confirmação de atraso do sinal de negociação para garantir que o sinal de cruzamento seja confirmado e a negociação seja executada, aumentando assim a confiabilidade do sinal.
O núcleo da estratégia é o uso de EMAs de diferentes períodos para capturar a dinâmica dos preços. A EMA é um indicador de acompanhamento de tendências, mais sensível às mudanças de preços. Quando a curta EMA atravessa a EMA de longo prazo, indica um aumento no preço, gerando um sinal de compra; Quando a curta EMA atravessa a EMA de longo prazo, indica um aumento no preço, gerando um sinal de venda.
A estratégia introduziu um mecanismo de confirmação de atraso de um sinal de negociação, onde o preço de fechamento da linha K que está prestes a gerar o sinal é o preço de ação da negociação, e é adiado até a próxima linha K. Isso garante a confirmação do sinal cruzado, aumenta a confiabilidade do sinal e evita a ocorrência frequente de falsas negociações de sinais.
A estratégia baseia-se em EMAs cruzadas e mecanismos de confirmação de atraso para capturar mudanças dinâmicas de preços de maneira simples e eficaz. A lógica da estratégia é clara, fácil de implementar e otimizar. Mas também há riscos como sensibilidade a parâmetros, mercado de choque e reversão de tendência.
/*backtest
start: 2023-05-22 00:00:00
end: 2024-05-27 00:00:00
period: 1d
basePeriod: 1h
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/
// © anshchaubey1373
//@version=5
strategy("EMA Crossover Strategy", overlay=true)
// Define the EMA lengths
shortEmaLength = 10
longEmaLength = 21
// Calculate the EMAs
shortEma = ta.ema(close, shortEmaLength)
longEma = ta.ema(close, longEmaLength)
// Plot the EMAs
plot(shortEma, title="10 EMA", color=color.blue)
plot(longEma, title="21 EMA", color=color.red)
// Generate buy and sell signals
longCondition = ta.crossover(shortEma, longEma)
shortCondition = ta.crossunder(shortEma, longEma)
// Delay the signal by one bar
longSignal = ta.valuewhen(longCondition, close, 1)
shortSignal = ta.valuewhen(shortCondition, close, 1)
// Plot buy and sell signals
plotshape(series=longCondition[1], location=location.belowbar, color=color.green, style=shape.labelup, text="BUY")
plotshape(series=shortCondition[1], location=location.abovebar, color=color.red, style=shape.labeldown, text="SELL")
// Strategy logic for entering positions
if (longCondition[1])
strategy.entry("Long", strategy.long)
if (shortCondition[1])
strategy.entry("Short", strategy.short)