Les ressources ont été chargées... Je charge...

Stratégie de combinaison RSI et MA

Auteur:ChaoZhang est là., Date: 2024-05-28 17h34 et 11h
Les étiquettes:Indice de résistance- Je vous en prie.Le taux d'intérêtSMAHMALa WMASTOCHRSI

img

Résumé

Cette stratégie combine l'indicateur RSI avec des moyennes mobiles (MA) pour générer des signaux de trading. L'indicateur RSI est utilisé pour déterminer si le marché est suracheté ou survendu, tandis que l'indicateur MA est utilisé pour déterminer les tendances des prix. Un signal d'achat est généré lorsque l'indicateur RSI est suracheté et que le prix est au-dessus de l'indicateur MA; un signal de vente est généré lorsque l'indicateur RSI est survendu ou lorsque l'indicateur MA produit un croisement de la mort.

Principe de stratégie

  1. Calculer la valeur de l'indicateur RSI pour déterminer si le marché est suracheté (> 70) ou survendu (< 30).
  2. Calculer l'AM d'une période personnalisée, comprenant quatre types: EMA, SMA, HMA et WMA, et déterminer si elles doivent être affichées sur le graphique en fonction des paramètres.
  3. Lorsque le RSI est suracheté et que le prix de clôture est supérieur au MA, un signal d'achat est généré; lorsque le RSI est survendu ou que le MA produit une croix de mort, un signal de vente est généré.
  4. Introduisez l'indicateur StochRSI comme jugement auxiliaire. Lorsque StochRSI est suracheté (> 70) ou survendu (< 30), une alerte sera marquée sur le graphique, mais aucun signal de trading réel ne sera généré.

Les avantages de la stratégie

  1. La combinaison organique des deux indicateurs classiques, RSI et MA, permet de mieux saisir les mouvements de tendance et les opportunités de surachat/survente.
  2. Le type et les paramètres de l'autorisation de mise sur le marché peuvent être librement définis avec une grande souplesse et peuvent être ajustés en fonction des différentes caractéristiques du marché.
  3. L'introduction de l'indicateur StochRSI en tant que jugement auxiliaire fournit plus de référence pour les décisions de négociation.
  4. La logique du code est claire et lisible, facile à comprendre et de développement secondaire.

Risques stratégiques

  1. L'indicateur RSI et l'indicateur MA sont tous deux des indicateurs à la traîne et peuvent générer des signaux plus trompeurs aux premiers stades de l'inversion de tendance.
  2. Des paramètres mal réglés peuvent entraîner la génération de signaux trop tôt ou trop tard, ce qui affecte les rendements globaux.
  3. L'absence d'arrêt-perte et de gestion de position peut entraîner des risques plus importants lorsque le marché fluctue de manière spectaculaire.

Directions d'optimisation de la stratégie

  1. Introduire plus d'indicateurs de pointe tels que la volatilité pour prédire les changements de tendance à l'avance.
  2. Filtrer les signaux d'achat et de vente, par exemple en exigeant que le RSI et le MA remplissent certaines conditions en même temps pour générer des signaux, afin d'améliorer la précision du signal.
  3. Ajouter à la stratégie des modules de gestion des positions et des stop-loss pour contrôler le risque d'une seule transaction et le risque global.
  4. Effectuer une optimisation des paramètres sur la stratégie pour trouver la meilleure combinaison de paramètres.
  5. Considérez l'ajout de différents cycles ou de plusieurs variétés pour exploiter pleinement la relation de liaison entre les différentes variétés ou cycles.

Résumé

En combinant les deux indicateurs classiques de RSI et MA, cette stratégie peut capturer les mouvements de tendance et les opportunités de surachat / survente. En même temps, elle introduit l'indicateur StochRSI comme un jugement auxiliaire, et l'idée globale est simple et claire. Cependant, la stratégie présente également certaines lacunes, telles que l'absence de mesures de contrôle des risques et la nécessité d'améliorer la précision du signal.


