Stratégie de croisement EMA et RSI

EMA RSI ATR
Date de création: 2024-06-03 11:08:30 Dernière modification: 2024-06-03 11:08:30
Copier: 0 Nombre de clics: 933
1
Suivre
1617
Abonnés

Stratégie de croisement EMA et RSI

Aperçu

La stratégie de croisement entre EMA et RSI permet d’identifier un potentiel signe d’achat ou de vente en combinant les moyennes mobiles de l’indice (EMA) et l’indice relativement faible (RSI). Lorsque les EMA et le RSI se croisent, cela indique que la dynamique du marché peut changer. Par exemple, lorsque les EMA de plus courte durée traversent les EMA de plus longue durée, et que le RSI franchit une barre, cela indique une tendance à la hausse, appelée croisement de bullish.

Principe de stratégie

  1. Calculer la valeur de l’indicateur RSI pour une période donnée et la tracer sur un graphique.
  2. Calculer la valeur de l’indicateur EMA pour une période donnée et la tracer sur un graphique.
  3. Quand le prix est inférieur à l’EMA et que le RSI est inférieur à 20, il est considéré comme un signal d’achat; quand le prix est supérieur à l’EMA et que le RSI est supérieur à 80, il est considéré comme un signal de vente.
  4. Lorsqu’un signal d’achat apparaît et que le prix de clôture du fil de clôture est supérieur à celui du fil de clôture précédent, ouvrez une position plus élevée. Lorsqu’un signal de vente apparaît et que le prix de clôture du fil de clôture est inférieur au fil de clôture précédent, ouvrez une position vide.
  5. Le prix d’arrêt est calculé en utilisant l’amplitude de fluctuation réelle moyenne (ATR). Le prix d’arrêt est le prix d’ouverture moins le prix d’ouverture (ATR + longueur de l’entité de la chaîne d’approvisionnement). Le prix d’ouverture est le prix d’ouverture plus le prix d’arrêt (ATR + longueur de la chaîne d’approvisionnement).*(ATR + longueur de l’entité du câble))

Avantages stratégiques

  1. La combinaison de l’indicateur de suivi des tendances EMA et de l’indicateur de dynamique RSI permet de juger plus globalement de l’évolution du marché.
  2. Les signaux de trading peuvent être émis dès le début de la formation d’une tendance, ce qui permet de saisir les opportunités de tendance le plus tôt possible.
  3. L’ATR est utilisé pour ajuster dynamiquement les arrêts et les freins afin de mieux s’adapter aux fluctuations du marché.
  4. Le rapport entre la position du prix et celle de l’indicateur ainsi que la forme des lignes de câblage sont pris en compte, ce qui améliore la fiabilité du signal.

Risque stratégique

  1. L’EMA et le RSI ont une certaine latence, ce qui peut se produire lorsque les indicateurs se croisent et que les prix ne se retournent pas immédiatement, ce qui entraîne de faux signaux.
  2. L’indicateur RSI produit fréquemment des signaux de croisement dans les marchés instables, ce qui peut entraîner une survente des transactions.
  3. Les seuils RSI fixes peuvent ne pas s’appliquer à toutes les conditions du marché et doivent être ajustés en fonction des caractéristiques du marché.
  4. La stratégie repose fortement sur l’ATR pour calculer les stop-loss et les stops, mais les valeurs d’ATR peuvent être faussées par des fluctuations soudaines et importantes des prix.

Orientation de l’optimisation de la stratégie

  1. Optimiser les paramètres EMA et RSI pour trouver la combinaison de paramètres la plus adaptée au marché actuel.
  2. D’autres conditions de filtrage sont ajoutées dans les marchés en tremblement de terre, telles que les variations du volume des transactions, la volatilité, etc., afin de filtrer les faux signaux fréquents.
  3. Les valeurs du RSI sont ajustées de manière à s’adapter aux différentes conditions du marché.
  4. Utilisez plusieurs méthodes d’arrêt et d’arrêt, telles que l’arrêt d’arrêt basé sur le support de la résistance, ou l’arrêt mobile combiné avec la direction de la tendance, pour améliorer la capacité de contrôle des risques.
  5. Ajout d’un module de gestion des positions permettant d’ajuster la taille des positions de chaque transaction en fonction des fluctuations du marché et de l’état du risque du compte.

Résumer

La stratégie de croisement entre EMA et RSI est une stratégie de suivi de tendance simple et facile à utiliser, qui permet de juger de manière globale de la direction du marché en combinant les deux dimensions de la tendance et de la dynamique. En même temps, la stratégie utilise des conditions de filtrage et une méthode de stop-loss dynamique pour améliorer la qualité du signal et la capacité de contrôle des risques. Cependant, la stratégie présente également des limites, telles que le retard de l’indicateur, la fréquence des transactions, etc.

Code source de la stratégie
/*backtest
start: 2023-05-28 00:00:00
end: 2024-06-02 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © pritom980

//@version=5
strategy("EMA RSI Cross", overlay=true, margin_long=100, margin_short=100)

// add RSI

rsi_period = input.int(7,"RSI Period")
rsi_val =  ta.rsi(close[1],rsi_period)
plot(rsi_val, color=color.blue, linewidth=2, title="RSI")

buyRsiFlag = rsi_val < 20
sellRsiFlag = rsi_val > 80

// add EMA
ema = ta.ema(close, 50)
plot(ema, color=color.red, linewidth=2, title="EMA")


// check buy

// buy when the price is below ema 
buyFlag = ema > close ? true : false

// sell when the price is above ema
sellFlag = ema < close ? true : false


bgcolor(buyFlag and buyRsiFlag ? color.green : na )
bgcolor(sellFlag and sellRsiFlag ? color.red : na )




// Check if current candle's body is bigger than previous candle's body and of opposite color
is_body_bigger_long = math.abs(close - open) > math.abs(close[1] - open[1]) and close > open != close[1] > open[1]


greenCandle = close > close[1]
redCandle = close < close[1]
// Mark the candle
bgcolor(is_body_bigger_long and greenCandle and buyFlag  ? color.blue : na, transp=70)


// ENTRY ---------------------

// Input for ATR period
atr_length = input(14, title="ATR Length")

// Calculate ATR
atr_value = ta.atr(atr_length)

// Calculate stop loss and take profit levels
candleBody = math.abs(close-open)
slDist = atr_value + candleBody

stop_loss_long = close - slDist
take_profit_long = close + (1.2 * slDist) 


stop_loss_short = high + slDist
take_profit_short = high - (1.2 * slDist)

// Entry and exit conditions
if (buyFlag and buyRsiFlag  and strategy.opentrades >= 0 and greenCandle)
    strategy.entry("Long", strategy.long)
    strategy.exit("Take Profit/Stop Loss", "Long", stop=stop_loss_long, limit=take_profit_long)

// Entry and exit conditions
if (sellFlag and sellRsiFlag   and strategy.opentrades <= 0 and redCandle)
    strategy.entry("Short", strategy.short)
    strategy.exit("Take Profit/Stop Loss", "Short", stop=stop_loss_short, limit=take_profit_short)