Stratégie de renversement de tendance croisée des stochastiques SPY RSI


Date de création: 2024-02-23 14:38:49 Dernière modification: 2024-02-23 14:38:49
Copier: 0 Nombre de clics: 647
1
Suivre
1617
Abonnés

Stratégie de renversement de tendance croisée des stochastiques SPY RSI

Aperçu

La stratégie d’inversion de tendance croisée de SPY RSI Stochastics est une stratégie de négociation quantitative qui utilise les croisements de lignes lentes et rapides de l’indicateur RSI pour juger de la reprise des prix. Cette stratégie combine des lignes lentes, rapides et MA pour générer des signaux d’achat et de vente dans certaines conditions afin de capturer de grandes opportunités de reprise des prix.

Principe de stratégie

La logique centrale de la stratégie est basée sur la croisée des lignes rapides et lentes de l’indicateur RSI. Le RSI est généralement inversé dans les zones de survente et de survente, de sorte que le moment où le prix peut être inversé peut être déterminé à l’avance en jugeant le forfait et le forfait de la ligne RSI rapide par rapport à la ligne RSI lente.

  1. Ligne RSI lente: une ligne RSI dont les paramètres sont définis sur 64 cycles
  2. Ligne RSI rapide (Fast RSI): une ligne RSI dont les paramètres sont réglés sur 9 cycles
  3. Ligne RSI MA: moyenne mobile simple à 3 cycles sur la ligne RSI rapide
  4. Le RSI est dépassé par le seuil de zone d’achat: paramètre 83
  5. RSI Marge de la zone de survente: paramètre défini à 25
  6. Zone neutre du RSI: entre 39 et 61
  7. Le temps de transaction est défini comme 9:00 le jour ouvrable à 9:00 le lendemain.

Un signal d’achat est généré lorsque le RSI rapide traverse le RSI lent (fork) et que le RSI rapide traverse le MA. Un signal de vente est généré lorsque le RSI rapide traverse le RSI lent (fork) et que le RSI rapide traverse le MA.

De plus, pour filtrer une partie de la transaction bruyante, la stratégie utilise la logique suivante:

  1. Aucun signal de transaction n’est généré entre les zones neutres du RSI
  2. Travailler uniquement entre 9h00 et 9h00 le jour de la semaine

Il y a deux conditions à remplir pour se retirer:

  1. La ligne RSI rapide est en position de plafonnement lorsqu’elle entre dans une zone de revers (zone de survente ou de survente)
  2. Le RSI est à l’opposé de l’indicateur de rupture

Analyse des forces stratégiques

Le plus grand avantage de la stratégie de reprise de tendance croisée de SPY RSI Stochastics est qu’elle permet de capturer la tendance avant qu’une reprise plus évidente ne se produise. En croisant les lignes RSI plus lentement, elle peut émettre des signaux de négociation à l’avance pour créer des opportunités d’entrée.

  1. Les règles de génération de signaux stratégiques sont claires, faciles à comprendre et à suivre
  2. Une conception à double filtre permet de réduire une partie du signal de bruit
  3. La flexibilité de l’intervalle de surachat et de survente s’applique à différents environnements de marché
  4. Avec le suivi des tendances et la capture inverse

Dans l’ensemble, cette stratégie, combinée au suivi des tendances et à l’appréciation des retournements de valeur, permet de saisir dans une certaine mesure le moment où les prix se retournent et présente une grande utilité.

Analyse stratégique des risques

Bien qu’il y ait des avantages à une stratégie de revers de tendance croisée, les principaux risques sont les suivants:

  1. La conception de deux filtres ne permet pas d’éviter complètement les risques liés aux échanges bruyants
  2. Le croisement RSI ne peut pas parfaitement prédire le point de basculement réel des prix et présente une certaine difficulté
  3. Il est nécessaire de choisir les paramètres appropriés, sinon les transactions peuvent être trop fréquentes ou rares
  4. La fausse percée de l’incident ne peut pas être complètement évitée

La stratégie peut être optimisée et améliorée pour ces risques en:

  1. En utilisant des algorithmes d’apprentissage automatique pour former les paramètres optimaux et réduire le bruit des signaux
  2. Augmentation de la fiabilité des signaux croisés, combinée à d’autres mesures techniques
  3. Augmentation des mécanismes de couverture des pertes et maîtrise de la marge de risque pour les transactions individuelles
  4. Optimiser les paramètres pour s’adapter aux mises à jour et améliorer l’adaptabilité des stratégies

Orientation de l’optimisation de la stratégie

