
La stratégie est une stratégie de trading en ligne courte basée sur un indicateur relativement fort et faible (RSI). Elle utilise l’indicateur RSI pour identifier les intervalles de survente et de survente et, en combinaison avec des entités de ligne K pour filtrer les faux signaux, effectue des opérations d’achat et de vente au point de basculement. La stratégie cherche à capturer des opportunités de rebond après une situation de survente et de survente extrême.
Comptez d’abord l’indicateur RSI, choisissez le cours de clôture comme source de données de calcul, la période est définie sur 7 jours. Ensuite, définissez la ligne de survente sur 30 et la zone de survente sur 70.
Afin de filtrer les faux signaux, il est demandé à l’entité de la ligne K d’être amplifiée de 1 à 3 fois plus que la normale pour déclencher un signal de transaction. Ici, le signal est confirmé en utilisant le RSI 1 à 5 lignes de la ligne K en continu dans la zone de surachat et de survente. Le multiplicateur d’amplification de l’entité est réglé sur 4 fois.
L’opération d’achat est exécutée lorsque le RSI génère un signal de vente lorsque 5 lignes K consécutives sont inférieures à 30, et si la ligne K consécutive est plus grande que 4 fois, l’opération d’achat est exécutée.
Afin de bloquer les bénéfices, il est recommandé de faire un stop-loss en cas d’amplification de l’entité de 2 fois lorsque la direction de la position est identique à la direction de la ligne K actuelle.
L’indicateur RSI permet de mieux identifier les sur-achats et les sur-vente. Lorsque les actions sont dans la zone de sur-achat et de survente, il existe une plus grande probabilité de reprise à court terme, et la zone de survente est souvent un signe de rebond imminent. Cette stratégie permet de saisir les opportunités à la veille d’une reprise.
La stratégie implique l’ajout d’un amplificateur de la ligne K comme condition de filtrage et l’ajout d’une position à la veille d’un virage inverse pour éviter d’être induit en erreur par les faux signaux du marché oscillant.
Il est nécessaire de confirmer que le RSI est constamment entre 1 et 5 lignes K dans la zone de survente, afin d’éviter d’être induit en erreur par des lignes K aléatoires individuelles et d’améliorer la fiabilité du signal.
Le multiplicateur d’amplification de l’entité peut être ajusté en fonction des différentes variétés, les conditions peuvent être assouplies de manière appropriée pour les variétés à forte hausse et à forte baisse, tandis que les conditions peuvent être ajustées de manière appropriée pour les variétés à fluctuation modérée et peuvent être librement ajustées pour s’adapter à leur propre variété de négociation.
Le paramétrage de la stratégie présente des limites, car il faut ajuster les paramètres selon les variétés et les périodes. L’utilisation d’un paramètre fixe peut entraîner des problèmes de suradaptation.
L’indicateur RSI lui-même présente un certain retard, et la combinaison de l’amplification de l’entité comme condition de filtrage permet également de quitter une position plus tôt. Par conséquent, la précision de l’identification des points d’achat et de vente n’est généralement pas particulièrement élevée.
En cas de choc, l’indicateur RSI peut déclencher fréquemment des signaux d’achat et de vente, ce qui entraîne une période de tenue trop longue. Il est alors nécessaire d’ajuster les paramètres ou de suspendre la stratégie.
Cette stratégie est une stratégie de trading à courte échéance, qui nécessite l’utilisation de stratégies de détention appropriées, telles que la suppression de la moyenne, le stop loss, etc., pour bloquer les bénéfices et contrôler les risques.
Il est possible de tester différentes combinaisons de paramètres du RSI, comme les cycles, les lignes de surachat et de survente, ainsi que les paramètres de filtrage des entités de la ligne K, en optimisant les paramètres pour les différentes variétés.
Il est possible de définir un stop-loss mobile ou un stop-loss en pourcentage pour verrouiller les bénéfices, ou de définir un stop-loss en fonction de la valeur ATR ou en combinaison avec le canal Donchain.
Il est possible d’ajouter des conditions de filtrage d’autres indicateurs tels que MACD, KDJ, etc. pour éviter de produire un faux signal lors d’une rupture inefficace. Il est également possible d’utiliser l’indicateur de volatilité pour identifier un signal de revers dans la tendance.
L’utilisation d’une ligne moyenne pour déterminer la direction de la tendance, en tenant compte des signaux de négociation uniquement lorsque la tendance est cohérente, en cas de choc, il est possible de choisir une stratégie de suspension. Il peut également être combiné avec un signal de filtrage d’indicateur de tendance faible.
L’ensemble de la stratégie de retour RSI est une stratégie de négociation typique de la courte ligne, qui présente certains avantages et risques. Le principal avantage est de pouvoir capturer une reprise après une survente, tandis que le risque est principalement lié à une faible précision de la confiance et à une longue période de maintien des positions dans des conditions de choc.
/*backtest
start: 2022-11-08 00:00:00
end: 2023-11-14 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=3
strategy(title = "Noro's FRSI Strategy v1.21", shorttitle = "FRSI str 1.21", overlay = true, default_qty_type = strategy.percent_of_equity, default_qty_value = 100, pyramiding = 0, commission_type = strategy.commission.percent, commission_value = 0.0)
//Settings
rsiperiod = input(7, defval = 7, minval = 2, maxval = 50, title = "RSI Period")
limit = input(30, defval = 30, minval = 1, maxval = 100, title = "RSI limit")
rsisrc = input(close, defval = close, title = "RSI Price")
rb = input(1, defval = 1, minval = 1, maxval = 5, title = "RSI Bars")
sps = 0
fromyear = input(2018, defval = 2018, minval = 1900, maxval = 2100, title = "From Year")
toyear = input(2038, defval = 2018, minval = 1900, maxval = 2100, title = "To Year")
frommonth = input(01, defval = 01, minval = 01, maxval = 12, title = "From Month")
tomonth = input(12, defval = 12, minval = 01, maxval = 12, title = "To Month")
fromday = input(01, defval = 01, minval = 01, maxval = 31, title = "From day")
today = input(31, defval = 31, minval = 01, maxval = 31, title = "To day")
//Fast RSI
fastup = rma(max(change(rsisrc), 0), rsiperiod)
fastdown = rma(-min(change(rsisrc), 0), rsiperiod)
fastrsi = fastdown == 0 ? 100 : fastup == 0 ? 0 : 100 - (100 / (1 + fastup / fastdown))
//Limits
bar = close > open ? 1 : close < open ? -1 : 0
uplimit = 100 - limit
dnlimit = limit
//RSI Bars
ur = fastrsi > uplimit
dr = fastrsi < dnlimit
uprsi = rb == 1 and ur ? 1 : rb == 2 and ur and ur[1] ? 1 : rb == 3 and ur and ur[1] and ur[2] ? 1 : rb == 4 and ur and ur[1] and ur[2] and ur[3] ? 1 : rb == 5 and ur and ur[1] and ur[2] and ur[3] and ur[4] ? 1 : 0
dnrsi = rb == 1 and dr ? 1 : rb == 2 and dr and dr[1] ? 1 : rb == 3 and dr and dr[1] and dr[2] ? 1 : rb == 4 and dr and dr[1] and dr[2] and dr[3] ? 1 : rb == 5 and dr and dr[1] and dr[2] and dr[3] and dr[4] ? 1 : 0
//Body
body = abs(close - open)
emabody = ema(body, 30)
//Signals
up = bar == -1 and sps == 0 and dnrsi and body > emabody / 4
dn = bar == 1 and sps == 0 and uprsi and body > emabody / 4
exit = bar == 1 and fastrsi > dnlimit and body > emabody / 2
//Trading
if up
strategy.entry("Long", strategy.long, when=(time > timestamp(fromyear, frommonth, fromday, 00, 00) and time < timestamp(toyear, tomonth, today, 00, 00)))
sps := 1
if time > timestamp(toyear, tomonth, today, 00, 00) or exit
strategy.close_all()
sps := 0