Esta estratégia utiliza quatro linhas EMA com parâmetros diferentes para formar um sistema claro de seguimento de tendências para negociação mecânica.
Estratégia lógica:
Calcular dois pares de EMA rápidos e lentos, normalmente 72 e 44 períodos.
Faça long quando a EMA rápida cruzar acima da EMA lenta.
Faça curto quando a EMA rápida cruzar abaixo da EMA lenta.
Use cores para marcar sinais de compra e venda.
Testes de retorno durante um período especificado para executar sinais.
Vantagens:
Quatro EMAs formam padrões de tendência claros.
As combinações de EMA rápida/lenta rastreiam efetivamente as tendências de médio e longo prazo.
As regras de cruzamento são simples e evitam excesso de troca.
Riscos:
O atraso da EMA pode causar mudanças de tendência perdidas.
Sem paradas significa perdas ilimitadas em transações individuais.
Os parâmetros deficientes podem causar sinais excessivos ou inconsistências.
Em resumo, a estratégia de cruzamento quadruplo da EMA usa pares de EMA rápidos / lentos para negociação de tendências mecânicas. A interface visual é intuitiva para os traders visuais. Mas o atraso e a falta de paradas significam que a gestão prudente do risco ainda é necessária para ganhos constantes a longo prazo.
/*backtest start: 2023-08-12 00:00:00 end: 2023-09-11 00:00:00 period: 2h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ // strategy(title = "Cuathro EMA Strategy", shorttitle = "Cuathro EMA",initial_capital=1000, commission_value=0.2, commission_type =strategy.commission.percent, default_qty_value=100 , overlay = false, pyramiding=10, default_qty_type=strategy.percent_of_equity) //@Moneros 2017 // based on OCC by @JayRogers emaSlowPeriod = input(defval = 44, title = "EMA Slow, always < EMA Fast - low short term, high long term ", minval = 1) emaFastPeriod = input(defval = 72, title = "EMA Fast - low short term, high long term ", minval = 1) len = input(defval = 14, title = "Period", minval = 1) res = input(title="Resolution - not lower than chart", defval="120") closeSeries = request.security(syminfo.tickerid, res, 2 * ta.ema(close, len) - ta.ema(ta.ema(close, len), len) ) openSeries = request.security(syminfo.tickerid,res, 2 * ta.ema(close[1], len) - ta.ema(ta.ema(close[1], len), len) ) slowema = ta.ema(closeSeries - openSeries,emaSlowPeriod) fastema = ta.ema(closeSeries - openSeries,emaFastPeriod) plot(slowema, color=color.blue) plot(fastema,color=color.red) bgcolor(slowema< fastema ? color.red : na, transp=90) bgcolor(slowema> fastema ? color.blue : na, transp=90) bgcolor(ta.crossover(slowema, fastema) ? color.blue : na, transp=40) bgcolor(ta.crossunder(slowema, fastema) ? color.red : na, transp=40) strategy.order("BUY", strategy.long, 1, when = ta.crossover(slowema, fastema)) strategy.order("SELL", strategy.short, 1, when = ta.crossunder(slowema, fastema))