
La estrategia diseñó un sistema de seguimiento de tendencias basado en el indicador de medias móviles T3. El sistema puede identificar automáticamente la dirección de la tendencia de los precios y hacer más descuentos en consecuencia. Hacer más descuentos cuando los precios suben y hacer descuentos cuando los precios bajan. El sistema también tiene la función de invertir el comercio.
La estrategia utiliza el indicador T3 para determinar la dirección de la tendencia de los precios. El indicador T3 es una media móvil adaptativa, que tiene una mayor sensibilidad y puede responder más rápidamente a los cambios en los precios. La fórmula para calcular el indicador es:
T3(n) = GD(GD(GD(n)))
Dentro de ellos, GD representa el término DEMA (medio móvil de doble índice), cuya fórmula es:
GD(n,v) = EMA(n) * (1+v)-EMA(EMA(n)) * v
v es el factor de masa que determina la sensibilidad de la media móvil a la respuesta de la tendencia lineal de los precios. Cuando v = 0, GD = EMA; cuando v = 1, GD = DEMA. El autor recomienda la configuración de v = 0.7
La estrategia compara el indicador T3 con el precio y, cuando el precio se cruza por encima de T3, se juzga una tendencia al alza en el precio, haciendo más; cuando el precio se cruza por debajo de T3 se juzga una tendencia a la baja en el precio, haciendo más.
Se puede ajustar los parámetros de los indicadores T3 o añadir filtros de otros indicadores para reducir las operaciones erróneas. También se puede establecer un stop loss para controlar las pérdidas individuales.
La estrategia determina automáticamente la dirección de la tendencia del precio a través del indicador T3, sin necesidad de un juicio manual, se puede hacer automáticamente más blanqueo. Al mismo tiempo, se puede configurar la lógica de negociación inversa para responder a una situación de mercado más compleja. Los parámetros del indicador, la lógica de negociación, etc. tienen espacio para la optimización, lo que puede hacer que la estrategia funcione mejor.
/*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")