Système de percée en cas de double survente


Date de création: 2023-10-27 16:22:08 Dernière modification: 2023-10-27 16:22:08
Copier: 0 Nombre de clics: 677
1
Suivre
1617
Abonnés

Système de percée en cas de double survente

Aperçu

Le système de double surplus-dépôt est une stratégie quantitative qui combine le suivi de la tendance et le trading de la reprise. Cette stratégie génère un signal d’achat en calculant si des signaux de surplus-dépôt se produisent en continu N jours avant la clôture du cours de l’action, et en combinant le calcul d’une moyenne mobile T3 avec des paramètres spécifiques pour générer des signaux de vente et protéger les bénéfices.

Principe de stratégie

La stratégie est composée de deux volets:

  1. Système de rétroaction

Le système inverse observe les variations du prix de clôture au cours des N derniers jours, et si le prix de clôture d’aujourd’hui est plus élevé que celui de la veille, et si le prix de clôture de la veille est plus bas que celui des deux jours précédents, il est considéré comme un signal de dépassement de deux jours consécutifs, ce système génère un signal d’achat. En outre, le système est associé à l’indicateur STOCH, qui confirme davantage la validité du signal d’achat si la ligne rapide STOCH d’aujourd’hui est inférieure à la ligne lente.

  1. T3 moyenne mobile

Les moyennes mobiles T3 sont calculées en fonction d’une formule de calcul, combinée à une moyenne mobile indicielle du prix. Elle régule la sensibilité des moyennes mobiles aux variations de prix par certains paramètres. Lorsqu’une moyenne mobile T3 est traversée par le prix, un signal de vente est généré.

La stratégie synthétise les deux parties de signaux ci-dessus et produit un véritable signal de transaction correspondant lorsqu’il est satisfait à la fois du signal d’achat de 123 inverse et du signal de vente de la moyenne mobile T3.

Analyse des avantages

  • Stratégie de trading inverse, adaptée aux achats de fond et au suivi des mouvements de rebond au-delà des baisses
  • La stratégie des moyennes mobiles est un bon moyen de localiser les bénéfices et d’éviter les risques.
  • La combinaison de doubles signaux peut améliorer l’efficacité du signal et réduire les faux signaux.
  • Les avantages du suivi des tendances et de l’inversion
  • Les paramètres sont réglables et peuvent être adaptés à différentes situations

Analyse des risques

  • Les signaux inversés peuvent entraîner des erreurs de jugement et des pertes commerciales
  • Une mauvaise configuration des paramètres peut entraîner des transactions fréquentes, augmenter les coûts de transaction et les coûts des points de glissement
  • Les signaux de vente générés par les moyennes mobiles peuvent précipiter les gains
  • Le risque d’arrêt des opérations est toujours présent en cas de changement de situation
  • Paramètres d’optimisation nécessaires pour sélectionner les meilleurs paramètres pour les différentes variétés

Les mesures suivantes peuvent être prises pour gérer les risques:

  1. Adapter les paramètres de la transaction inversée de manière appropriée pour assurer l’efficacité du signal
  2. Ajuster les paramètres des moyennes mobiles pour prolonger le temps de tenue approprié
  3. Augmenter les stratégies de stop-loss et réduire les pertes individuelles
  4. Sélection des paramètres d’optimisation, sélection des paramètres pour les différentes variétés

Direction d’optimisation

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

  1. Augmentation des conditions de filtrage pour assurer la validité des signaux de négociation

Il est possible d’ajouter d’autres indicateurs techniques comme conditions de filtrage sur la base de la stratégie initiale, comme des conditions de rupture pour augmenter le volume de transactions, afin d’éviter les transactions erronées causées par le bruit.

  1. Adaptation des paramètres à l’environnement du marché

Il est possible d’effectuer des retours sur plusieurs combinaisons de paramètres, en choisissant la combinaison qui correspond le mieux au rendement le plus élevé, afin d’optimiser l’effet de la stratégie. Il est également possible de définir des paramètres dynamiques, qui s’adaptent en temps réel en fonction de la situation du marché.

  1. Optimisation de l’adaptation des stratégies avec l’apprentissage automatique

