Strategi ini mendesain sistem perdagangan trend berikut berdasarkan indikator rata-rata bergerak T3. Sistem ini dapat secara otomatis mengidentifikasi arah tren harga dan mengambil posisi panjang atau pendek yang sesuai.
Strategi ini menggunakan indikator T3 untuk menentukan arah tren harga. indikator T3 adalah rata-rata bergerak adaptif dengan sensitivitas yang lebih tinggi yang dapat merespons perubahan harga lebih cepat. rumus perhitungannya adalah:
T3 (n) = GD (n)
Di mana GD mewakili DEMA umum (Double Exponential Moving Average), yang dihitung sebagai:
GD (n,v) = EMA (n) * (1+v) -EMA (n)) * v
v adalah faktor volume, yang menentukan sensitivitas respon rata-rata bergerak terhadap tren harga linier.
Strategi ini membandingkan indikator T3 dengan harga. Ketika T3 melintasi di atas harga, itu menentukan tren harga naik dan pergi panjang. Ketika T3 melintasi di bawah harga, itu menentukan tren harga turun dan pergi pendek.
Hal ini dapat dikurangi dengan menyesuaikan parameter T3 atau menambahkan indikator lain untuk penyaringan, serta mengatur stop loss untuk mengendalikan loss tunggal.
Strategi ini secara otomatis menentukan arah tren harga melalui indikator T3, tanpa perlu penilaian manual, dan dapat secara otomatis pergi panjang atau pendek. Ini juga dapat dikonfigurasi untuk perdagangan pembalikan untuk mengatasi situasi pasar yang lebih kompleks. Ada ruang untuk mengoptimalkan parameter, logika perdagangan dll untuk membuat strategi berkinerja lebih baik.
/*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")