Strategi Highest/Lowest Center Lookback adalah strategi trend following. Ide utamanya adalah menghitung harga tengah harga tertinggi dan terendah selama periode tertentu di masa lalu sebagai harga acuan, dan kemudian menghitung zona masuk dan zona keluar berdasarkan harga acuan ini dikombinasikan dengan volatilitas. Ketika harga memasuki zona masuk, pergi panjang; ketika harga memasuki zona keluar, tutup posisi.
Strategi ini terutama dilaksanakan melalui langkah-langkah berikut:
Dengan cara ini, dapat melacak tren dalam waktu ketika harga memasuki keadaan tren; pada saat yang sama, risiko dapat dikendalikan melalui volatilitas.
Strategi ini memiliki keuntungan berikut:
Strategi ini juga memiliki beberapa risiko:
Untuk mengendalikan risiko ini, optimasi dapat dilakukan dalam aspek berikut:
Strategi ini juga memiliki ruang untuk optimalisasi lebih lanjut:
Melalui optimalisasi ini, perbaikan lebih lanjut dalam stabilitas strategi dan profitabilitas dapat diharapkan.
Strategi Highest/Lowest Center Lookback adalah strategi trend following yang sederhana dan praktis. Ini dapat menangkap perubahan harga dalam waktu, melacak tren, sambil mengendalikan risiko melalui volatilitas. Strategi ini mudah diterapkan, cocok untuk pemula perdagangan kuantitatif untuk belajar dan berlatih. Dengan mengoptimalkan parameter dan aturan, kinerja strategi dapat ditingkatkan lebih lanjut. Secara umum, ini adalah strategi kuantitatif yang direkomendasikan.
/*backtest start: 2023-11-27 00:00:00 end: 2023-12-27 00:00:00 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=4 strategy("Highest/Lowest Center Lookback Strategy", overlay=true) lookback_length = input(200, type=input.integer, minval=1, title="Lookback Length") smoother_length = input(5, type=input.integer, minval=1, title="Smoother Length") atr_length = input(10, type=input.integer, minval=1, title="ATR Length") atr_multiplier = input(1.5, type=input.float, minval=0.5, title="ATR Multiplier") vola = atr(atr_length) * atr_multiplier price = sma(close, 3) l = ema(lowest(low, lookback_length), smoother_length) h = ema(highest(high, lookback_length), smoother_length) center = (h + l) * 0.5 upper = center + vola lower = center - vola trend = price > upper ? true : (price < lower ? false : na) bull_cross = crossover(price, upper) bear_cross = crossunder(price, lower) strategy.entry("Buy", strategy.long, when=bull_cross) strategy.close("Buy", when=bear_cross) plot(h, title="High", color=color.red, transp=75, linewidth=2) plot(l, title="Low", color=color.green, transp=75, linewidth=2) pc = plot(center, title="Center", color=color.black, transp=25, linewidth=2) pu = plot(upper, title="Upper", color=color.green, transp=75, linewidth=2) pl = plot(lower, title="Lower", color=color.red, transp=75, linewidth=2) fill(pu, pc, color=color.green, transp=85) fill(pl, pc, color=color.red, transp=85) bgcolor(trend == true ? color.green : (trend == false ? color.red : color.gray), transp=85)