
A estratégia é um sistema de negociação baseado na média móvel de 5 dias do índice (EMA) e é executada principalmente por meio da identificação de formas de desvio entre o preço e a linha média e da combinação de sinais de ruptura. A estratégia usa um mecanismo de execução imediata, sem a necessidade de esperar a confirmação do fechamento da linha K, o que aumenta a eficiência da negociação. O sistema também integra um mecanismo de gestão de stop loss dinâmico com um risco de retorno de 3 vezes o risco.
A lógica central da estratégia baseia-se nos seguintes elementos-chave:
Esta é uma estratégia de negociação integrada que combina a média curta, o desvio de forma e os sinais de ruptura. A eficiência da estratégia é aumentada pelo mecanismo de execução imediata, enquanto o risco é controlado por métodos de gerenciamento de risco dinâmicos. Embora haja alguns riscos potenciais, a estratégia tem um bom valor prático com medidas de otimização e gerenciamento de risco adequadas.
/*backtest
start: 2024-02-20 00:00:00
end: 2025-01-05 00:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Binance","currency":"DOGE_USDT"}]
*/
//@version=5
strategy("5 EMA (Instant Execution)", overlay=true, margin_long=100, margin_short=100)
// Input parameters
ema_length = input.int(5)
target_multiplier = input.float(3.0)
// Calculate 5 EMA
ema_5 = ta.ema(close, ema_length)
// Detect divergence candles
divergence_buy = (high < ema_5) and (low < ema_5) // Below 5 EMA for buy
divergence_sell = (high > ema_5) and (low > ema_5) // Above 5 EMA for sell
// Store trigger levels dynamically
var float trigger_high = na
var float trigger_low = na
// Set trigger levels when divergence occurs
if divergence_buy
trigger_high := high
if divergence_sell
trigger_low := low
// Check real-time price break (no candle close waiting)
buy_signal = not na(trigger_high) and high >= trigger_high
sell_signal = not na(trigger_low) and low <= trigger_low
// Execute trades instantly
if buy_signal
strategy.entry("Long", strategy.long)
candle_size = trigger_high - low
strategy.exit("Long Exit", "Long", limit=trigger_high + (candle_size * target_multiplier), stop=low)
trigger_high := na // Reset trigger
if sell_signal
strategy.entry("Short", strategy.short)
candle_size = high - trigger_low
strategy.exit("Short Exit", "Short", limit=trigger_low - (candle_size * target_multiplier), stop=high)
trigger_low := na // Reset trigger
// Plot signals
plotshape(buy_signal, style=shape.triangleup, location=location.belowbar, color=color.green, size=size.small)
plotshape(sell_signal, style=shape.triangledown, location=location.abovebar, color=color.red, size=size.small)
// Plot 5 EMA
plot(ema_5, color=color.blue, linewidth=2)
// Alert conditions
alertcondition(buy_signal, message="BUY triggered - High of divergence candle broken instantly")
alertcondition(sell_signal, message="SELL triggered - Low of divergence candle broken instantly")