Stratégie de croisement de moyenne mobile axiale RSI


Date de création: 2023-11-23 16:45:55 Dernière modification: 2023-11-23 16:45:55
Copier: 2 Nombre de clics: 751
1
Suivre
1617
Abonnés

Stratégie de croisement de moyenne mobile axiale RSI

Aperçu

La stratégie de croisement de la moyenne axiale du RSI consiste à calculer le RSI et sa moyenne mobile simple et à observer les deux fourches dorées pour juger de l’entrée et de la sortie. Cette stratégie est combinée à la résistance au support ajouté à la moyenne axiale du RSI par la bande de Brin.

Principe de stratégie

La stratégie commence par calculer le RSI à 14 jours, puis la moyenne mobile simple à 8 jours de l’indicateur RSI. Elle génère un signal d’achat lorsque l’indicateur RSI franchit sa moyenne mobile de bas en haut; elle génère un signal de vente lorsque l’indicateur RSI franchit sa moyenne mobile de haut en bas.

En même temps, la stratégie augmente la courbe de Brin sur la moyenne axiale du RSI. La courbe de Brin détermine si la moyenne axiale du RSI est déjà relativement surchargée en calculant l’écart standard pour éviter d’acheter des hauts et de vendre des bas.

Analyse des avantages

La stratégie de croisement de la moyenne axiale du RSI, combinant l’indicateur de tendance RSI et l’indicateur de progression de la courbe avec la moyenne mobile, permet de juger efficacement la tendance du marché et la randomisation. La moyenne arithmétique de l’indicateur RSI permet de mieux lisser l’impact des fluctuations des prix sur le signal.

Les bandes de bourinage ajoutées à cette stratégie utilisent le principe de l’écart-type, permettant d’ajuster automatiquement la largeur des hauts et des bas, ce qui prévient efficacement les perturbations des signaux de négociation. Lorsque les bandes de bourinage se resserrent, les changements s’atténuent, ce qui est approprié pour la recherche d’opportunités de reprise; et lorsque les bandes de bourinage se dilatent, ce qui indique une période de forte volatilité, ce qui est approprié pour suivre la tendance.

Analyse des risques

Le plus grand risque de la stratégie de croisement de la moyenne axiale du RSI réside dans le retard de l’indicateur RSI et de la moyenne mobile elle-même. Lorsque des conditions rapides surviennent, le calcul de l’indicateur et la détermination de la tendance sont retardés. Cela entraîne une hausse des points d’achat et une baisse des points de vente.

Un autre risque majeur est que l’indicateur puisse être induit en erreur lors d’une conversion de tendance haussière ou baissière. Un mauvais signal de négociation peut être généré et entraîner des pertes lorsque le RSI et l’indicateur de la ligne moyenne ne réagissent pas encore.

Les solutions comprennent un ajustement approprié des paramètres RSI, une réduction des cycles de la moyenne; l’ajout d’un indicateur de tendance pour aider à juger; un assouplissement approprié du périmètre de stop.

Direction d’optimisation

Les stratégies de croisement de la médiane axiale RSI peuvent être optimisées dans les directions suivantes:

  1. Optimiser les paramètres RSI: ajuster la longueur du RSI pour équilibrer la sensibilité et la stabilité

  2. Optimiser les paramètres des moyennes mobiles: ajuster le type de moyenne et les paramètres de périodicité, optimiser la dynamique des indicateurs

  3. Augmentation du mécanisme de stop-loss: régler le stop-loss mobile ou le stop-loss temporel pour contrôler les pertes individuelles

  4. Combinaison avec des indicateurs de tendance: ajouter des indicateurs tels que MACD, KDJ, etc. pour éviter les erreurs de jugement inversées

  5. Vérification à plusieurs périodes: identifier les tendances à des périodes plus longues et éviter les pièges

Résumer

La stratégie RSI est une stratégie de trading quantitatif relativement mature. Elle intègre les avantages de plusieurs indicateurs techniques et permet d’entrer dans le marché grâce à l’ajustement des paramètres et à l’optimisation multidimensionnelle. Le risque le plus important de cette stratégie réside dans le retard de l’indicateur et la nécessité d’un stop-loss pour contrôler les pertes.

Code source de la stratégie
/*backtest
start: 2022-11-16 00:00:00
end: 2023-11-22 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
// Copyright (c) 2020-present, Alex Orekhov (everget)
// Corrected Moving Average script may be freely distributed under the terms of the GPL-3.0 license.
strategy('rsisma', shorttitle='rsisma')

ma(source, length, type) =>
    switch type
        "SMA" => ta.sma(source, length)
        "Bollinger Bands" => ta.sma(source, length)
        "EMA" => ta.ema(source, length)
        "SMMA (RMA)" => ta.rma(source, length)
        "WMA" => ta.wma(source, length)
        "VWMA" => ta.vwma(source, length)

rsiLengthInput = input.int(14, minval=1, title="RSI Length", group="RSI Settings")
rsiSourceInput = input.source(close, "Source", group="RSI Settings")
maTypeInput = input.string("SMA", title="MA Type", options=["SMA", "Bollinger Bands", "EMA", "SMMA (RMA)", "WMA", "VWMA"], group="MA Settings")
maLengthInput = input.int(14, title="MA Length", group="MA Settings")
bbMultInput = input.float(2.0, minval=0.001, maxval=50, title="BB StdDev", group="MA Settings")

up = ta.rma(math.max(ta.change(rsiSourceInput), 0), rsiLengthInput)
down = ta.rma(-math.min(ta.change(rsiSourceInput), 0), rsiLengthInput)
rsi = down == 0 ? 100 : up == 0 ? 0 : 100 - (100 / (1 + up / down))
rsiMA = ma(rsi, maLengthInput, maTypeInput)
isBB = maTypeInput == "Bollinger Bands"

plot(rsi, "RSI", color=#7E57C2)
plot(rsiMA, "RSI-based MA", color=color.blue)
rsiUpperBand = hline(70, "RSI Upper Band", color=#787B86)
hline(50, "RSI Middle Band", color=color.new(#787B86, 50))
rsiLowerBand = hline(30, "RSI Lower Band", color=#787B86)
fill(rsiUpperBand, rsiLowerBand, color=color.rgb(126, 87, 194, 90), title="RSI Background Fill")
bbUpperBand = plot(isBB ? rsiMA + ta.stdev(rsi, maLengthInput) * bbMultInput : na, title = "Upper Bollinger Band", color=color.green)
bbLowerBand = plot(isBB ? rsiMA - ta.stdev(rsi, maLengthInput) * bbMultInput : na, title = "Lower Bollinger Band", color=color.green)
fill(bbUpperBand, bbLowerBand, color= isBB ? color.new(color.green, 90) : na, title="Bollinger Bands Background Fill")


long = ta.crossover(rsi, rsiMA)
short = ta.crossunder(rsi, rsiMA)
if long
    strategy.entry("long", strategy.long)
if short
    strategy.close("long", comment = "long TP")

 
// long1 = close * 9
// long2 = long1 / 100
// long3 = long2 + close


//plot(long3,color=color.blue)
// if short
//     strategy.entry("short", strategy.short)
// if long
//     strategy.close("short", comment = "short TP")