La stratégie de rétrogradation de la valeur croisée du SPY RSI Stochastics peut être optimisée principalement dans les domaines suivants:

  1. Optimisation des paramètres: trouver la combinaison optimale de paramètres par des méthodes plus systématiques comme les algorithmes génétiques, la recherche sur grille
  2. Projet de caractéristiquesL’ajout d’autres caractéristiques qui influencent les prix, telles que les variations du volume des transactions, la volatilité, etc., pour aider à la prise de décision
  3. Apprentissage automatique: Apprendre les jugements croisés à l’aide d’algorithmes d’apprentissage automatique pour améliorer la précision
  4. Optimisation des pertesIntroduction de mécanismes de contrôle des risques tels que les arrêts flottants et les arrêts de temps
  5. Mise à jour adaptative: permet aux paramètres clés de s’adapter aux conditions du marché en temps réel

Ces optimisations peuvent rendre les paramètres de la stratégie plus intelligents, les signaux plus fiables, tout en adaptant les règles de la stratégie aux changements du marché, ce qui améliore considérablement la rentabilité stable de la stratégie.

Résumer

SPY RSI Stochastics a conçu une stratégie de trading quantitatif relativement simple et claire en jugeant les croisements de la ligne RSI. Elle combine les caractéristiques du suivi de la tendance et du trading inverse pour saisir dans une certaine mesure le moment de la reprise des prix. Mais la stratégie présente également des lacunes inhérentes qui nécessitent une optimisation des paramètres, des caractéristiques et des modèles pour contrôler les risques et améliorer la qualité du signal.

Code source de la stratégie
/*backtest
start: 2024-01-23 00:00:00
end: 2024-02-22 00:00:00
period: 2h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("SPY Auto RSI Stochastics", pyramiding = 3)


// Input parameters
slowRSILength = input(64, title="SLOW RSI Length")
fastRSILength = input(9, title="FAST RSI Length")
smaRSILength = input(3, title="RSI SMA Length")
RSIUpperThreshold = input(83, title="RSI Upper")
RSILowerThreshold = input(25, title="RSI Lower")
RSIUpperDeadzone = input(61, title='RSI Upper Deadzone')
RSILowerDeadzone = input(39, title='RSI Lower Deadzone')
blockedDays = (dayofweek(time) == 1 or dayofweek(time) == 7)
sessionMarket = input("0900-0900", title="Session Start")
allowedTimes() => time(timeframe = timeframe.period, session = sessionMarket, timezone = "GMT+1")
isvalidTradeTime =true

// RSI and ATR
slowRSI = ta.rsi(close, slowRSILength)
fastRSI = ta.rsi(close, fastRSILength)
smaRSI = ta.sma(fastRSI, smaRSILength)
rsi = fastRSI

// Entry condition
RSIUptrend() =>  ta.crossover(fastRSI, slowRSI) and ta.crossover(fastRSI, smaRSI)
RSIDowntrend() =>  ta.crossunder(fastRSI, slowRSI) and ta.crossunder(fastRSI, smaRSI)


isRSIDeadzone() =>
    rsi < RSIUpperDeadzone and rsi > RSILowerDeadzone

isBullishEngulfing() =>
    close > high[1]

isBearishEngulfing() =>
    close < low[1] 

// Declare variables
var float initialSLLong = na
var float initialTPLong = na
var float initialSLShort = na
var float initialTPShort = na
//var bool inATrade = false

entryConditionLong = RSIUptrend() and not isRSIDeadzone() and isvalidTradeTime
entryConditionShort = RSIDowntrend() and not isRSIDeadzone() and isvalidTradeTime

exitConditionLong = entryConditionShort or fastRSI > RSIUpperThreshold
exitConditionShort = entryConditionLong or fastRSI < RSILowerThreshold


if (entryConditionLong)
    strategy.entry(id = "Long", direction = strategy.long, alert_message = 'LONG! beep boop, all aboard the long train')

if (entryConditionShort)
    strategy.entry(id = "Short", direction = strategy.short, alert_message = 'Short! beep boop, all aboard the short train')

if (exitConditionLong)
    strategy.exit("Long", from_entry="Long", limit=close, alert_message = 'Stop Long, halt halt, take the profits and runnn')

if (exitConditionShort)
    strategy.exit("Short", from_entry="Short", limit=close, alert_message = 'Stop Short, halt halt, take the profits and runnn')


//plot(smaRSI, "RSI MA", color=color.red)
plot(slowRSI, "Slow RSI", color=color.green)
//plot(fastRSI, "Fast RSI", color=color.white)
plot(smaRSI, "SMA RSI", color=color.white)