
La stratégie de suivi de double tendance est une stratégie de trading quantitatif qui combine simultanément un double indicateur pour déterminer la tendance. Cette stratégie utilise d’abord l’indicateur de retournement 123 pour déterminer le signal de retournement de prix, puis combiné à l’indicateur de tendance directionnelle ((DTI) pour déterminer la direction de la tendance des prix, permettant ainsi un double signal de confirmation de commande.
La stratégie est principalement composée de deux volets:
123 Le principe de jugement de l’indicateur de retournement est le suivant:
Faire plus lorsque le cours de clôture est en hausse pendant 2 jours consécutifs et que la ligne K est en dessous de 50 pendant 9 jours;
Lorsque le cours de clôture est en baisse pendant 2 jours consécutifs et que la ligne K rapide est supérieure à 50 le 9e jour, laissez la position vide.
Il est donc possible de saisir le moment où les prix ont été inversés.
L’indicateur DTI est calculé comme suit: calculer la moyenne des valeurs absolues des fluctuations des prix sur une période donnée, puis diviser par l’amplitude moyenne des fluctuations.
Lorsque le DTI est supérieur à la ligne de dépassement, cela indique que la tendance est à la baisse;
Lorsque le DTI est en dessous de la marge de vente, cela indique qu’il y a une tendance à la hausse.
Il faut d’abord déterminer si un signal de revers a été donné par l’indicateur de revers 123, puis combiner l’indicateur DTI pour déterminer la direction de la tendance générale du prix après le revers.
Cela permet d’éviter les faux retournements causés par le simple recours à des signaux de retournement, ce qui améliore la stabilité et la rentabilité de la stratégie.
Confirmation du double indicateur pour éviter les risques de faux retournements
La flexibilité et la stabilité des opérations, combinées à des jugements de retournement et de tendance
Les paramètres sont optimisés et peuvent être ajustés de manière flexible pour différentes variétés
Le réglage des paramètres de DTI nécessite de l’expérience et ne peut pas être utilisé pour mal interpréter les tendances.
La reprise ne signifie pas forcément que de nouvelles tendances se forment, mais qu’il pourrait y avoir des bouleversements dans la RANGE
Il est nécessaire d’arrêter efficacement les pertes et de contrôler les pertes individuelles.
Solution: test d’optimisation des paramètres + arrêt raisonnable + combinaison avec d’autres indicateurs
Test des paramètres DTI pour trouver la meilleure combinaison de paramètres
Filtrage de faux retournements en combinaison avec d’autres indicateurs
Optimiser les stratégies de stop-loss et trouver le meilleur point de stop-loss
La double stratégie de suivi de la tendance, confirmée par le double indicateur de 123 inversions et de DTI, permet de juger efficacement la substance des inversions de prix et de capturer la nouvelle direction de la tendance, ce qui améliore la probabilité de rentabilité de la stratégie. Cependant, les paramètres de réglage et les stratégies de stop-loss doivent encore être testés et optimisés pour maximiser la marge de profit de la stratégie.
/*backtest
start: 2023-12-25 00:00:00
end: 2024-01-01 00:00:00
period: 15m
basePeriod: 5m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
////////////////////////////////////////////////////////////
// Copyright by HPotter v1.0 19/02/2020
// This is combo strategies for get a cumulative signal.
//
// First strategy
// This System was created from the Book "How I Tripled My Money In The
// Futures Market" by Ulf Jensen, Page 183. This is reverse type of strategies.
// The strategy buys at market, if close price is higher than the previous close
// during 2 days and the meaning of 9-days Stochastic Slow Oscillator is lower than 50.
// The strategy sells at market, if close price is lower than the previous close price
// during 2 days and the meaning of 9-days Stochastic Fast Oscillator is higher than 50.
//
// Second strategy
// This technique was described by William Blau in his book "Momentum,
// Direction and Divergence" (1995). His book focuses on three key aspects
// of trading: momentum, direction and divergence. Blau, who was an electrical
// engineer before becoming a trader, thoroughly examines the relationship between
// price and momentum in step-by-step examples. From this grounding, he then looks
// at the deficiencies in other oscillators and introduces some innovative techniques,
// including a fresh twist on Stochastics. On directional issues, he analyzes the
// intricacies of ADX and offers a unique approach to help define trending and
// non-trending periods.
// Directional Trend Index is an indicator similar to DM+ developed by Welles Wilder.
// The DM+ (a part of Directional Movement System which includes both DM+ and
// DM- indicators) indicator helps determine if a security is "trending." William
// Blau added to it a zeroline, relative to which the indicator is deemed positive or
// negative. A stable uptrend is a period when the DTI value is positive and rising, a
// downtrend when it is negative and falling.
//
// WARNING:
// - For purpose educate only
// - This script to change bars colors.
////////////////////////////////////////////////////////////
Reversal123(Length, KSmoothing, DLength, Level) =>
vFast = sma(stoch(close, high, low, Length), KSmoothing)
vSlow = sma(vFast, DLength)
pos = 0.0
pos := iff(close[2] < close[1] and close > close[1] and vFast < vSlow and vFast > Level, 1,
iff(close[2] > close[1] and close < close[1] and vFast > vSlow and vFast < Level, -1, nz(pos[1], 0)))
pos
TDI(r,s,u,OS,OB) =>
pos = 0.0
xHMU = iff(high - high[1] > 0, high - high[1], 0)
xLMD = iff(low - low[1] < 0, -(low - low[1]), 0)
xPrice = xHMU - xLMD
xPriceAbs = abs(xPrice)
xuXA = ema(ema(ema(xPrice, r),s),u)
xuXAAbs = ema(ema(ema(xPriceAbs, r),s),u)
Val1 = 100 * xuXA
Val2 = xuXAAbs
DTI = iff(Val2 != 0, Val1 / Val2, 0)
pos := iff(DTI > OS, -1,
iff(DTI < OB, 1, nz(pos[1], 0)))
pos
strategy(title="Combo Backtest 123 Reversal & Directional Trend Index (DTI)", shorttitle="Combo", overlay = true)
Length = input(14, minval=1)
KSmoothing = input(1, minval=1)
DLength = input(3, minval=1)
Level = input(50, minval=1)
//-------------------------
r = input(14, minval=1)
s = input(10, minval=1)
u = input(5, minval=1)
OS = input(45, minval=1)
OB = input(-45, maxval=-1)
reverse = input(false, title="Trade reverse")
posReversal123 = Reversal123(Length, KSmoothing, DLength, Level)
posTDI = TDI(r,s,u,OS,OB)
pos = iff(posReversal123 == 1 and posTDI == 1 , 1,
iff(posReversal123 == -1 and posTDI == -1, -1, 0))
possig = iff(reverse and pos == 1, -1,
iff(reverse and pos == -1 , 1, pos))
if (possig == 1)
strategy.entry("Long", strategy.long)
if (possig == -1)
strategy.entry("Short", strategy.short)
if (possig == 0)
strategy.close_all()
barcolor(possig == -1 ? #b50404: possig == 1 ? #079605 : #0536b3 )