La journée précédente s'est terminée avec la stratégie de suivi des tendances d'ATR

Auteur:ChaoZhang est là., Date: 2024-01-31 14h39
Les étiquettes:

img

Résumé

Cette stratégie fixe des niveaux de prix d'entrée longs et courts et des niveaux de prix de stop loss basés sur le prix de clôture de la journée précédente et l'indicateur ATR pour suivre la tendance.

La logique de la stratégie

Cette stratégie utilise l'indicateur de prix de clôture, de prix élevé, de prix bas et d'ATR de la journée précédente pour calculer les niveaux de prix d'entrée et les niveaux de stop loss.

Niveau de prix d'entrée long TPup = clôture de la journée précédente s + ATR * 0,8
Niveau de prix d'entrée court TPdown = clôture de la journée précédente - ATR * 0,8

Le niveau d'arrêt-perte à long terme s'est effondré = la clôture de la journée précédente + ATR * 0,2
Le niveau de stop-loss court sldown = clôture de la journée précédente - ATR * 0,2

Niveau de prise de bénéfices à long termeniveau de bénéfices à la hausse = Basse de la journée précédente + ATR * 1,7
Niveau de prise de bénéfices à court termeNiveau de bénéfices à la baisse = Hauts de la journée précédente - ATR * 1,7

Lorsque le prix dépasse le TPup, passez long 10 lots. Lorsque le prix dépasse le TPdown, passez court 10 lots. Ensuite, définissez un stop loss et un profit. Sortez des positions sur le déclencheur de stop loss ou le déclencheur de profit.

Analyse des avantages

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

  1. Utiliser l'indicateur ATR pour définir des niveaux dynamiques de prix d'entrée et des niveaux de stop loss basés sur la volatilité du marché, ce qui rend les transactions plus adaptables aux conditions du marché.

  2. Utilisation des jours précédents de clôture pour déterminer la direction et combinaison avec l'indicateur ATR pour identifier des niveaux de négociation spécifiques, en évitant d'être induit en erreur par un bruit de prix trop important en temps réel.

  3. Définir à la fois des mécanismes de stop loss et de prise de profit pour contrôler efficacement le risque de chaque transaction.

Analyse des risques

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

  1. Les niveaux de prix fixés par ATR peuvent être trop idéalistes pour refléter réellement les conditions du marché, ce qui entraîne des déclencheurs de stop loss fréquents.

  2. Les résultats de la clôture de la journée précédente ne peuvent pas déterminer les tendances futures. Des inversions drastiques peuvent induire en erreur les choix de direction. D'autres indicateurs peuvent être combinés pour confirmer les tendances.

  3. Le stop loss et le take profit peuvent être manipulés pour déclencher, sans vraiment arrêter la perte.

Directions d'optimisation

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

  1. Optimiser les paramètres ATR pour que les niveaux des échanges correspondent mieux à la volatilité du marché.

  2. Ajouter des mécanismes de jugement des tendances pour éviter les renversements de négociation, par exemple en les combinant avec des indicateurs MA.

  3. Ajustez la fourchette de prise de profit, en maintenant la rentabilité tout en réduisant la probabilité de déclencheurs de prise de profit.

  4. Mettre en place un stop-loss et une prise de profit de lot pour réduire la probabilité d'être pris au piège ou de perdre.

  5. Ajouter un mécanisme de dimensionnement des positions pour augmenter les positions dans les phases de tendance.

Conclusion

Cette stratégie définit des niveaux de trading dynamiques basés sur la clôture des jours précédents et l'ATR pour suivre efficacement les tendances. Elle utilise également le stop loss et le take profit pour contrôler les risques commerciaux uniques.


/*backtest
start: 2023-12-01 00:00:00
end: 2023-12-31 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=3
strategy("PC with ATR Strategy (by Zhipengcfel)", shorttitle="PC_ATR", pyramiding=1, overlay=true)

// Zhipengcfel's Previous day's close with ATR Strategy
//
// Version 1.0
// @copyright Idea by Zhipengcfel on June 29, 2017.

//Previous day's close plus ATR strategy. 
//Buy (if breaking PC+ATR*0.8) or sell (if breaking PC-0.8*ATR). 

//This is just a demo vision and can not be used for real auto trading



///////////// ATR value
ATRlength = input(14, minval=1, title="lookback length of ATR")
//ATR = atr(ATRlength)
ATR = request.security(syminfo.tickerid, 'D', atr(ATRlength))

///////////// Entry levels and target levels
entr = input(0.8, minval=0.1, step = 0.05, title="Entry level for ATR")
tplevel = input(1.7, minval=0.1, step = 0.05, title="Exit level for ATR")
yesterday = request.security(syminfo.tickerid, 'D', close[1])
dl = request.security(syminfo.tickerid, 'D', low[1])
dh = request.security(syminfo.tickerid, 'D', high[1])
TPup = yesterday+entr*ATR
TPdown = yesterday-entr*ATR
profitlevelup = dl+tplevel*ATR
profitleveldown = dh-tplevel*ATR

///////////// Stop loss level
sl = input( 0.2  ,minval=0.01, step = 0.05, title="Stop loss level for ATR") //82 for 2, 83 for 3 and more positions
slup = yesterday+sl*ATR
sldown = yesterday-sl*ATR

///////////// Starting year to backtest
yer = input( 2014  , title="Backtest Starting year")


///////////// strategy: PC + ATR
if (close > TPup) and (close < profitlevelup)
    strategy.entry("LONG", strategy.long, 10, comment="Buy", when = year > yer, oca_name="My oca")
    strategy.exit("Stopped", "LONG",  stop = slup, limit= profitlevelup, oca_name="My oca")
            

if (close < TPdown) and (close > profitleveldown)
    strategy.entry("SHORT", strategy.short, 10, comment="Sell", when = year > yer, oca_name="My oca")
    strategy.exit("Stopped", "SHORT", stop = sldown, limit= profitleveldown, oca_name="My oca")
 

Plus de