
Strategi ini mendesain sistem perdagangan pelacakan tren berdasarkan indikator T3 Moving Average. Sistem ini dapat secara otomatis mengidentifikasi arah tren harga dan melakukan lebih banyak penarikan sesuai dengan itu. Lakukan lebih banyak ketika harga naik dan kosong ketika harga turun. Sistem ini juga memiliki fungsi untuk membalikkan perdagangan.
Strategi ini menggunakan indikator T3 untuk menentukan arah tren harga. Indikator T3 adalah rata-rata bergerak yang beradaptasi, yang memiliki sensitivitas yang lebih tinggi dan dapat merespons perubahan harga dengan lebih cepat.
T3(n) = GD(GD(GD(n)))
Di antaranya, GD mewakili DEMA dalam arti luas, dengan rumus sebagai berikut:
GD(n,v) = EMA(n) * (1+v)-EMA(EMA(n)) * v
v adalah faktor volume yang menentukan sensitivitas respon rata-rata bergerak terhadap tren linier harga. Ketika v = 0, GD = EMA; Ketika v = 1, GD = DEMA.
Strategi ini membandingkan indikator T3 dengan harga, menilai tren naik harga saat harga melewati T3 dan melakukan over; menilai tren turun harga saat harga melewati T3 dan melakukan over.
Anda dapat mengurangi kesalahan perdagangan dengan menyesuaikan parameter indikator T3 atau menambahkan filter indikator lainnya. Anda juga dapat mengatur stop loss untuk mengendalikan kerugian tunggal.
Strategi ini menggunakan indikator T3 untuk menentukan arah tren harga secara otomatis, tanpa penilaian manual, dan dapat secara otomatis melakukan lebih banyak blanko. Selain itu, dapat dikonfigurasi untuk membalikkan logika perdagangan, untuk menghadapi situasi pasar yang lebih kompleks.
/*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")