La double stratégie de suivi de tendance utilise deux signaux stratégiques différents pour capturer plus précisément les tendances du marché et ainsi obtenir des gains supplémentaires. La stratégie utilise d’abord une stratégie de retournement 123 pour déterminer les signaux de retournement de prix, puis, combinée à un indicateur de survente et de survente, pour déterminer la direction de la position, tout en évitant d’être piégé.
La stratégie est composée de deux volets:
123 La stratégie de retournement juge d’abord la relation entre les prix de clôture des deux jours précédents, et si les prix de clôture des deux derniers jours ont été retournés (par exemple, les prix de clôture de la veille ont augmenté et les prix de clôture des deux jours précédents ont baissé), cela indique qu’il peut y avoir un retournement.
Deuxièmement, la stratégie est combinée avec l’indicateur Stoch pour déterminer le moment de l’achat et de la vente. Lorsque la ligne rapide de Stoch est en dessous d’un certain niveau (par exemple 50) et la ligne lente supérieure à la ligne rapide, elle est considérée comme en survente, générant un signal d’achat; lorsque la ligne rapide de Stoch est supérieure à un certain niveau (par exemple 50) et la ligne lente inférieure à la ligne rapide, elle est considérée comme en survente, générant un signal de vente.
Par conséquent, une stratégie de revers 123 nécessite une validation de l’indicateur Stoch pour produire un véritable signal d’achat ou de vente, tout en déterminant la reversation du prix.
L’indicateur de survente est utilisé directement par l’indicateur de Stoch. Lorsqu’il est supérieur à un certain niveau (comme 90), il est considéré comme un signal de vente.
L’indicateur est utilisé pour juger directement les zones de survente et de survente par l’indicateur Stoch, ce qui permet de suivre la tendance.
Finalement, la stratégie combine les deux signaux stratégiques ci-dessus pour produire un signal d’achat ou de vente final qui capte plus précisément les tendances du marché.
Le plus grand avantage de la stratégie de suivi de double tendance réside dans la possibilité de vérifier à la fois la tendance des prix et les conditions de survente et de survente, afin d’éviter que les signaux de négociation ne soient erronés. Les avantages spécifiques sont les suivants:
La combinaison de deux signaux stratégiques permet de renforcer les mécanismes de vérification et de réduire les pertes dues aux erreurs de jugement d’une seule stratégie.
Les stratégies d’inversion permettent de détecter les signaux d’inversion des prix et de saisir en temps opportun les points de retournement potentiels.
L’indicateur de survente permet de vérifier l’état actuel du marché et d’éviter de suivre les hauts et les bas.
Les deux stratégies peuvent être mutuellement vérifiées, ce qui évite les erreurs de signaux de négociation et améliore la stabilité de la stratégie.
L’utilisation d’indicateurs simples et efficaces est combinée à une logique stratégique claire et compréhensible, facile à appliquer.
Bien que la stratégie ait permis d’améliorer la stabilité grâce à la vérification de la combinaison, il existe des risques à prendre en compte:
Les stratégies de retournement ne peuvent pas déterminer parfaitement le point de retournement du prix et peuvent manquer certaines opportunités de retournement. Les paramètres peuvent être ajustés de manière appropriée pour abaisser le seuil de jugement du signal de retournement.
Les indicateurs de survente basés sur un seul indicateur Stoch peuvent générer de faux signaux. Des indicateurs tels que les moyennes mobiles peuvent être ajoutés pour vérifier.
Les deux signaux stratégiques peuvent se neutraliser l’un l’autre, ce qui entraîne des opportunités de trading manquées. Les paramètres peuvent être ajustés de manière appropriée, ce qui réduit les contraintes de la combinaison de stratégies.
La stratégie est basée uniquement sur la rétro-analyse des données historiques, les paramètres en disque dur doivent être constamment testés et optimisés. Un mécanisme de contrôle des pertes devrait être ajouté pour contrôler les pertes.
Les paramètres de différentes variétés et périodes de négociation nécessitent une optimisation de test indépendante et ne peuvent pas être entièrement reproduits.
Il est possible de continuer à optimiser cette stratégie dans les domaines suivants:
Optimiser les paramètres des deux stratégies, trouver des combinaisons de paramètres dans des conditions de marché différentes, formant un pool de paramètres pour la sélection du programme d’optimisation.
Ajout de conditions de filtrage basées sur des indicateurs tels que les moyennes mobiles, les bandes de Bryn pour éviter les faux signaux.
Augmentation des mécanismes d’arrêt des pertes, tels que l’arrêt de l’accélération de la mort, l’arrêt du mouvement, l’arrêt du temps, etc., pour un maximum de retrait de la stratégie de contrôle.
Les différentes variétés peuvent envisager d’ajouter des filtres sur le volume de transactions ou le nombre de détentions, afin d’éviter les transactions à faible liquidité.
Les paramètres de la stratégie peuvent être étudiés pour voir comment ils évoluent dans le temps, et les paramètres peuvent être automatiquement optimisés à l’aide d’une méthode d’apprentissage automatique.
Optimiser le nombre d’entrées et éviter les transactions fréquentes dans des marchés sans tendance claire.
La stratégie de suivi de tendance double permet de déterminer avec précision si le cours est actuellement en cours de survente ou de survente en combinant la stratégie de 123 inversion et l’indicateur de survente et de survente, tout en vérifiant si la tendance des prix est en cours de reprise, afin de filtrer les signaux erronés. La stratégie de capture de tendance réelle apporte un gain supplémentaire.
/*backtest
start: 2022-09-20 00:00:00
end: 2023-09-26 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
////////////////////////////////////////////////////////////
// Copyright by HPotter v1.0 30/03/2021
// 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
// Simple Overbought/Oversold indicator
//
// 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
OO(Length,BuyBand,SellBand) =>
pos = 0.0
xOBOS = stoch(close, high, low, Length)
nRes = iff(close > close[Length], xOBOS / 100, (100 - xOBOS) / 100)
pos :=iff(nRes < SellBand, -1,
iff(nRes > BuyBand, 1, nz(pos[1], 0)))
pos
strategy(title="Combo Backtest 123 Overbought/Oversold", shorttitle="Combo", overlay = true)
line1 = input(true, "---- 123 Reversal ----")
Length = input(14, minval=1)
KSmoothing = input(1, minval=1)
DLength = input(3, minval=1)
Level = input(50, minval=1)
//-------------------------
line2 = input(true, "---- Overbought/Oversold ----")
LengthOO = input(10, minval=1)
BuyBand = input(0.92, step = 0.01)
SellBand = input(0.5, step = 0.01)
reverse = input(false, title="Trade reverse")
posReversal123 = Reversal123(Length, KSmoothing, DLength, Level)
posOO = OO(LengthOO,BuyBand,SellBand)
pos = iff(posReversal123 == 1 and posOO == 1 , 1,
iff(posReversal123 == -1 and posOO == -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 )