
Esta estratégia é uma estratégia de negociação intradiária que combina a média móvel do índice de múltiplos períodos (EMA) e o preço médio ponderado por volume de transação (VWAP). Utiliza principalmente o cruzamento de EMAs de 8 e 21 períodos para gerar sinais de negociação, ao mesmo tempo em que usa EMAs de 55 períodos como filtros de tendência e combina com o VWAP para confirmar a direção de negociação.
Geração de sinais: quando um EMA de 8 ciclos atravessa um EMA de 21 ciclos, gera um sinal de compra; quando um EMA de 8 ciclos atravessa um EMA de 21 ciclos, gera um sinal de venda.
Filtragem de tendência: Use a EMA de 55 ciclos como filtro de tendência. A operação de multitrades só é executada quando o preço está acima da EMA de 55 ciclos; e vice-versa.
Verificação VWAP: O preço de solicitação de sinal de compra está acima do VWAP e o preço de solicitação de sinal de venda está abaixo do VWAP, o que ajuda a garantir que a direção da transação esteja em consonância com o fluxo de capital.
Gerenciamento de risco: a estratégia usa um percentual fixo de stop loss de 0,5% e um percentual fixo de stop loss de 1,5% para controlar o risco de cada transação.
Negociação intra-dia: todas as posições são liquidadas antes do final de cada dia de negociação, evitando o risco de overnight.
Mecanismo de confirmação múltipla: combinação de EMAs de curto, médio e longo prazo, bem como VWAP, aumentando a confiabilidade do sinal de negociação.
Seguimento de tendências: Filtragem de tendências através de EMAs de 55 ciclos, para garantir que a direção do negócio esteja de acordo com a tendência principal.
Controle de Risco: Percentagem fixa de Stop Loss e Stop Loss para controlar o risco de cada transação.
Flexibilidade: os parâmetros da estratégia podem ser ajustados de acordo com diferentes mercados e variedades de negociação.
Negociação durante o dia: evita o risco de posicionamento durante a noite e é adequado para os comerciantes com baixa capacidade de tolerância ao risco.
Frequência de transações: A intersecção de EMAs pode levar a transações excessivas, aumentando os custos das comissões.
Atraso: A EMA é essencialmente um indicador de atraso, que pode gerar sinais de atraso em mercados altamente voláteis.
Falso breakout: Falso breakout pode ocorrer com frequência em mercados horizontais.
Stop-loss fixo: em mercados altamente voláteis, o stop-loss de porcentagem fixa pode causar um disparo prematuro.
Dependência de dados históricos: a eficácia da estratégia pode ser afetada por overmatching, podendo não ser tão boa em mercados futuros quanto os resultados do retrospecto.
Parâmetros dinâmicos: pode-se considerar o ajuste do ciclo EMA e do ciclo de cálculo do VWAP de acordo com a dinâmica da volatilidade do mercado.
Aumento do filtro: introdução de outros indicadores técnicos, como RSI ou MACD, como condições de filtragem adicionais, reduzindo os falsos sinais.
Stop Adaptação: Ajustar a amplitude de parada de acordo com a dinâmica de volatilidade do mercado, como o uso de ATR (Average True Range) para definir a parada.
Filtragem de tempo de negociação: evitar os períodos de alta volatilidade antes da abertura e do fechamento pode ajudar a aumentar a estabilidade da estratégia.
Adição de fatores fundamentais: para otimizar decisões de transação em conjugação com eventos como a publicação de dados econômicos importantes ou resultados financeiros da empresa.
O EMA de múltiplos ciclos combina a estratégia de negociação intradiária de alta taxa de vitória do VWAP com a combinação de vários indicadores técnicos e um rigoroso gerenciamento de risco, com o objetivo de capturar oportunidades de tendência intradiária. O principal benefício da estratégia reside no mecanismo de confirmação múltipla e no rigoroso controle de risco, mas também enfrenta desafios como o excesso de negociação e o atraso de sinais.
/*backtest
start: 2024-08-01 00:00:00
end: 2024-08-31 23:59:59
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("High Win Rate EMA VWAP Strategy with Alerts", overlay=true, default_qty_type=strategy.fixed, default_qty_value=1)
// Inputs
emaShort = input.int(8, title="Short-term EMA", minval=1)
emaLong = input.int(21, title="Long-term EMA", minval=1)
emaTrend = input.int(55, title="Trend EMA", minval=1)
stopLossPerc = input.float(0.5, title="Stop Loss Percentage", minval=0.1, step=0.1)
takeProfitPerc = input.float(1.5, title="Take Profit Percentage", minval=0.1, step=0.1)
// Calculate EMAs and VWAP
shortEMA = ta.ema(close, emaShort)
longEMA = ta.ema(close, emaLong)
trendEMA = ta.ema(close, emaTrend)
vwap = ta.vwap(close)
// Trend Filter: Only trade in the direction of the trend
isBullishTrend = close > trendEMA
isBearishTrend = close < trendEMA
// Generate Buy and Sell Signals with Trend Confirmation
buySignal = ta.crossover(shortEMA, longEMA) and close > vwap and isBullishTrend
sellSignal = ta.crossunder(shortEMA, longEMA) and close < vwap and isBearishTrend
// Strategy Execution
if (buySignal and strategy.opentrades == 0)
strategy.entry("Buy", strategy.long, qty=1)
if (sellSignal and strategy.opentrades == 0)
strategy.entry("Sell", strategy.short, qty=1)
// Stop Loss and Take Profit (Signal-Based)
if (strategy.position_size > 0) // Long position
strategy.exit("Take Profit/Stop Loss Long", from_entry="Buy", stop=strategy.position_avg_price * (1 - stopLossPerc / 100), limit=strategy.position_avg_price * (1 + takeProfitPerc / 100))
if (strategy.position_size < 0) // Short position
strategy.exit("Take Profit/Stop Loss Short", from_entry="Sell", stop=strategy.position_avg_price * (1 + stopLossPerc / 100), limit=strategy.position_avg_price * (1 - takeProfitPerc / 100))
// Close All Trades at End of Day
if (hour == 15 and minute == 59) // Adjust this time according to your market's closing time
strategy.close("Buy")
strategy.close("Sell")
// Plot Buy/Sell Signals on the chart
plotshape(series=buySignal, title="Buy Signal", location=location.belowbar, color=color.green, style=shape.labelup, text="BUY")
plotshape(series=sellSignal, title="Sell Signal", location=location.abovebar, color=color.red, style=shape.labeldown, text="SELL")
// Plot the EMAs and VWAP
plot(shortEMA, color=color.blue, title="Short-term EMA")
plot(longEMA, color=color.orange, title="Long-term EMA")
plot(trendEMA, color=color.green, title="Trend EMA")
plot(vwap, color=color.purple, title="VWAP", linewidth=2)
// Alert Conditions
alertcondition(buySignal, title="Buy Alert", message="Buy Signal Triggered")
alertcondition(sellSignal, title="Sell Alert", message="Sell Signal Triggered")