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

Stratégie d'inversion des baisses consécutives

Auteur:ChaoZhang est là., Date: 2024-03-08 17h01:33 Je vous en prie.
Les étiquettes:

img

Résumé

La stratégie d'inversion des hausses et baisses consécutives est une stratégie de trading quantitative basée sur la continuité des hausses et baisses de prix. La stratégie identifie le schéma des X bougies consécutives en baisse qui brisent le point le plus bas, suivies de Y bougies consécutives en hausse, pour saisir les opportunités d'inversion de tendance à court terme. L'idée principale derrière la stratégie est qu'après que le prix ait connu des baisses consécutives, elle indique que l'élan baissier a été libéré. Par la suite, si des hausses consécutives se produisent, elle suggère que la force haussière commence à s'accumuler et que le prix peut déclencher un rebond. Par conséquent, cette stratégie tente de saisir l'opportunité d'inversion du prix de baissier à haussier, générant ainsi des profits.

Principe de stratégie

Le principe de la stratégie d'inversion des baisses consécutives peut être divisé en les étapes suivantes:

  1. Réglage des paramètres: définir le nombre de barres vers le bas consécutives (consecutiveBarsDown) et le nombre de barres vers le haut consécutives (consecutiveBarsUp).
  2. Déterminez la tendance du marché: comptez le nombre de barres descendantes (dns) et de barres ascendantes (ups) consécutives du prix actuel.
  3. Condition d'entrée: ouvrir une position longue lorsque les conditions suivantes sont remplies:
    • L'heure de négociation actuelle se situe dans la fourchette de backtest (date))
    • Les deux bougies précédentes ont décliné consécutivement à la valeur définie de consécutiveBarDown
    • La bougie actuelle a augmenté consécutivement à la valeur définie de consécutiveBarsUp
    • Aucune position actuelle (non active)
  4. Régler le stop loss: après avoir ouvert une position, régler le prix du stop loss (stop_loss) au point le plus bas des prix de clôture des trois bougies les plus récentes.
  5. Condition de sortie: fermer la position lorsque les conditions suivantes sont remplies:
    • L'heure de négociation actuelle se situe dans la fourchette de backtest (date))
    • Il existe une position actuelle (active)
    • Le prix de clôture est inférieur au prix de stop loss (close < stop_loss) ou inférieur au prix le plus élevé moins 2 fois ATR (close < high - 2 * atr(7))
  6. Réinitialiser les variables: après la fermeture de la position, réinitialiser la variable active à false et l'index entry_bar_index à une valeur très importante.

Cette stratégie utilise le schéma de baisses et de hausses consécutives pour tenter de saisir les opportunités de renversement de la baisse à la hausse.

Analyse des avantages

La stratégie d'inversion des baisses consécutives présente les avantages suivants:

  1. Sensibilité à la tendance: en comptant le nombre de barres descendantes et ascendantes consécutives, la stratégie est relativement sensible aux changements des tendances des prix et peut rapidement identifier les opportunités d'inversion potentielles.
  2. Modèle simple et clair: La stratégie est basée sur un modèle simple de hauts et de bas consécutifs, avec des règles claires et faciles à comprendre et à mettre en œuvre.
  3. Stop Loss strict: la stratégie fixe une condition de stop loss relativement stricte (le point le plus bas des prix de clôture des trois bougies les plus récentes) lors de l'ouverture d'une position, permettant une sortie rapide lorsque la tendance ne se poursuit pas, contrôlant les pertes.
  4. Paramètres réglables: le nombre de barres descendantes et ascendantes consécutives peut être ajusté en fonction des caractéristiques du marché et des instruments de négociation, ce qui augmente la flexibilité de la stratégie.

Analyse des risques

Bien que la stratégie d'inversion des baisses consécutives présente certains avantages, elle comporte toujours les risques suivants:

  1. Commerce fréquent: lorsque la volatilité du marché est élevée, les prix peuvent souvent déclencher les conditions d'entrée et de sortie de la stratégie, ce qui entraîne une augmentation du nombre de transactions et des coûts de transaction plus élevés.
  2. Placement de stop loss: la position de stop loss de la stratégie est le point le plus bas des prix de clôture des trois bougies les plus récentes, ce qui peut entraîner un stop loss trop proche du prix d'entrée, déclenchant des stop loss pendant les fluctuations normales du marché et provoquant des pertes inutiles.
  3. Risque de poursuite de la tendance: Cette stratégie capte principalement les opportunités d'inversion, mais lorsque la tendance du marché se poursuit fortement, les tendances d'inversion peuvent échouer, entraînant des pertes consécutives pour la stratégie.

Pour faire face à ces risques, les mesures d'optimisation suivantes peuvent être envisagées:

  • Ajustez dynamiquement les exigences relatives au nombre de barres descendantes et ascendantes consécutives en fonction des caractéristiques de volatilité du marché afin de réduire la fréquence des transactions.
  • Optimiser la méthode de réglage de la position stop loss, par exemple en utilisant l'ATR ou le pourcentage de stop loss, en laissant aux prix plus de marge de fluctuation.
  • Dans les environnements de marché où la tendance se maintient fortement, envisager de réduire les transactions ou de revenir à la tendance pour éviter les opérations contraires à la tendance.

