Stratégie de rupture de momentum basée sur le suivi de tendance


Date de création: 2024-01-05 13:38:18 Dernière modification: 2024-01-05 13:38:18
Copier: 0 Nombre de clics: 695
1
Suivre
1621
Abonnés

Stratégie de rupture de momentum basée sur le suivi de tendance

Aperçu

Cette stratégie est appelée stratégie de rupture dynamique basée sur le suivi de la tendance. Cette stratégie utilise des indicateurs de super-tendance pour déterminer la direction de la tendance actuelle et, en combinaison avec la direction de l’entité de la ligne K, pour suivre la tendance et réaliser des transactions de rupture dynamique.

Principe de stratégie

La stratégie repose principalement sur l’indicateur de super-tendance (SuperTrend) pour déterminer la direction de la tendance actuelle. L’indicateur de super-tendance, combiné à l’amplitude réelle moyenne (ATR), est calculé sur la trajectoire et la trajectoire.

Lorsque l’indicateur de super-tendance est jugé comme une tendance à la hausse, si cette ligne K est une entité rouge (le prix de clôture est inférieur au prix d’ouverture), faites plus; lorsque l’indicateur de super-tendance est jugé comme une tendance à la baisse, si cette ligne K est une entité verte (le prix de clôture est supérieur au prix d’ouverture), faites zéro. Cela permet de réaliser une rupture de transaction dynamique dans le suivi de la tendance.

Analyse des avantages

Cette stratégie, combinant le jugement de la tendance et les caractéristiques de la dynamique, permet de filtrer efficacement les fausses ruptures et d’améliorer l’efficacité des signaux de négociation. En outre, le suivi de la tendance des transactions, l’évitement des opérations de contre-courant, améliore considérablement la probabilité de profit.

Les avantages sont les suivants:

  1. Le filtrage des fausses percées, combiné avec le jugement des tendances et les caractéristiques de la dynamique
  2. Suivre la direction de la tendance et éviter les transactions à contre-courant
  3. Une plus grande probabilité de profit

Analyse des risques

Les principaux risques liés à cette stratégie sont les suivants:

  1. Les paramètres de l’indicateur de tendance supérieure sont mal définis, ce qui peut entraîner une erreur de jugement de l’indicateur et un mauvais signal.
  2. Il n’est pas possible de juger de la force ou de la faiblesse d’une entité en suivant uniquement sa direction, et il peut y avoir un risque de perte.
  3. Les gains et les pertes fixes ne peuvent pas être ajustés dynamiquement et les pertes individuelles ne peuvent pas être contrôlées.

Les mesures prises sont les suivantes:

  1. Optimisation des paramètres de l’indicateur de super-tendance afin de rendre le jugement plus précis.
  2. La force d’une entité est évaluée en fonction de ses indicateurs tels que le volume de transactions, les flux de capitaux, etc.
  3. Augmentation de la stop loss dynamique pour contrôler les pertes individuelles

Direction d’optimisation

Cette stratégie peut être optimisée dans les directions suivantes:

  1. Le filtrage des signaux en combinaison avec d’autres indicateurs techniques, tels que les lignes de Brin, KDJ, etc., améliore l’efficacité de la stratégie.
  2. L’ajout d’algorithmes d’apprentissage automatique pour optimiser dynamiquement les paramètres rend l’indicateur de super-tendance plus stable.
  3. L’adhésion à un mécanisme d’arrêt des pertes permettra d’arrêter les pertes avant que les pertes ne s’élargissent.
  4. L’utilisation de variétés qui ont des caractéristiques de négociation bidirectionnelle, telles que les contrats à terme, pour tirer le meilleur parti des opportunités de négociation bidirectionnelle à la baisse ou à la hausse.

Résumer

Cette stratégie est généralement très adaptée à la tenue de positions à court et à moyen terme. Combinant le jugement de la tendance et les caractéristiques de la dynamique de rupture, elle permet de filtrer efficacement le bruit et d’améliorer le taux de réussite des transactions. Il existe également une certaine marge d’optimisation des paramètres de la stratégie, qui permet d’obtenir de meilleurs résultats stratégiques grâce à une optimisation supplémentaire.

Code source de la stratégie
/*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"}]
*/

//Noro
//2018

//@version=2
strategy("Noro's SuperTrend Strategy v1.0", shorttitle = "ST str 1.0", overlay = true, default_qty_type = strategy.percent_of_equity, default_qty_value = 100, pyramiding = 0)

//Settings
needlong = input(true, defval = true, title = "Long")
needshort = input(true, defval = true, title = "Short")
capital = input(100, defval = 100, minval = 1, maxval = 10000, title = "Lot, %")
cloud = input(25, defval = 25, minval = 5, maxval = 50, title = "cloud, % of ATR")
Factor = input(title = "Super Trend", defval = 3, minval = 1, maxval = 100)
ATR = input(title = "ATR", defval = 7, minval = 1,maxval = 100)
centr = input(true, defval = true, title = "need center of ATR?")
border = input(false, defval = false, title = "need border?")
fromyear = input(1900, defval = 1900, minval = 1900, maxval = 2100, title = "From Year")
toyear = input(2100, defval = 2100, minval = 1900, maxval = 2100, title = "To Year")
frommonth = input(01, defval = 01, minval = 01, maxval = 12, title = "From Month")
tomonth = input(12, defval = 12, minval = 01, maxval = 12, title = "To Month")
fromday = input(01, defval = 01, minval = 01, maxval = 31, title = "From day")
today = input(31, defval = 31, minval = 01, maxval = 31, title = "To day")

//Super Trend ATR 1
src = close
Up=hl2-(Factor*atr(ATR))
Dn=hl2+(Factor*atr(ATR))
TUp=close[1]>TUp[1]? max(Up,TUp[1]) : Up
TDown=close[1]<TDown[1]? min(Dn,TDown[1]) : Dn
Trend = close > TDown[1] ? 1: close< TUp[1]? -1: nz(Trend[1],1)
Tsl1 = Trend==1? TUp: TDown
Tsl2 = Trend==1? TDown: TUp
limit = (Tsl1 - Tsl2) / 100 * cloud
upcloud = Tsl1 - limit
dncloud = Tsl2 + limit

//Cloud
linecolor = Trend == 1 ? green : red
centercolor = centr == true ? blue : na
cloudcolor = Trend == 1 ? green : red
cline = (Tsl1 + Tsl2) / 2
P1 = plot(Tsl1, color = border == false ? na : linecolor , style = line , linewidth = 1,title = "SuperTrend ATR-1")
P2 = plot(Tsl2, color = border == false ? na : linecolor , style = line , linewidth = 1,title = "SuperTrend ATR-2")
P3 = plot(cline, color = centercolor , style = line , linewidth = 1,title = "SuperTrend Center")
P4 = plot(upcloud, color = border == false ? na : linecolor , style = line , linewidth = 1,title = "SuperTrend Center+1")
P5 = plot(dncloud, color = border == false ? na : linecolor , style = line , linewidth = 1,title = "SuperTrend Center-1")
fill(P1, P4, color = linecolor == red ? red : lime, transp = 50)
fill(P2, P5, color = linecolor == red ? red : lime, transp = 50)

//Signals
up = Trend == 1 and close < open //and low < cline 
dn = Trend == -1 and close > open //and high > cline

//Trading
size = strategy.position_size
lot = 0.0
lot := size == 0 ? strategy.equity / close * capital / 100 : lot[1]
if up
    strategy.entry("Long", strategy.long, needlong ? lot : 0)

if dn
    strategy.entry("Short", strategy.short, needshort ? lot : 0)