/*backtest
start: 2023-05-22 00:00:00
end: 2024-05-27 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("RSI Strategy with Customizable MA and StochRSI Alert", overlay=true)

// กำหนดค่า RSI สำหรับการเปิดสัญญาณซื้อและขาย
rsiOverbought = input(70, title="RSI Overbought Level")
rsiOversold = input(30, title="RSI Oversold Level")

// เลือกชนิดของเส้นค่าเฉลี่ยเคลื่อนที่
maType = input.string("EMA", title="MA Type", options=["EMA", "SMA", "HMA", "WMA"])

// กำหนดค่าเส้นค่าเฉลี่ยเคลื่อนที่
maShortLength = input(12, title="MA Short Length")
maLongLength = input(26, title="MA Long Length")

// เลือกการแสดงผลของเส้นค่าเฉลี่ยเคลื่อนที่
showShortMA = input(true, title="Show Short Moving Average")
showLongMA = input(true, title="Show Long Moving Average")

// ฟังก์ชันสำหรับเลือกชนิดของเส้นค่าเฉลี่ยเคลื่อนที่
f_ma(src, length, type) =>
    switch type
        "SMA" => ta.sma(src, length)
        "EMA" => ta.ema(src, length)
        "HMA" => ta.hma(src, length)
        "WMA" => ta.wma(src, length)

// คำนวณค่าเส้นค่าเฉลี่ยเคลื่อนที่
maShort = showShortMA ? f_ma(close, maShortLength, maType) : na
maLong = showLongMA ? f_ma(close, maLongLength, maType) : na

// คำนวณค่า RSI
rsiValue = ta.rsi(close, 14)

// สร้างสัญญาณซื้อและขาย
buySignal = (rsiValue > rsiOverbought and ((showShortMA and showLongMA and close > maShort and maShort > maLong) or (showShortMA and not showLongMA and close > maShort) or (showLongMA and not showShortMA and close > maLong)))
sellSignal = (showShortMA and showLongMA and ta.crossover(maLong, maShort)) or (showShortMA and not showLongMA and ta.crossover(maShort, close)) or (showLongMA and not showShortMA and ta.crossover(maLong, close))

// แสดงค่าเส้นค่าเฉลี่ยเคลื่อนที่บนกราฟ
plot(maShort, color=color.red, title="MA Short")
plot(maLong, color=color.green, title="MA Long")

// คำนวณค่า Stochastic RSI
smoothK = 3
smoothD = 3
RSIlen = 14
STOlen = 14
SRsrc = close
OSlevel = 30
OBlevel = 70

rsi1 = ta.rsi(SRsrc, RSIlen)
k = ta.sma(ta.stoch(rsi1, rsi1, rsi1, STOlen), smoothK)
d = ta.sma(k, smoothD)

stochRSIOverbought = OBlevel
stochRSIOversold = OSlevel

stochRSIBuyAlert = ta.crossover(k, stochRSIOversold)
stochRSISellAlert = ta.crossunder(k, stochRSIOverbought)

// สร้างคำสั่งซื้อและขายเมื่อมีสัญญาณจาก RSI และ MA เท่านั้น
if (buySignal)
    strategy.entry("Buy", strategy.long)
if (sellSignal)
    strategy.close("Buy")

// แสดงสัญญาณเตือนจาก Stochastic RSI บนกราฟ
plotshape(series=stochRSIBuyAlert, location=location.belowbar, color=color.green, style=shape.labelup, title="StochRSI Buy Alert")
plotshape(series=stochRSISellAlert, location=location.abovebar, color=color.red, style=shape.labeldown, title="StochRSI Sell Alert")

// แสดงสัญญาณซื้อและขายจาก RSI และ MA บนกราฟ
plotshape(series=buySignal, location=location.top, color=color.green, style=shape.triangleup, title="RSI>70")
plotshape(series=sellSignal, location=location.top, color=color.red, style=shape.triangledown, title="MA crossoverDown")


Relationnée

Plus de