Stratégie de négociation des indicateurs quadruples de la EMA

Auteur:ChaoZhang est là., Date: 12 septembre 2023 à 14:51:28
Les étiquettes:

Cette stratégie utilise quatre lignes EMA avec des paramètres différents pour former un système clair de suivi des tendances pour le trading mécanique.

La logique de la stratégie:

  1. Calculer deux paires d'EMA rapide et lente, généralement 72 et 44 périodes.

  2. Passez long lorsque l'EMA rapide dépasse l'EMA lente.

  3. Faire du short lorsque l'EMA rapide dépasse l'EMA lente.

  4. Utilisez des couleurs pour marquer les signaux d'achat et de vente.

  5. Test de retour sur une période spécifiée pour exécuter des signaux.

Les avantages:

  1. Les quatre EMA forment des tendances claires.

  2. Les combinaisons EMA rapide/lente suivent efficacement les tendances à moyen terme.

  3. Les règles de croisement sont simples et évitent de trop négocier.

Les risques:

  1. Le décalage EMA peut entraîner des virages de tendance manqués.

  2. Aucun arrêt signifie une perte illimitée sur les transactions uniques.

  3. Des paramètres médiocres peuvent provoquer des signaux excessifs ou des incohérences.

En résumé, la stratégie quadruple EMA crossover utilise des paires EMA rapide/lente pour le trading de tendance mécanique. L'interface visuelle est intuitive pour les traders visuels.


/*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)) 


Plus de