RSI et moyenne mobile tendance croisée suivant la stratégie

Auteur:ChaoZhang est là., Date: 2023-12-13 17h50: 34
Les étiquettes:

img

Résumé

Cette stratégie utilise l'indicateur RSI et les moyennes mobiles rapides / lentes pour déterminer les points d'entrée et de sortie. Elle est longue lorsque le RSI augmente de 5 points et est inférieur à 70; et lorsque le MA de 9 jours dépasse le MA de 50 jours. Elle sort lorsque le MA de 50 jours dépasse le MA de 9 jours.

La logique de la stratégie

La stratégie utilise principalement une combinaison de l'indicateur RSI et des moyennes mobiles. L'indicateur RSI montre si un stock ou une crypto-monnaie est suracheté ou survendu. Les valeurs inférieures à 30 sont considérées comme survendues tandis que les valeurs supérieures à 70 sont considérées comme surachetées.

Les moyennes mobiles sont largement utilisées pour identifier la direction de la tendance. La moyenne mobile rapide réagit plus rapidement aux changements de prix tandis que le MA lent filtre les fausses ruptures. Lorsque le MA rapide traverse au-dessus du MA lent, une tendance haussière commence. L'opposé signale une tendance baissière. Cette stratégie utilise les MA de 9 et 50 jours et leurs croisements pour déterminer la tendance et les entrées / sorties.

Analyse des avantages

Le plus grand avantage de cette stratégie est l'utilisation de l'indice de volatilité pour éviter d'acheter à des niveaux de surachat extrêmes et l'utilisation de la combinaison MAs rapide/lente pour filtrer les fausses ruptures et bloquer la direction de la tendance pour une rentabilité plus élevée.

La condition supplémentaire d'une augmentation de 5 points RSI consécutifs empêche les achats inutiles dans les zones de surachat.

Risques et prévention

Le risque le plus important réside dans le retard des signaux de l'indicateur de volatilité et de l'indicateur de volatilité lors de fortes fluctuations de prix, ce qui entraîne des achats en hausse ou des ventes en baisse.

Pour éviter cela, un MA plus rapide est utilisé pour capter les changements de prix plus rapidement et réduire le décalage.

Directions d'optimisation

Pistes d'optimisation possibles:

  1. Périodes d'essai RSI pour les paramètres optimaux

  2. Testez plus de combinaisons MA rapide/lente pour une meilleure filtration

  3. Optimiser le dimensionnement de la position avec différents paramètres

  4. Ajouter des conditions de stop-loss pour verrouiller les bénéfices

Conclusion

Dans l'ensemble, cette stratégie est bien adaptée au trading de tendance. Elle évite les zones de surachat/survente avec RSI et utilise des MAs rapides/lents pour la détection de tendance et de support/résistance.


/*backtest
start: 2023-11-12 00:00:00
end: 2023-12-12 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © Coinrule

//@version=5
strategy("RSI with Slow and Fast MA Crossing Strategy (by Coinrule)",
         overlay=true,
         initial_capital=10000,
         process_orders_on_close=true,
         default_qty_type=strategy.percent_of_equity,
         default_qty_value=30,
         commission_type=strategy.commission.percent,
         commission_value=0.1)

showDate = input(defval=true, title='Show Date Range')
timePeriod = time >= timestamp(syminfo.timezone, 2020, 1, 1, 0, 0)
notInTrade = strategy.position_size <= 0


// RSI
length = input(14)
vrsi = ta.rsi(close, length)

// Moving  Averages for Buy Condition
buyFastEMA = ta.ema(close, 9)
buySlowEMA = ta.ema(close, 50)
buyCondition1 = ta.crossover(buyFastEMA, buySlowEMA)


increase = 5
if ((vrsi > vrsi[1]+increase) and buyCondition1 and vrsi < 70 and timePeriod)
    strategy.entry("Long", strategy.long)


// Moving  Averages for Sell Condition
sellFastEMA = ta.ema(close, 9)
sellSlowEMA = ta.ema(close, 50)
plot(request.security(syminfo.tickerid, "60", sellFastEMA), color = color.blue)
plot(request.security(syminfo.tickerid, "60", sellSlowEMA), color = color.green)


condition = ta.crossover(sellSlowEMA, sellFastEMA)
//sellCondition1 = request.security(syminfo.tickerid, "60", condition)

strategy.close('Long', when = condition and timePeriod)






Plus de