
La stratégie de tendance RSI à deux vitesses extrêmes
Cette stratégie est une stratégie rapide qui utilise l’indicateur RSI pour déterminer la tendance des prix. Elle possède à la fois la capacité de faire plus et de faire moins et peut capturer des prix de ligne courte plus rapides.
La stratégie utilise l’indicateur RSI amélioré pour juger de l’état de survente et de survente du prix, en combinaison avec le filtrage du bruit des entités de la ligne K. Lorsque le RSI est dans une zone de survente ou de survente et que le volume de l’entité de la ligne K est supérieur à 1⁄3 du volume moyen, faire un surplus ou un vide.
La stratégie réagit rapidement et permet de capturer les courts courants les plus rapides; et le filtrage de l’entité aide à réduire le bruit et à éviter d’être induit en erreur par de faux rebond. La stratégie s’applique aux variétés à forte volatilité et permet d’obtenir des rendements plus élevés.
Cette stratégie est sensible à la réponse aux changements de prix et peut être facilement induite en erreur par de faux signaux sur le marché. De plus, les arrêts de marché à forte volatilité peuvent être déclenchés plus fréquemment.
Il est possible de tester différents paramètres de l’indicateur périodique pour optimiser la stratégie et trouver la meilleure combinaison de paramètres. En outre, il est possible d’envisager d’ajouter d’autres indicateurs, tels que les règles de négociation de la pirogue, pour aider à filtrer les signaux.
Cette stratégie est globalement une stratégie de courte ligne très efficace et sensible. Elle est susceptible d’améliorer encore la stabilité et la rentabilité grâce à l’optimisation de certains paramètres et modèles. La stratégie mérite d’être étudiée et suivie par les traders quantifiés.
/*backtest
start: 2023-11-03 00:00:00
end: 2023-12-03 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=3
strategy(title = "Noro's Fast RSI Strategy v1.1", shorttitle = "Fast RSI str 1.1", overlay = true, default_qty_type = strategy.percent_of_equity, default_qty_value = 100, pyramiding = 5)
//Settings
needlong = input(true, defval = true, title = "Long")
needshort = input(true, defval = true, title = "Short")
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 Source")
fromyear = input(2018, defval = 2018, minval = 1900, maxval = 2100, title = "From Year")
toyear = input(2100, defval = 2100, 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))
uplimit = 100 - limit
dnlimit = limit
//Body
body = abs(close - open)
emabody = ema(body, 30) / 3
//Signals
bar = close > open ? 1 : close < open ? -1 : 0
up = bar == -1 and fastrsi < dnlimit and body > emabody
dn = bar == 1 and fastrsi > uplimit and body > emabody
exit = ((strategy.position_size > 0 and fastrsi > dnlimit) or (strategy.position_size < 0 and fastrsi < uplimit)) and body > emabody
//Trading
if up
strategy.entry("Long", strategy.long, needlong == false ? 0 : na, when=(time > timestamp(fromyear, frommonth, fromday, 00, 00) and time < timestamp(toyear, tomonth, today, 00, 00)))
if dn
strategy.entry("Short", strategy.short, needshort == false ? 0 : na, when=(time > timestamp(fromyear, frommonth, fromday, 00, 00) and time < timestamp(toyear, tomonth, today, 00, 00)))
if time > timestamp(toyear, tomonth, today, 00, 00) or exit
strategy.close_all()