Stratégie de synthèse entre plusieurs indicateurs de force relative

Auteur:ChaoZhang est là., Date: 2024-01-02 12:06:14 Je suis désolé
Les étiquettes:

img

Résumé

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 de la stratégie

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.

Points forts de la stratégie

  1. Améliorer l'exactitude des entrées avec plusieurs ISR

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.

  1. 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é.

  2. 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.

Les risques de la stratégie

  1. 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.

  2. 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.

  3. 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.

Conseils pour optimiser

  1. 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.

  2. 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.

  3. 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.

Conclusion

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

Plus de