Stratégie de rupture de tendance forte

Auteur:ChaoZhang est là., Date: 2023-10-30 14:53:32
Les étiquettes:

img

Résumé

Cette stratégie calcule le plus haut plus haut et le plus bas plus bas sur une certaine période pour former des bandes supérieures et inférieures. Il va long lorsque le prix dépasse la bande supérieure et ferme la position lorsque le prix dépasse la bande inférieure.

La logique de la stratégie

La stratégie calcule d'abord le plus haut plus haut et le plus bas plus bas au cours des 20 dernières barres pour former les bandes supérieures et inférieures.

Plus précisément, la stratégie utilise les fonctions le plus haut et le plus bas pour calculer le plus haut et le plus bas des 20 dernières barres, formant une plage. Elle vérifie ensuite si le prix de clôture de la barre actuelle est au-dessus de la bande supérieure. Si oui, elle va long. Si le prix dépasse la bande inférieure, elle quitte la position.

La stratégie repose sur les ruptures de tendance pour déterminer les signaux d'entrée.

Analyse des avantages

La stratégie présente les avantages suivants:

  1. La logique de la stratégie est simple et facile à comprendre.

  2. Il capture les phases de tendance fortes en négociant des ruptures de tendance.

  3. Il utilise un stop loss mobile pour contrôler les risques et limiter les pertes.

  4. Il ne va que long et ne court pas, adapté aux marchés tendance.

  5. Paramètres personnalisables pour la durée de la période et le stop loss.

Analyse des risques

La stratégie comporte également les risques suivants:

  1. Il ne peut pas identifier les renversements de tendance et peut entraîner des achats au sommet.

  2. Le stop loss peut être facilement déclenché par de grands écarts de prix instantanés.

  3. Il peut générer plusieurs petites pertes lorsque la tendance change.

  4. Il ne dure que longtemps et ne peut pas tirer profit des tendances à la baisse.

  5. Des paramètres mal réglés peuvent provoquer une sursensibilité ou une lenteur.

Directions d'optimisation

La stratégie peut être améliorée dans les domaines suivants:

  1. Ajouter des indicateurs d'identification des tendances pour éviter les opérations contre des renversements.

  2. Optimiser la stratégie de stop loss pour un meilleur contrôle des risques.

  3. Ajoutez la logique de position courte pour profiter des tendances à la baisse.

  4. Testez et optimisez les paramètres pour trouver la meilleure combinaison.

  5. Ajouter une optimisation dynamique des paramètres en fonction des conditions du marché.

  6. Incorporer des analyses sur plusieurs délais afin d'éviter d'être induit en erreur par un seul délais.

Résumé

La stratégie a une logique claire et simple, capturant des tendances fortes par le biais de ruptures. Elle contrôle le risque via un stop loss. Cependant, elle présente également certaines faiblesses telles qu'un jugement de tendance inexact et un stop loss déclenché. Nous pouvons l'améliorer en améliorant l'identification des tendances, la stratégie de stop loss, les positions courtes et l'optimisation des paramètres pour rendre la stratégie plus robuste.


/*backtest
start: 2023-10-22 00:00:00
end: 2023-10-24 17:00:00
period: 5m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
strategy("Donchian Wicks Strategy - Long Only with Customizable Donchian Exit and Stop Loss", "DWS", overlay = true)

// INPUTS
iLength = input(20, "Length", minval = 1)
stopLossPercent = input(1.0, "Stop Loss Percentage", type=input.float) / 100

// SETTING
float up = na
up := close > open ? high : nz(up[1])
float down = na
down := close < open ? low : nz(down[1])

highest = highest(up, iLength)
lowest = lowest(down, iLength)

// PLOT
p1 = plot(highest, "Highest", color.black, 2)
p2 = plot(lowest, "Lowest", color.black, 2)
fill(p1, p2, color.new(color.navy, 90), title="Range")

// ENTRY SIGNALS
wickDown = low < lowest

// STRATEGY IMPLEMENTATION
strategy.entry("Buy", strategy.long, when = wickDown)
strategy.exit("Sell at Donchian High", from_entry="Buy", limit=highest)

// Customizable Stop Loss
stopLossLevel = close * (1 - stopLossPercent)
strategy.exit("Stop Loss", from_entry="Buy", stop=stopLossLevel)


Plus de