La stratégie de synthèse entre plusieurs indicateurs de force relative (RSI) est une stratégie de négociation en temps opportun qui utilise plusieurs RSI avec des périodes différentes pour négocier des actions. Elle suit simultanément les indicateurs RSI de 1, 2, 3, 4 et 5 périodes.
La logique clé de cette stratégie est de suivre simultanément les indicateurs RSI de 1, 2, 3, 4 et 5 périodes, y compris les RSI de 4, 7, 14, 21 et 28 périodes. Des valeurs de seuil séparées sont définies pour chacun des 5 indicateurs RSI. Un signal d'achat est déclenché lorsque l'un des RSI tombe en dessous de son propre seuil.
Par exemple, le seuil du RSI à 4 périodes est fixé à 15. Un signal d'achat est généré lorsque le RSI à 4 périodes tombe en dessous de 15. La stratégie vérifie si d'autres RSI tombent également en dessous de leurs propres seuils. Si oui, d'autres signaux d'achat seront produits.
Lorsque tous les 5 indicateurs RSI se rallient et dépassent leurs propres seuils, un signal de vente est généré afin de réaliser des bénéfices.
La stratégie utilise 5 RSI de différentes périodes pour générer des signaux d'achat et de vente. Un seul indicateur peut parfois générer un faux signal. Cependant, avec la réunion de plusieurs autres, la précision du signal peut être améliorée, améliorant ainsi la précision des entrées.
Indices de rendement de différentes périodes adaptés à différentes conditions de marché
L'indice de volatilité à 1, 2, 3, 4 et 5 périodes utilisé dans cette stratégie peut s'adapter aux fluctuations des stocks de fréquences différentes. Par exemple, l'indice de volatilité à 28 périodes convient au trading à long terme tandis que l'indice de volatilité à 4 périodes convient au trading à court terme. Cela garantit que la stratégie fonctionne dans différentes situations de marché.
Structure de code propre et claire
La nomenclature des variables et la structure globale du code de stratégie est nette et évidente. Le flux logique pour différents indicateurs et signaux est clair. Cela rend la stratégie facile à comprendre, modifier et optimiser, ce qui est d'une grande essence pour les stratégies quantitatives.
Invalide sur le marché en tendance
La stratégie repose fortement sur des signaux de surachat et de survente. Son efficacité serait compromise dans un marché à tendance haussière ou baissière persistante. C'est un défaut omniprésent des stratégies d'inversion moyenne utilisant des indicateurs inverses.
Difficulté à optimiser les paramètres
Une variété d'indicateurs et de paramètres d'entrée existent dans cette stratégie. Cela pose d'immenses défis pour l'optimisation des paramètres. Une mauvaise combinaison de paramètres peut réduire considérablement l'efficacité de la stratégie.
Renversements fréquents entre long et court
En raison de l'utilisation d'indicateurs à plusieurs périodes, les changements de position longue et courte dans la stratégie pourraient être assez fréquents, ce qui peut entraîner des coûts plus élevés associés aux transactions et des risques liés aux glissements de prix.
Incorporer des indicateurs de tendance
Des outils de tendance tels que MA et BOLL peuvent être ajoutés. Les signaux ne sont pris que lorsque les outils de tendance sont en concurrence avec les signaux générés par les indicateurs inversés. Cela aide à éviter les pertes dans des situations de tendance persistantes.
Réduire le nombre d'indicateurs RSI
Essayez de réduire le nombre d'outils RSI utilisés. Cela atténue la difficulté d'optimisation des paramètres. Les expériences montrent que 2 à 3 indicateurs peuvent déjà créer une efficacité satisfaisante.
Optimiser les plages de paramètres
Cherchez des plages et des combinaisons optimales de paramètres et de seuils RSI en utilisant des méthodes d'optimisation telles que la descente de gradient et la recherche aléatoire.
La stratégie de synthèse du RSI génère des signaux de trading par congrégation de signaux provenant de plusieurs RSI avec des périodes différentes. Cela améliore la précision des entrées pour réaliser le timing trading dans les actions. Malgré les avantages hérités de l'utilisation de plusieurs indicateurs, des lacunes, notamment l'inefficacité dans les marchés tendance et la difficulté d'optimisation, subsistent. Des méthodes telles que l'ajout d'outils de tendance, la réduction des nombres d'indicateurs et l'optimisation des paramètres peuvent aider à renforcer davantage la robustesse de la stratégie.
/*backtest start: 2022-12-26 00:00:00 end: 2024-01-01 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //Noro //2018 //@version=2 strategy(title = "Noro's Symphony v1.0", shorttitle = "Symphony 1.0", overlay = false, default_qty_type = strategy.percent_of_equity, default_qty_value = 100, pyramiding = 20) //Settings needlong = input(true, defval = true, title = "Long") needshort = input(true, defval = true, title = "Short") capital = input(100, defval = 100, minval = 1, maxval = 10000, title = "Lot, %") usersi1 = input(true, defval = true, title = "Use RSI 1") rsiperiod1 = input(4, defval = 4, minval = 2, maxval = 100, title = "RSI 1 Period") rsilimit1 = input(15, defval = 15, minval = 2, maxval = 50, title = "RSI 1 Limit") usersi2 = input(true, defval = true, title = "Use RSI 2") rsiperiod2 = input(7, defval = 7, minval = 2, maxval = 100, title = "RSI 2 Period") rsilimit2 = input(20, defval = 20, minval = 2, maxval = 50, title = "RSI 2 Limit") usersi3 = input(true, defval = true, title = "Use RSI 3") rsiperiod3 = input(14, defval = 14, minval = 2, maxval = 100, title = "RSI 3 Period") rsilimit3 = input(25, defval = 25, minval = 2, maxval = 50, title = "RSI 3 Limit") usersi4 = input(true, defval = true, title = "Use RSI 4") rsiperiod4 = input(21, defval = 21, minval = 2, maxval = 100, title = "RSI 4 Period") rsilimit4 = input(30, defval = 30, minval = 2, maxval = 50, title = "RSI 4 Limit") usersi5 = input(true, defval = true, title = "Use RSI 5") rsiperiod5 = input(28, defval = 28, minval = 2, maxval = 100, title = "RSI 5 Period") rsilimit5 = input(35, defval = 35, minval = 2, maxval = 50, title = "RSI 5 Limit") cf = input(false, defval = false, title = "Use color filter") 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") //RSI rsi1 = rsi(close, rsiperiod1) rsi2 = rsi(close, rsiperiod2) rsi3 = rsi(close, rsiperiod3) rsi4 = rsi(close, rsiperiod4) rsi5 = rsi(close, rsiperiod5) //Signals up1 = rsi1 < rsilimit1 and usersi1 up2 = rsi2 < rsilimit2 and usersi2 up3 = rsi3 < rsilimit3 and usersi3 up4 = rsi4 < rsilimit4 and usersi4 up5 = rsi5 < rsilimit5 and usersi5 up = up1 or up2 or up3 or up4 or up5 exit = rsi1 > rsilimit1 and rsi2 > rsilimit2 and rsi3 > rsilimit3 and rsi4 > rsilimit4 and rsi5 > rsilimit5 lot = strategy.position_size == 0 ? strategy.equity / close * capital / 100 : lot[1] //Background col = up ? lime : na bgcolor(col, transp = 0) //Trading if up and (close < open or cf == false) strategy.entry("Long", strategy.long, needlong == false ? 0 : lot) if exit strategy.close_all()