Stratégies de rupture basées sur la méthode de trading de la tortue


Date de création: 2023-10-17 17:22:34 Dernière modification: 2023-10-17 17:22:34
Copier: 2 Nombre de clics: 920
1
Suivre
1617
Abonnés

Stratégies de rupture basées sur la méthode de trading de la tortue

Aperçu

Cette stratégie est basée sur la célèbre méthode de négociation de la mer, qui utilise l’indicateur de la chaîne de Donchian pour déterminer la rupture des prix et, en combinaison avec l’indicateur ATR, pour définir le point de rupture, pour réaliser le suivi de la tendance. L’avantage de la stratégie est la capacité de contrôle des retraits, capable de contrôler efficacement les arrêts simples et de réduire la probabilité de pertes continues.

Le principe

La stratégie est basée sur deux indicateurs principaux: le canal Donchian et l’ATR.

Le canal Donchian est calculé à partir du prix le plus élevé et le prix le plus bas. La stratégie définit par défaut la longueur du canal comme étant de 20 jours. Le canal est dessiné avec le prix le plus élevé et le prix le plus bas sur une période de 20 jours.

L’indicateur ATR est utilisé pour mesurer la volatilité du marché et définir des arrêts. Le cycle ATR par défaut est de 20 jours. La stratégie utilise deux fois l’ATR comme point d’arrêt.

La logique de l’opération est la suivante:

  1. Il est possible de faire une entrée supplémentaire lorsque le prix dépasse le canal.

  2. Le point d’arrêt est le point bas de l’entrée moins le double de l’ATR.

  3. Lorsque le prix dépasse le canal en dessous, la position plurielle est levée.

  4. Lorsque le cours dépasse le niveau inférieur du canal, il est possible de faire une entrée en bourse.

  5. Le stop loss est le maximum de l’entrée plus le double de l’ATR.

  6. Lorsque le prix franchit la ligne supérieure du canal, la position de tête est vide.

En résumé, la stratégie s’appuie sur le canal Donchian pour déterminer la direction de la tendance et le moment d’entrée, le contrôle des risques avec le paramètre ATR Stop Loss et le suivi de la tendance.

Analyse des avantages

Les principaux avantages de cette stratégie sont les suivants:

  1. Le contrôle de rétractation est puissant. L’indicateur ATR est utilisé pour régler le stop loss, ce qui permet de contrôler efficacement les pertes individuelles.

  2. Le suivi de la tendance est possible. Les canaux Donchian permettent de détecter efficacement les ruptures de prix et d’indiquer la conversion de la tendance.

  3. Convient aux variétés à forte volatilité. L’indicateur ATR prend en compte la volatilité du marché et les paramètres de stop-loss sont plus adaptés aux caractéristiques des différentes variétés.

  4. La stratégie est simple, claire et facile à comprendre.

  5. Des stratégies d’écriture et d’optimisation flexibles en Python sont disponibles.

Analyse des risques

Il y a aussi des risques à prendre en compte:

  1. Les paramètres du canal doivent être optimisés. Selon les variétés et les périodes de temps, les paramètres du canal doivent être adaptés aux caractéristiques du marché.

  2. Risque de stop-loss en série. Dans des circonstances anormales, plusieurs stop-loss peuvent être déclenchés dans un court laps de temps, entraînant des pertes plus importantes.

  3. Les paramètres ATR doivent être testés. Les paramètres ATR influencent directement l’effet d’arrêt des pertes et doivent être ajustés selon les variétés et les environnements de fluctuation.

  4. La fréquence des transactions peut être trop élevée. Dans les marchés instables où la tendance n’est pas évidente, il peut y avoir trop de signaux de croisement.

  5. Les profits peuvent être limités. La stratégie est centrée sur la stop loss et ne peut pas capturer efficacement la totalité de la hausse de la tendance.

  6. Dans certains cas exceptionnels, des hausses de prix peuvent déclencher directement des pertes.

Direction d’optimisation

