Voici un article de référencement que j'ai écrit en fonction du code et des exigences que vous m'avez fournis, et qui contient les noms des stratégies, les aperçus, les principes stratégiques, l'analyse des avantages, l'analyse des risques, l'orientation de l'optimisation et les résumés:
Cette stratégie est une stratégie de trading rapide de renversement du RSI qui capture principalement les opportunités de renversement lorsque le RSI est suracheté ou survendu.
La stratégie utilise deux indicateurs:
RSI de 3 jours pour juger des niveaux de surachat et de survente.
Lorsque le corps de la barre d'inversion est supérieur à la moitié du MA de 30 jours, il est utilisé comme signal d'entrée.
Règles commerciales spécifiques:
Signal long: lorsque le RSI est inférieur à la limite inférieure (défault 25) et que le corps de la barre actuelle est supérieur à la moitié de la MA de 30 jours, passez long.
Signal court: lorsque le RSI est supérieur à la limite supérieure (défault 75) et que le corps de la barre actuelle est supérieur à la moitié de la moyenne de trading à 30 jours, passez court.
Signal de sortie: lorsque les positions longues sont détenues, si le RSI dépasse la limite supérieure, ou lorsque les positions courtes sont détenues, si le RSI dépasse la limite inférieure, tandis que le corps de la barre est supérieur à la moitié de la MA de 30 jours, les positions sont fermées.
Les avantages de cette stratégie sont les suivants:
Utiliser le RSI à court terme pour saisir rapidement les opportunités d'inversion à court terme.
Augmentation de la fiabilité du signal en combinaison avec le filtre MA, évitant les pannes sur les marchés à plage.
Les prélèvements sont contrôlables, le prélèvement maximum ne sera pas trop important.
Des règles claires de contrôle des positions, évitant le sur-échange.
Les risques de cette stratégie comprennent:
Risque de renversement manqué: le surachat et la survente ne conduisent pas nécessairement à un renversement.
Risque de perte en négociant contre la tendance des marchés en évolution.
Des occasions manquées en raison de règles de filtrage trop strictes.
La sensibilité des paramètres est élevée, les périodes RSI et MA doivent être ajustées.
La stratégie peut être optimisée par les aspects suivants:
Optimiser les paramètres de l'indicateur RSI pour trouver la période optimale.
Optimiser les paramètres MA pour déterminer la période de filtrage optimale.
Ajoutez des stratégies de stop-loss comme le stop-loss de suivi, pour contrôler les pertes d'une seule transaction.
Ajouter des règles de détermination de tendance pour éviter de négocier contre tendance.
En conclusion, il s'agit d'une stratégie RSI axée sur l'inversion à court terme. Elle capte les inversions en identifiant rapidement les niveaux de surachat et de survente du RSI, et utilise le filtre de barre MA pour confirmer les entrées. Les avantages sont des retraits contrôlables et des contrôles de position clairs.
/*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()