Direction de l'optimisation

La stratégie d'inversion des décroissances consécutives comporte les orientations d'optimisation suivantes:

  1. Introduire plus d'indicateurs: en plus du nombre de barres descendantes et ascendantes consécutives, d'autres indicateurs techniques tels que le RSI et le MACD peuvent être combinés pour améliorer la précision des signaux d'entrée et de sortie.
  2. Optimiser le stop loss et le take profit: Actuellement, la stratégie utilise une position de stop loss fixe (le point le plus bas des prix de clôture des trois bougies les plus récentes). Des méthodes de stop loss dynamiques ou de stop loss de trailing peuvent être envisagées, telles que ATR stop loss ou trailing stop loss.
  3. Adaptez-vous à différents environnements de marché: la stratégie peut mieux fonctionner sur un marché volatil, tout en faisant face à des risques sur un marché en tendance.
  4. Incorporer la dimensionnement des positions: Actuellement, la stratégie fonctionne avec des positions complètes.
  5. Combiner avec d'autres stratégies: la stratégie d'inversion des baisses consécutives peut être combinée avec d'autres stratégies, telles que les stratégies de suivi de tendance et les stratégies d'inversion moyenne, pour former un portefeuille de stratégies et améliorer la stabilité des rendements globaux.

Grâce aux mesures d'optimisation susmentionnées, la stratégie d'inversion des baisses consécutives peut mieux s'adapter aux changements du marché, contrôler les risques et améliorer la rentabilité et la stabilité.

Résumé

La stratégie d'inversion des hausses et baisses consécutives est une stratégie de négociation quantitative basée sur la continuité des prix. En identifiant le schéma des hausses et baisses consécutives, elle capte les opportunités d'inversion du marché à court terme. Les règles de la stratégie sont simples et claires, relativement sensibles aux changements des tendances des prix et ont des conditions de stop loss strictes pour contrôler les risques.

Cependant, la stratégie comporte également certains risques, tels que des transactions fréquentes, un placement de stop loss potentiellement trop strict et éventuellement de mauvaises performances sur des marchés à forte tendance.

En outre, la stratégie comporte certaines directions d'optimisation, telles que l'introduction de plus d'indicateurs, l'optimisation du stop loss et du take profit, l'adaptation à différents environnements de marché, l'intégration de la taille des positions et la combinaison avec d'autres stratégies.

Dans l'ensemble, la stratégie d'inversion consécutive vers le bas fournit une idée de trading simple et efficace en saisissant les opportunités d'inversion de marché à court terme pour générer des bénéfices.

En conclusion, la stratégie d'inversion des baisses-hausses consécutives offre une approche simple pour tirer profit des inversions de marché à court terme. Mais dans la mise en œuvre du monde réel, elle nécessite une optimisation et une adaptation appropriées basées sur les conditions du marché et la tolérance individuelle au risque pour maximiser son efficacité en tant que stratégie de trading quantitative.


/*backtest
start: 2023-03-02 00:00:00
end: 2024-03-07 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Bottom Out Strategy", overlay=true)
consecutiveBarsUp = input(2)
consecutiveBarsDown = input(3)
price = close
ups = 0.0
ups := price > price[1] ? nz(ups[1]) + 1 : 0
dns = 0.0
dns := price < price[1] ? nz(dns[1]) + 1 : 0
var entry_bar_index = 1000000
var active = false
var stop_loss = 0.0

// === INPUT BACKTEST RANGE ===
i_from = input(defval = timestamp("01 Jan 2023 00:00 +0000"), title = "From")
i_thru = input(defval = timestamp("01 Mar 2024 00:00 +0000"), title = "Thru")
// === FUNCTION EXAMPLE ===
date() => true

entry_condition() => 
	date() and dns[2] >= consecutiveBarsDown and ups >= consecutiveBarsUp and not active

exit_condition() =>
	date() and active and (close < nz(stop_loss) or close < high - 2 * ta.atr(7))

if (entry_condition())
	strategy.entry("ConsDnLong", strategy.long, comment="CDLEntry")
	entry_bar_index := bar_index
	active := true
	stop_loss := math.min(close, close[1], close[2])
	// log.info("Entry at bar {0}, close={1}, stop_loss={2} ", entry_bar_index, close, stop_loss)
if (exit_condition())
	strategy.close("ConsDnLong", comment = "CDLClose")
	// log.info("Close at bar {0}", bar_index)
	entry_bar_index := 1000000
	active := false
// if (dns >= consecutiveBarsDown)
// 	strategy.entry("ConsDnSE", strategy.short, comment="ConsDnSE")
//plot(strategy.equity, title="equity", color=color.red, linewidth=2, style=plot.style_areabr)
plot(high - 2* ta.atr(7))

Plus de