
Strategi ini dengan menghitung nilai tertinggi dan terendah dari volume transaksi dalam periode tertentu terakhir, membentuk rentang fluktuasi yang disesuaikan, menghasilkan sinyal perdagangan ketika volume transaksi dalam siklus saat ini menembus batas ini.
Logika inti adalah menghitung nilai tertinggi dan terendah dari jumlah transaksi positif-negatif dalam periode N terakhir, membentuk rentang fluktuasi yang disesuaikan. Berdasarkan rentang ini, menilai apakah ada penembusan pada saat itu.
Proses perhitungan adalah sebagai berikut:
Strategi ini memiliki beberapa keuntungan utama:
Strategi ini juga memiliki beberapa risiko:
Hal ini dapat dioptimalkan dengan menyesuaikan siklus parameter, yang dikombinasikan dengan penyaringan indikator lainnya.
Strategi ini dapat dioptimalkan dari beberapa arah:
Strategi ini secara keseluruhan sederhana dan praktis, dapat secara efektif menangkap situasi unilateral yang tiba-tiba melalui penyesuaian ruang lingkup dan penilaian kuantitatif. Namun, ada juga risiko misinformasi tertentu yang memerlukan penyesuaian parameter yang sesuai dan penggunaan alat lain untuk mendapatkan efek maksimal.
/*backtest
start: 2024-01-01 00:00:00
end: 2024-01-31 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © EvoCrypto
//@version=4
strategy("Ranged Volume Strategy - evo", shorttitle="Ranged Volume", format=format.volume)
// INPUTS {
Range_Length = input(5, title="Range Length", minval=1)
Heikin_Ashi = input(true, title="Heikin Ashi Colors")
Display_Bars = input(true, title="Show Bar Colors")
Display_Break = input(true, title="Show Break-Out")
Display_Range = input(true, title="Show Range")
// }
// SETTINGS {
Close = Heikin_Ashi ? security(heikinashi(syminfo.tickerid), timeframe.period, close) : close
Open = Heikin_Ashi ? security(heikinashi(syminfo.tickerid), timeframe.period, open) : open
Positive = volume
Negative = -volume
Highest = highest(volume, Range_Length)
Lowest = lowest(-volume, Range_Length)
Up = Highest > Highest[1] and Close > Open
Dn = Highest > Highest[1] and Close < Open
Volume_Color =
Display_Break and Up ? color.new(#ffeb3b, 0) :
Display_Break and Dn ? color.new(#f44336, 0) :
Close > Open ? color.new(#00c0ff, 60) :
Close < Open ? color.new(#000000, 60) : na
// }
//PLOTS {
plot(Positive, title="Positive Volume", color=Volume_Color, style=plot.style_histogram, linewidth=4)
plot(Negative, title="Negative Volume", color=Volume_Color, style=plot.style_histogram, linewidth=4)
plot(Display_Range ? Highest : na, title="Highest", color=color.new(#000000, 0), style=plot.style_line, linewidth=2)
plot(Display_Range ? Lowest : na, title="Lowest", color=color.new(#000000, 0), style=plot.style_line, linewidth=2)
barcolor(Display_Bars ? Volume_Color : na)
// }
if (Up)
strategy.entry("Long Entry", strategy.long)
if (Dn)
strategy.entry("Short Entry", strategy.short)