Cette stratégie conçoit un système de trading suivant la tendance basé sur l'indicateur de moyenne mobile T3. Elle peut identifier automatiquement la direction des tendances des prix et prendre les positions longues ou courtes correspondantes.
L'indicateur T3 est une moyenne mobile adaptative avec une sensibilité plus élevée qui peut répondre plus rapidement aux changements de prix.
T3 (n) = GD (n)
où GD représente la DEMA généralisée (double moyenne mobile exponentielle), calculée comme suit:
Le taux de conversion est calculé en fonction de l'indice de conversion de l'émetteur.
v est le facteur de volume, qui détermine la sensibilité de la réponse de la moyenne mobile
La stratégie compare l'indicateur T3 avec le prix. Lorsque T3 traverse au-dessus du prix, il détermine une tendance à la hausse et va long. Lorsque T3 traverse en dessous du prix, il détermine une tendance à la baisse et va court.
Cette situation peut être atténuée en ajustant les paramètres de T3 ou en ajoutant d'autres indicateurs de filtration, ainsi qu'en réglant le stop loss pour contrôler les pertes uniques.
La stratégie détermine automatiquement la direction de la tendance des prix à travers l'indicateur T3, sans avoir besoin d'un jugement manuel, et peut automatiquement aller long ou court.
/*backtest start: 2023-12-18 00:00:00 end: 2024-01-17 00:00:00 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=2 //////////////////////////////////////////////////////////// // Copyright by HPotter v1.00 29/11/2017 // 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. // // You can change long to short in the Input Settings // WARNING: // - For purpose educate only // - This script to change bars colors. //////////////////////////////////////////////////////////// strategy(title="T3 Averages", shorttitle="T3", overlay = true) Length = input(5, minval=1) b = input(0.7, minval=0.01,step=0.01) reverse = input(false, title="Trade reverse") 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))) 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) barcolor(possig == -1 ? red: possig == 1 ? green : blue ) plot(nT3Average, color=blue, title="T3")