Cette stratégie peut être optimisée dans les domaines suivants:

  1. Optimiser les paramètres du canal pour tester l’adaptation de différents paramètres à différentes variétés.

  2. Augmentation des conditions de filtrage pour éviter une surproduction de signaux dans des conditions de choc. Un filtrage de la marge de rupture ou du volume des transactions peut être envisagé.

  3. Optimiser les paramètres du cycle ATR et tester l’influence des différents paramètres sur l’effet de stop-loss.

  4. L’augmentation de la stratégie d’entrée pyramidale, l’ajout de positions dans les tendances, l’élargissement de la marge de profit.

  5. En combinaison avec d’autres indicateurs, améliore l’efficacité du filtrage. Les indicateurs tels que le MACD, le KD et d’autres évaluent la tendance et évitent le trading inversé.

  6. Optimisation des coûts de transaction en fonction des points de glissement, des frais de traitement, etc.

  7. Tester l’adaptation de différentes variétés, en ajustant les paramètres pour une variété spécifique.

Résumer

Cette stratégie est une version d’introduction de la méthode de négociation de la mer, qui est généralement simple et claire, avec une forte capacité de contrôle de rétractation, qui permet de vérifier efficacement les principes de la méthode de négociation de la mer. Cependant, la stratégie est moins adaptée aux variétés de négociation et nécessite des paramètres spécifiques optimisés en fonction des différentes variétés pour que la stratégie soit efficace.

Code source de la stratégie
/*backtest
start: 2022-10-10 00:00:00
end: 2023-10-16 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=3
//Based on Turtle traders strategy: buy/sell on Donchian breakouts and stop loss on ATR 2x
// initial version considerations :
//// 1. Does not consider filter for avoiding new entries after winning trades (filtering rule from Turtle Strategy on 20 day breakout strategy) 
//// 2. Does not consider pyramiding (aditional entries after 1N price movements)

strategy("Turtle trading strategy (Donchian/ATR)", overlay=true)

enter_period = input(20, minval=1, title="Enter Channel")
exit_period = input(10, minval=1, title="Exit Channel")
offset_bar = input(0,minval=0, title ="Offset Bars")
direction = input("Long",options=["Long","Short"],title="Direction")
max_length = max(enter_period,exit_period)
atrmult = input(2,title="ATR multiplier (Stop Loss)")
atrperiod = input(20,title="ATR Period")

closed_pos = false
dir_long = direction == "Long"? true : false
atr = atr(atrperiod)
upper = dir_long ? highest(enter_period): highest(exit_period)
lower = dir_long ? lowest(exit_period): lowest(enter_period)
atrupper = close + atr
atrlower = close - atr
plotted_atr = dir_long ? atrlower : atrupper

//basis = avg(upper, lower)

l = plot(lower, style=line, linewidth=3, color=lime, offset=1)
u = plot(upper, style=line, linewidth=3, color=lime, offset=1)
a = plot(plotted_atr, style=line,linewidth=2,color=red,offset=1)
//plot(basis, color=yellow, style=line, linewidth=1, title="Mid-Line Average")
//break upper Donchian (with 1 candle offset) (buy signal)
break_up = (close >= upper[1])
//break lower Donchian (with 1 candle offset) (sell signal)
break_down = (close <= lower[1])
stop_loss = dir_long ? (close<=plotted_atr[1]) : (close>=plotted_atr[1])

if break_up and dir_long
    strategy.entry("buy", strategy.long, 1)
    closed_pos :=false
if (break_down or stop_loss) and dir_long
    strategy.close("buy")
    
if break_down and not dir_long
    strategy.entry("sell", strategy.short, 1)
    closed_pos :=false
if (break_up or stop_loss) and not dir_long
    strategy.close("sell")
    closed_pos :=true
    
losing_trade = strategy.equity[0]<strategy.equity[1]
//plotshape(losing_trade,text="Losing!")    
plotshape(stop_loss,style=dir_long?shape.labeldown:shape.labelup,text="Stop!")
//plot(strategy.equity)