Strategi indikator agregat menggunakan indikator agregat untuk menilai aliran dana di pasar untuk menangkap perubahan tren di pasar. Strategi ini menggabungkan rata-rata bergerak cepat dan rata-rata bergerak lambat, membentuk kurva indikator, membeli tren di atas kurva, menjual tren di bawah kurva, untuk melacak tren pasar.
Strategi ini didasarkan pada indikator momentum agregat, yang memperbaiki indikator William, dengan harga tertinggi dan terendah rata-rata hari yang menggantikan harga bukaan untuk mengatasi kekurangan harga bukaan. Rumus indikator adalah:
Garis massa bergerak agglomerasi = rata-rata bergerak indeks massa bergerak agglomerasi cepat - rata-rata bergerak indeks massa bergerak agglomerasi lambat
Di antaranya, rumus untuk menghitung indeks momentum agregat adalah:
Indeks momentum agregat = (harga penutupan - harga pembukaan) / (harga tertinggi - harga terendah) * volume transaksi
Karena tidak ada harga pembukaan, berikut ini digunakan:
Indeks momentum agregat = (harga penutupan - (harga tertinggi + harga terendah) / 2) / (harga tertinggi - harga terendah) * volume transaksi
Indikator menggunakan diferensial dari rata-rata bergerak cepat dan rata-rata bergerak lambat sebagai garis berat agregat. Ketika garis cepat melintasi garis lambat sebagai sinyal beli, melintasi bawah sebagai sinyal jual.
Apa yang harus dilakukan:
Strategi ini memiliki keuntungan sebagai berikut:
Strategi ini juga memiliki beberapa risiko:
Pengendalian risiko dapat dilakukan dengan mengoptimalkan parameter dan menggabungkannya dengan indikator lainnya.
Strategi ini dapat dioptimalkan dalam beberapa arah:
Strategi indikator agregat secara keseluruhan lebih stabil dan dapat diandalkan, dengan penyesuaian parameter dapat menyeimbangkan keuntungan dan risiko. Penambahan kondisi penyaringan dan stop loss dapat meningkatkan stabilitas strategi lebih lanjut. Strategi ini cocok untuk melacak pasar tren, dan dapat dioptimalkan secara khusus untuk mendapatkan efek strategi yang memuaskan.
/*backtest
start: 2023-09-11 00:00:00
end: 2023-10-11 00:00:00
period: 3h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=2
////////////////////////////////////////////////////////////
// Copyright by HPotter v1.0 18/09/2017
// Indicator plots Money Flow Indicator (Chaikin). This indicator looks
// to improve on Larry William's Accumulation Distribution formula that
// compared the closing price with the opening price. In the early 1970's,
// opening prices for stocks stopped being transmitted by the exchanges.
// This made it difficult to calculate Williams' formula. The Chaikin
// Oscillator uses the average price of the bar calculated as follows
// (High + Low) /2 instead of the Open.
// The indicator subtracts a 10 period exponential moving average of the
// AccumDist function from a 3 period exponential moving average of the
// AccumDist function.
//
// You can change long to short in the Input Settings
// WARNING:
// - For purpose educate only
// - This script to change bars colors.
////////////////////////////////////////////////////////////
strategy(title="Money Flow Indicator (Chaikin Oscillator)", shorttitle="MFI")
Fast = input(3, minval=1)
Slow = input(10, minval=1)
reverse = input(false, title="Trade reverse")
hline(0, color=gray, linestyle=hline.style_dashed)
lenMax = max(Fast, Slow)
lenMin = min(Fast, Slow)
xDiv = (high - low) * volume
SumMax = sum(iff(xDiv > 0, (close - open) / (high - low) * volume , 0) , lenMax)
SumMin = sum(iff(xDiv > 0, (close - open) / (high - low) * volume , 0) , lenMin)
emaMax = ema(SumMax, lenMax)
emaMin = ema(SumMin, lenMin)
nRes = emaMax - emaMin
pos = iff(nRes > 0, 1,
iff(nRes < 0, -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(nRes, color=blue, title="RMI")