
Strategi berturut-turut turun - berturut-turut berbalik adalah strategi perdagangan kuantitatif yang didasarkan pada harga turun dan berturut-turut berbalik. Strategi ini menangkap peluang untuk membalikkan tren jangka pendek dengan mengidentifikasi bentuk berturut-turut X-root turun turun dan kemudian berturut-turut Y-root naik. Gagasan utama dari strategi ini adalah bahwa ketika harga mengalami berturut-turut turun, menunjukkan bahwa kekuatan kepala kosong telah dilepaskan, dan kemudian jika terjadi berturut-turut berbalik, itu berarti kekuatan kepala kosong mulai berkumpul dan harga mungkin mengantarkan gelombang berbalik. Oleh karena itu, strategi ini mencoba untuk menangkap peluang untuk membalikkan harga dari kepala kosong ini, sehingga menghasilkan keuntungan.
Prinsip dari strategi reversal berturut-turut dapat dibagi menjadi beberapa langkah:
Strategi ini memanfaatkan bentuk berturut-turut penurunan dan ambruk, mencoba untuk menangkap kesempatan reversal dari perubahan dari kepala kosong ke multi kepala. Pada saat yang sama, menetapkan kondisi stop loss yang ketat untuk mengendalikan risiko.
Keuntungan dari strategi reversal berturut-turut:
Meskipun ada beberapa keuntungan dari strategi reversal yang berlanjut, ada risiko berikut:
Untuk mengatasi risiko ini, langkah-langkah optimasi berikut dapat dipertimbangkan:
Ada beberapa hal yang dapat dioptimalkan dalam strategi reversal yang terus berlanjut:
Dengan langkah-langkah pengoptimalan di atas, strategi reversal berturut-turut dapat beradaptasi dengan lebih baik terhadap perubahan pasar, mengendalikan risiko, meningkatkan profitabilitas dan stabilitas.
Strategi berturut-turut turun-langit adalah strategi perdagangan kuantitatif yang didasarkan pada kontinuitas harga, menangkap peluang pembalikan pasar dalam jangka pendek dengan mengidentifikasi bentuk berturut-turut turun dan turun. Aturan strategi ini sederhana dan jelas, lebih sensitif terhadap perubahan tren harga, dan memiliki kondisi stop loss yang ketat untuk mengendalikan risiko.
Namun, strategi ini juga memiliki beberapa risiko, seperti perdagangan yang sering, pengaturan posisi stop loss yang mungkin terlalu ketat, dan kinerja yang mungkin kurang baik di pasar tren yang kuat. Untuk mengatasi risiko-risiko ini, langkah-langkah dapat dipertimbangkan untuk menyesuaikan parameter secara dinamis, mengoptimalkan posisi stop loss, dan mengambil strategi yang berbeda dalam lingkungan pasar yang berbeda.
Selain itu, strategi ini juga memiliki beberapa arah pengoptimalan, seperti memperkenalkan lebih banyak indikator, mengoptimalkan stop loss dan stop loss, beradaptasi dengan lingkungan pasar yang berbeda, memasukkan manajemen posisi, dan dikombinasikan dengan strategi lainnya. Dengan terus mengoptimalkan dan memperbaiki, strategi berturut-turut berayun-berayun berbalik dapat menjadi strategi perdagangan kuantitatif yang lebih kuat dan efektif.
Secara keseluruhan, strategi berturut-turut berbalik-balik memberikan ide perdagangan yang sederhana dan efektif untuk mendapatkan keuntungan dengan menangkap peluang berbalik-balik dalam jangka pendek di pasar. Namun, dalam penerapan praktis, strategi perlu dioptimalkan dan disesuaikan dengan kondisi pasar tertentu dan preferensi risiko pribadi, untuk mencapai efek perdagangan yang lebih baik.
/*backtest
start: 2023-03-02 00:00:00
end: 2024-03-07 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("Bottom Out Strategy", overlay=true)
consecutiveBarsUp = input(2)
consecutiveBarsDown = input(3)
price = close
ups = 0.0
ups := price > price[1] ? nz(ups[1]) + 1 : 0
dns = 0.0
dns := price < price[1] ? nz(dns[1]) + 1 : 0
var entry_bar_index = 1000000
var active = false
var stop_loss = 0.0
// === INPUT BACKTEST RANGE ===
i_from = input(defval = timestamp("01 Jan 2023 00:00 +0000"), title = "From")
i_thru = input(defval = timestamp("01 Mar 2024 00:00 +0000"), title = "Thru")
// === FUNCTION EXAMPLE ===
date() => true
entry_condition() =>
date() and dns[2] >= consecutiveBarsDown and ups >= consecutiveBarsUp and not active
exit_condition() =>
date() and active and (close < nz(stop_loss) or close < high - 2 * ta.atr(7))
if (entry_condition())
strategy.entry("ConsDnLong", strategy.long, comment="CDLEntry")
entry_bar_index := bar_index
active := true
stop_loss := math.min(close, close[1], close[2])
// log.info("Entry at bar {0}, close={1}, stop_loss={2} ", entry_bar_index, close, stop_loss)
if (exit_condition())
strategy.close("ConsDnLong", comment = "CDLClose")
// log.info("Close at bar {0}", bar_index)
entry_bar_index := 1000000
active := false
// if (dns >= consecutiveBarsDown)
// strategy.entry("ConsDnSE", strategy.short, comment="ConsDnSE")
//plot(strategy.equity, title="equity", color=color.red, linewidth=2, style=plot.style_areabr)
plot(high - 2* ta.atr(7))