
Trata-se de uma estratégia de acompanhamento de tendências baseada em três médias móveis simples (SMAs). A estratégia usa a relação de cruzamento e posição das médias móveis de 21, 50 e 100 períodos para identificar tendências de mercado e negociar no momento certo. A estratégia opera principalmente em um período de 5 minutos, enquanto recomenda-se a confirmação de tendências com referência a gráficos de 30 minutos.
A estratégia usa um mecanismo de filtragem triplo para identificar os sinais de negociação:
As condições de compra devem ser atendidas ao mesmo tempo:
As condições de venda devem ser:
Sugestões de controle de risco:
Esta é uma estratégia de acompanhamento de tendências com uma estrutura completa e lógica clara. Através do mecanismo de filtragem e confirmação de tendências de três linhas uniformes, é possível reduzir efetivamente os sinais falsos e aumentar a taxa de sucesso das negociações. A estratégia tem boa escalabilidade e pode ser ajustada de forma otimizada para diferentes condições de mercado.
/*backtest
start: 2024-02-21 00:00:00
end: 2024-06-08 00:00:00
period: 1h
basePeriod: 1h
exchanges: [{"eid":"Binance","currency":"ETH_USDT"}]
*/
// This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © Vezpa
//@version=5
strategy("Vezpa's Gold Strategy", overlay=true)
// ======================== MAIN STRATEGY ========================
// Input parameters for the main strategy
fast_length = input.int(21, title="Fast MA Length", minval=1)
slow_length = input.int(50, title="Slow MA Length", minval=1)
trend_filter_length = input.int(100, title="Trend Filter MA Length", minval=1)
// Calculate moving averages for the main strategy
fast_ma = ta.sma(close, fast_length)
slow_ma = ta.sma(close, slow_length)
trend_ma = ta.sma(close, trend_filter_length)
// Plot moving averages
plot(fast_ma, color=color.blue, title="21 MA")
plot(slow_ma, color=color.red, title="50 MA")
plot(trend_ma, color=color.orange, title="100 MA")
// Buy condition: 21 MA crosses above 50 MA AND both are above the 100 MA
if (ta.crossover(fast_ma, slow_ma) and fast_ma > trend_ma and slow_ma > trend_ma)
strategy.entry("Buy", strategy.long)
// Sell condition: 21 MA crosses below 50 MA AND both are below the 100 MA
if (ta.crossunder(fast_ma, slow_ma) and fast_ma < trend_ma and slow_ma < trend_ma)
strategy.close("Buy")
// Plot buy signals as green balloons
plotshape(series=ta.crossover(fast_ma, slow_ma) and fast_ma > trend_ma and slow_ma > trend_ma,
title="Buy Signal",
location=location.belowbar,
color=color.green,
style=shape.labelup,
text="BUY",
textcolor=color.white,
size=size.small,
transp=0)
// Plot sell signals as red balloons
plotshape(series=ta.crossunder(fast_ma, slow_ma) and fast_ma < trend_ma and slow_ma < trend_ma,
title="Sell Signal",
location=location.abovebar,
color=color.red,
style=shape.labeldown,
text="SELL",
textcolor=color.white,
size=size.small,
transp=0)