Par exemple, il est possible de collecter de grandes quantités de données historiques, d’utiliser des modèles de formation à l’apprentissage automatique pour prédire le meilleur moment pour acheter ou vendre et d’optimiser les paramètres de la stratégie en temps réel.

  1. Définition de paramètres indépendants en fonction des caractéristiques des différentes variétés

Les caractéristiques des variétés varient et les paramètres appropriés peuvent varier. Les paramètres indépendants peuvent être définis en fonction des données de différentes variétés.

Résumer

Le système de rupture de double revirement combinant le suivi de la tendance et le revirement de la tendance. Il permet d’acheter des prix plus bas pendant la phase de revirement et de s’arrêter en temps opportun après avoir profité de la tendance. La combinaison efficace de signaux de revirement et de signaux de tendance permet d’obtenir efficacement des opportunités de revirement et de verrouiller les bénéfices. Bien que certains risques subsistent, il est possible d’améliorer la stratégie en optimisant les paramètres, en ajoutant des conditions de filtrage, etc., pour s’adapter à différents environnements de marché.

Code source de la stratégie
/*backtest
start: 2023-09-26 00:00:00
end: 2023-10-26 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 16/09/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
// This indicator plots the moving average described in the January, 1998 issue
// of S&C, p.57, "Smoothing Techniques for More Accurate Signals", by Tim Tillson.
// This indicator plots T3 moving average presented in Figure 4 in the article.
// T3 indicator is a moving average which is calculated according to formula:
//     T3(n) = GD(GD(GD(n))),
// where GD - generalized DEMA (Double EMA) and calculating according to this:
//     GD(n,v) = EMA(n) * (1+v)-EMA(EMA(n)) * v,
// where "v" is volume factor, which determines how hot the moving average’s response
// to linear trends will be. The author advises to use v=0.7.
// When v = 0, GD = EMA, and when v = 1, GD = DEMA. In between, GD is a less aggressive
// version of DEMA. By using a value for v less than1, trader cure the multiple DEMA
// overshoot problem but at the cost of accepting some additional phase delay.
// In filter theory terminology, T3 is a six-pole nonlinear Kalman filter. Kalman
// filters are ones that use the error — in this case, (time series - EMA(n)) — 
// to correct themselves. In the realm of technical analysis, these are called adaptive
// moving averages; they track the time series more aggres-sively when it is making large
// moves. Tim Tillson is a software project manager at Hewlett-Packard, with degrees in
// mathematics and computer science. He has privately traded options and equities for 15 years.  
//
// 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


T3A(Length, b) =>
    pos = 0.0
    xPrice = close
    xe1 = ema(xPrice, Length)
    xe2 = ema(xe1, Length)
    xe3 = ema(xe2, Length)
    xe4 = ema(xe3, Length)
    xe5 = ema(xe4, Length)
    xe6 = ema(xe5, Length)
    c1 = -b*b*b
    c2 = 3*b*b+3*b*b*b
    c3 = -6*b*b-3*b-3*b*b*b
    c4 = 1+3*b+b*b*b+3*b*b
    nT3Average = c1 * xe6 + c2 * xe5 + c3 * xe4 + c4 * xe3
    pos:= iff(nT3Average > close, -1,
           iff(nT3Average < close, 1, nz(pos[1], 0))) 
    pos

strategy(title="Combo Backtest 123 Reversal & T3 Averages", 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, "---- T3 Averages ----")
LengthT3 = input(5, minval=1)
b = input(0.7, minval=0.01,step=0.01) 
reverse = input(false, title="Trade reverse")
posReversal123 = Reversal123(Length, KSmoothing, DLength, Level)
posT3A = T3A(LengthT3, b)
pos = iff(posReversal123 == 1 and posT3A == 1 , 1,
	   iff(posReversal123 == -1 and posT3A == -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 )