Les ressources ont été chargées... Je charge...

Stratégie de négociation quantitative basée sur l'indicateur RSI

Auteur:ChaoZhang est là., Date: 2023-11-27 16h02 et 14h
Les étiquettes:

img

Vue d'ensemble de la stratégie

La stratégie s'appelle PlanB RSI Tracking Strategy. Elle utilise l'indice de force relative (RSI) comme indicateur technique principal pour configurer des signaux d'achat et de vente pour le trading automatisé.

La logique de la stratégie

La stratégie repose principalement sur les principes suivants:

  1. Si l'indice RSI le plus élevé au cours des 6 derniers mois dépasse 90% puis tombe en dessous de 65%, un signal de vente est généré.

  2. Si l'indice RSI le plus bas au cours des 6 derniers mois tombe en dessous de 50% et rebondit ensuite de plus de 2% par rapport au point le plus bas, un signal d'achat est généré.

Plus précisément, la logique de vente est la suivante:

If (Highest RSI in past 6 months > 90% AND Current RSI < 65%) 
   Then Sell

La logique d'achat est:

If (Lowest RSI in past 6 months < 50% AND RSI bounces >2% from lowest point)
   Then Buy

Les règles de vente et d'achat ci-dessus proviennent de l'article de PlanB, un stratège de quantité bien connu.

Les avantages de la stratégie

Cette stratégie de négociation présente les principaux avantages suivants:

  1. L'utilisation de l'indicateur RSI comme seul indicateur technique réduit la complexité.

  2. Des règles d'achat et de vente claires et faciles à comprendre pour la vérification des transactions en direct.

  3. Les signaux d'achat et de vente intègrent à la fois des informations de marché à long terme sur le pic/le bas et à court terme sur le rebond/l'effondrement.

  4. La stratégie fait référence à la recherche du renommé quant PlanB, permettant une vérification indépendante de ses conclusions.

  5. En tant que stratégie pour débutants avec des règles relativement simples, elle aide à développer les compétences de trading quantique.

Risques liés à la stratégie

Il existe également des risques clés pour cette stratégie commerciale:

  1. S'appuyant uniquement sur le RSI, il ne peut pas gérer des régimes de marché plus complexes.

  2. Les paramètres fixes peuvent manquer les transactions ou donner des signaux retardés.

  3. Suivre PlanB à l'aveugle sans optimisation indépendante risque une mauvaise performance en direct.

  4. Les règles d'achat/vente brutes sans stop-loss ni prise de profit peuvent entraîner de grosses pertes dans le trading en direct.

Les optimisations suivantes pourraient aider à réduire les risques et à améliorer les performances en direct:

  1. Ajouter des indicateurs secondaires pour éviter les faux signaux RSI.

  2. Optimiser les paramètres pour les différentes caractéristiques du cycle.

  3. Ajoutez des mécanismes de stop loss / take profit pour le contrôle des risques.

  4. Entraînez les paramètres de stratégie de manière indépendante pour assurer la robustesse.

Directions pour l'optimisation de la stratégie

Pour améliorer les performances en direct, des optimisations peuvent être effectuées dans les dimensions suivantes:

  1. Ajouter des indicateurs secondaires: S'appuyer uniquement sur l'indicateur de volatilité risque de donner de faux signaux. Incorporer des indicateurs tels que KD, MACD pour un jugement composé et améliorer la précision.

  2. Optimisation des paramètres dynamiques: Les valeurs actuelles des paramètres sont fixes, ne pouvant pas s'adapter aux cycles du marché.

  3. Résultats des opérations de reportingL'ajout d'un stop-loss de suivi, le déplacement des points de prise de profit peut contrôler efficacement les pertes d'une seule transaction et verrouiller les gains.

  4. Formation indépendante sur les paramètres: Utiliser directement les paramètres de l'article PlanB sans vérification. Appliquer l'apprentissage automatique pour trouver des combinaisons optimales de paramètres basées sur des données historiques.

  5. Optimisation du portefeuille: La combinaison de plusieurs stratégies simples améliore la stabilité globale et les rendements ajustés au risque.

Conclusion

La stratégie de suivi du RSI de PlanB suit la philosophie de conception de l'article classique de PlanB, en construisant une stratégie de trading de quantité simple basée sur le RSI. Les avantages résident dans sa clarté et sa facilité de mise en œuvre, ce qui la rend adaptée à l'éducation des débutants quant. Cependant, la seule dépendance à un seul indicateur et le manque d'optimisation restent des problèmes. Des améliorations futures peuvent être apportées en ajoutant des indicateurs secondaires, une optimisation dynamique des paramètres, un stop loss / take profit, une formation indépendante des paramètres pour améliorer considérablement les performances en direct.


/*backtest
start: 2022-11-20 00:00:00
end: 2023-11-26 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © fillippone

//@version=4

strategy("PlanB Quant Investing 101", shorttitle="PlanB RSI Strategy", overlay=true,calc_on_every_tick=false,pyramiding=0, default_qty_type=strategy.cash,default_qty_value=1000, currency=currency.USD, initial_capital=1000,commission_type=strategy.commission.percent, commission_value=0.0)


r=rsi(close,14)

//SELL CONDITION
//RSI was above 90% last six months AND drops below 65%

//RSI above 90% last six month

selllevel = input(90)
maxrsi = highest(rsi(close,14),6)[1]

rsisell = maxrsi > selllevel 


//RSIdrops below 65%
drop = input(65)

rsidrop= r < drop

//sellsignal
sellsignal = rsisell and rsidrop 


//BUY CONDITION
//IF (RSI was below 50% last six months AND jumps +2% from the low) THEN buy, ELSE hold.

//RSI was below 50% last six months

buylevel = input(50)
minrsi = lowest(rsi(close,14),6)[1]

rsibuy = minrsi < buylevel 

//IF (RSI jumps +2% from the low) THEN buy, ELSE hold.


rsibounce= r > (minrsi + 2)

//buysignal=buyrsi AND rsidrop

//buysignal

buysignal = rsibuy and rsibounce 

//Strategy

strategy.entry("Buy Signal",strategy.long, when = buysignal)
strategy.entry("Sell Signal",strategy.short, when = sellsignal)



Plus de