Strategi ini digunakan untuk menentukan kapan membeli dan menjual dengan menghitung rata-rata bergerak sederhana dari titik tinggi dan rendah dan membandingkannya dengan harga penutupan saat ini. Tujuannya adalah untuk menangkap sinyal bahwa harga telah menembus garis rata-rata untuk mendapatkan kesempatan awal untuk tren.
Perhitungan rata-rata bergerak sederhana dengan tinggi 4
Perhitungan rata-rata bergerak sederhana dengan panjang titik rendah 4
Ketika harga penutupan menembus titik rata-rata tertinggi, masuk lebih banyak
Ketika harga penutupan menembus titik rata-rata terendah, bukalah
Mengelola risiko dengan strategi stop loss dan stop loss tetap
Implementasi dengan indikator sederhana dan mudah dipahami
Menangkap sinyal harga yang menembus garis rata-rata
Anda dapat menyaring kebisingan dengan cepat dan mengidentifikasi tren.
Perhitungan kecil dapat mengurangi biaya operasional strategi
Adaptasi untuk memperluas strategi berbasis kerja sama
Set parameters yang masuk akal dan hindari sensitivitas
Tidak mampu menangani risiko terobosan besar
Ada beberapa tingkat risiko arbitrage yang bergoyang
Tidak dapat mengatur posisi stop loss secara otomatis
Sulit untuk menilai panjangnya latar belakang tren
Pengujian pengaruh berbagai parameter terhadap kualitas sinyal
Meningkatkan kondisi penyaringan untuk memastikan terobosan efektif
Analisis Tren untuk Menghindari Kecurangan
Mengembangkan strategi stop loss yang dinamis
Optimalkan mekanisme penghentian kerugian, meningkatkan peluang strategi
Strategi pengujian kekuatan pada siklus yang berbeda
Strategi ini memberikan ide perdagangan tren dasar dengan mengevaluasi dinamika harga dengan indikator sederhana. Dengan pengoptimalan parameter, pengendalian risiko, dan lain-lain, logika perdagangan dapat diperluas dan dapat dikembangkan menjadi sistem kuantitatif yang lebih kuat. Secara keseluruhan, strategi ini mudah dipraktikkan dan cocok untuk digunakan sebagai strategi awal perdagangan kuantitatif.
/*backtest
start: 2023-09-11 00:00:00
end: 2023-09-13 00:00:00
period: 30m
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=3
strategy("HiLo", overlay=true)
// Testing a specific period
testStartYear = input(2017, "Backtest Start Year")
testStartMonth = input(4, "Backtest Start Month")
testStartDay = input(1, "Backtest Start Day")
testPeriodStart = timestamp(testStartYear,testStartMonth,testStartDay,0,0)
testStopYear = input(2017, "Backtest Stop Year")
testStopMonth = input(5, "Backtest Stop Month")
testStopDay = input(1, "Backtest Stop Day")
testPeriodStop = timestamp(testStopYear,testStopMonth,testStopDay,0,0)
// A switch to control background coloring of the test period
testPeriodBackground = input(title="Color Background?", type=bool, defval=true)
testPeriodBackgroundColor = testPeriodBackground and (time >= testPeriodStart) and (time <= testPeriodStop) ? #00FF00 : na
bgcolor(testPeriodBackgroundColor, transp=97)
testPeriod() =>
time >= testPeriodStart and time <= testPeriodStop ? true : false
//HiLo Strategy
length = input(4, minval=0)
displace = input(0, minval=0)
highsma = sma(high, length)
lowsma = sma(low, length)
longCondition = close > highsma[displace]
if (longCondition)
strategy.entry("long", true)
shortCondition = close < lowsma[displace]
if (shortCondition)
strategy.entry("short", false)
// Exit seems with a problem. it keeps saying the order's limit (2000) was reached even if I back test it just for a day.
// If the two lines bellow are commented, then it it works. Anyone? Any idea what's wrong?
// strategy.exit("exit", "long", profit=10, loss=5)
// strategy.exit("exit", "short", profit=10, loss=5)