Stratégie de retournement rapide du RSI


Date de création: 2023-12-01 13:37:20 Dernière modification: 2023-12-01 13:37:20
Copier: 1 Nombre de clics: 645
1
Suivre
1619
Abonnés

Stratégie de retournement rapide du RSI Voici un article de référencement que j’ai écrit à partir du code que vous m’avez fourni et de la demande que vous m’avez faite, avec le nom de la stratégie, un résumé, les principes de la stratégie, l’analyse des avantages, l’analyse des risques, les orientations d’optimisation et les résumés:

Aperçu

Cette stratégie est une stratégie de trading à inversion rapide du RSI, dont l’idée est de juger de l’opportunité de revenir à court terme lorsque le RSI est en hausse ou en baisse. Elle utilise le RSI à 3 jours comme indicateur pour juger de la hausse ou de la baisse et, combinée à la moyenne à 30 jours, pour juger du signal de rupture et ouvrir une position lorsque le RSI est en hausse ou en baisse.

Principe de stratégie

La stratégie utilise deux indicateurs:

  1. Le RSI du 3e jour a jugé que le marché était sur-acheté et sur-vendu.

  2. La moyenne de 30 jours pour juger de l’intensité du signal de retour. Lorsque l’entité de la ligne K de retour est supérieure à la moitié de la moyenne de 30 jours, elle sert de signal d’entrée.

Règles de négociation spécifiques:

Signaux multiples: l’indicateur RSI est inférieur à la basse (default 25) et l’entité de ligne K actuelle est supérieure à la moitié de la moyenne sur 30 jours.

Signal de tête vide: le RSI est supérieur à la hauteur (default 75) et l’entité de ligne K actuelle est supérieure à la moitié de la moyenne des 30 jours.

Signaux de stop loss: hausse du RSI en position multiple, ou baisse du RSI en position vide, avec une entité K supérieure à la moitié de la moyenne des 30 jours, plage de position.

Analyse des avantages

Cette stratégie présente les avantages suivants:

  1. L’utilisation du RSI à courte période pour juger des surachats et des survente permet de saisir rapidement les occasions de reprise à court terme.

  2. La combinaison de filtres homogènes augmente la fiabilité du signal et évite la capture lors de tremblements de terre.

  3. Les retraits sont contrôlables, les retraits maximaux ne seront pas trop importants.

  4. Les règles de contrôle des positions sont claires et les positions ne sont pas ouvertes fréquemment.

Analyse des risques

La stratégie présente également les risques suivants:

  1. Le risque d’échec de l’inversion. Les surachats et les surventeurs ne sont pas forcément réversibles.

  2. Le risque de perte de l’opération de contre-courant dans une tendance.

  3. Les conditions de filtrage des entités sont trop strictes et les opportunités d’entrée sont faciles à manquer.

  4. Les paramètres sont plus sensibles, les cycles RSI et les cycles réels doivent être ajustés.

Direction d’optimisation

Cette stratégie peut être optimisée dans les domaines suivants:

  1. Optimiser les paramètres du RSI pour trouver la meilleure période

  2. Optimiser les paramètres de la moyenne pour trouver la meilleure période de filtrage de l’entité.

  3. Augmenter les stratégies de stop loss, comme le stop move et le stop curve, afin de contrôler les pertes individuelles.

  4. Il a ajouté des règles de jugement de tendance et évité les opérations de contre-courant.

Résumer

Cette stratégie est une stratégie RSI basée sur un revers à court terme. Elle est confirmée par un filtrage de l’entité de la ligne de parité. Elle présente les avantages d’un contrôle de la reprise et du contrôle de la position.

Code source de la stratégie
/*backtest
start: 2023-10-31 00:00:00
end: 2023-11-30 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=3
strategy(title = "Noro's Fast RSI Strategy v1.0", shorttitle = "Fast RSI str 1.0", 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")
limit = input(25, defval = 25, minval = 1, maxval = 100, title = "RSI limit")
fromyear = input(1900, defval = 1900, 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
src = close
fastup = rma(max(change(src), 0), 3)
fastdown = rma(-min(change(src), 0), 3)
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) / 2

//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()