Breakout reversal strategi adalah strategi pelacakan tren yang menangkap perubahan tren dengan membeli saham di atas titik dukungan terbaru dan menjual di bawah titik resistensi terbaru. Strategi ini sederhana dan langsung, cocok untuk investor yang tidak memiliki terlalu banyak prediksi tentang pasar dan hanya ingin mengikuti tren.
Strategi ini menentukan garis resistensi dan garis dukungan terdekat dengan menghitung titik tengah dari harga tertinggi dan terendah untuk beberapa hari. Ketika harga melewati titik-titik kunci ini, menunjukkan perubahan tren, dan Anda dapat melakukan perdagangan dengan mengikuti arah perubahan tersebut.
Secara khusus, strategi ini akan menghitung titik tengah harga tertinggi selama N1 hari terakhir sebagai resistance line, dan titik tengah harga terendah selama N2 hari terakhir sebagai support line. Dalam arah beli, sinyal beli akan dikirim jika harga tertinggi hari itu melebihi resistance line terbaru. Dalam arah jual, sinyal jual akan dikirim jika harga terendah hari itu jatuh di bawah support line terbaru.
Strategi ini sederhana dan langsung, tidak perlu memprediksi pasar, hanya perlu melacak titik kunci untuk menangkap tren. Beli ketika tren naik melewati garis resistensi, jual saat turun di bawah garis dukungan, dan terus maju.
Strategi ini sangat sederhana dan intuitif, tidak memerlukan keterampilan peramalan apa pun, dan hanya dapat dicapai dengan melacak terobosan di titik-titik dukungan resistensi. Ini mengurangi kesulitan operasi dan membuatnya cocok untuk digunakan oleh semua tingkat investor.
Titik kunci untuk terobosan adalah sinyal perubahan tren yang diakui di pasar. Strategi ini dapat bereaksi pada saat perubahan tren terjadi, menyesuaikan posisi, dan menghindari terkurung.
Investor dapat mengatur sendiri berapa hari untuk melihat data di sisi kanan dan kiri, sehingga dapat menyesuaikan sensitivitas strategi. Melihat lebih banyak hari membuat garis dukungan resistensi lebih stabil, melihat lebih sedikit hari membuat strategi lebih fleksibel dan sensitif.
Strategi ini terutama mengimplementasikan fitur pelacakan tren, yang dapat dengan mudah digunakan dalam kombinasi dengan strategi lain untuk memilih waktu, meningkatkan pengembalian keseluruhan.
Strategi ini mengidentifikasi perubahan tren yang membutuhkan akumulasi data tertentu, yang dapat menyebabkan keterlambatan dalam posisi jual beli. Perlu diperhatikan apakah harga telah berbalik dan sinyal masih melanjutkan tren aslinya.
Dalam waktu dekat, pasar mungkin akan mengalami titik-titik penembusan yang palsu, dan investor perlu memiliki kemampuan untuk menghadapi situasi tersebut agar tidak terjebak.
Strategi ini melacak tren posisi penuh, sehingga ada risiko penarikan yang lebih besar. Investor perlu mempertimbangkan kemampuan menanggung risikonya sendiri.
Jika pengaturan parameter terlalu sensitif, dapat menyebabkan frekuensi perdagangan yang terlalu tinggi. Parameter perlu disesuaikan dengan tepat untuk mengontrol jumlah transaksi. Anda juga dapat mengatur waktu penyimpanan minimum untuk mengurangi frekuensi perdagangan.
Anda dapat mengoptimalkan parameter harga tertinggi dan terendah selama N hari dengan mengevaluasi jangka panjang untuk menemukan kombinasi parameter yang optimal. Anda juga dapat menggabungkan parameter penyesuaian dinamis dengan kondisi pasar untuk mengatur parameter yang lebih sensitif ketika tren terlihat.
Anda dapat mengatur amplitudo minimum untuk terobosan, untuk menghindari tertipu oleh terobosan palsu yang kecil. Semakin besar kekuatan terobosan, semakin besar kemungkinan perubahan tren.
Anda dapat menambahkan indikator teknis lainnya seperti RSI, KD, dan lain-lain. Jika titik kritis terjatuh, sinyal akan lebih efektif. Hindari sinyal yang hanya bergantung pada terjatuh.
Anda dapat mengontrol risiko dengan menyesuaikan posisi sesuai dengan kondisi pasar, Anda dapat mengatur stop loss untuk menghindari kerugian besar. Anda juga dapat secara dinamis menyesuaikan posisi sesuai dengan kondisi tren.
Breakout reversal strategi untuk melacak tren melalui titik-titik penting yang sederhana, dapat digunakan secara luas untuk semua jenis investor. Keuntungan dari strategi ini adalah sederhana dan mudah dioperasikan, dapat secara efektif menangkap perubahan tren, tetapi juga ada keterlambatan tertentu, risiko false breakout dan pengembalian yang lebih besar.
/*backtest
start: 2023-08-27 00:00:00
end: 2023-09-26 00:00:00
period: 2h
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/
// © EduardoMattje
//@version=5
strategy("Pivot Point Breakout", "PPB", true, default_qty_type=strategy.percent_of_equity, default_qty_value=100, process_orders_on_close=true)
// Constants
var L_PIVOT_HIGH = "Pivot high"
var L_PIVOT_LOW = "Pivot low"
var LEFT = "Left"
var RIGHT = "Right"
var BOTH = "Both"
var LONG = "Long"
var SHORT = "Short"
var DATES = "Date selection"
var DATES_TOOLTIP = "Change it to limit the trades for the given time interval.\n\nLeave it to disable this behaviour."
// Inputs
var orderDirection = input.string(LONG, "Order direction", options=[BOTH, LONG, SHORT])
var leftHigh = input.int(3, LEFT, minval=0, inline=L_PIVOT_HIGH, group=L_PIVOT_HIGH)
var rightHigh = input.int(3, RIGHT, minval=0, inline=L_PIVOT_HIGH, group=L_PIVOT_HIGH)
var leftLow = input.int(3, LEFT, minval=0, inline=L_PIVOT_LOW, group=L_PIVOT_LOW)
var rightLow = input.int(3, RIGHT, minval=0, inline=L_PIVOT_LOW, group=L_PIVOT_LOW)
var startDate = input(0, "Starting date", group=DATES)
var endDate = input(0, "Final date", group=DATES)
//
var float lastHigh = na
var float lastLow = na
lowPivot = ta.pivotlow(leftLow, rightLow)
highPivot = ta.pivothigh(leftHigh, rightHigh)
f_updateLevels(pivot_) =>
var float pastLevel = na
if not na(pivot_)
pastLevel := pivot_
pastLevel
lastLow := f_updateLevels(lowPivot)
lastHigh := f_updateLevels(highPivot)
// Validates the time interval
validTrade = true
// Orders
if high > lastHigh
strategy.entry("Long", strategy.long, when=orderDirection != SHORT and validTrade)
strategy.close("Short", when=orderDirection == SHORT)
if low < lastLow
strategy.entry("Short", strategy.short, when=orderDirection != LONG and validTrade)
strategy.close("Long", when=orderDirection == LONG)
// Plots
plot(lastLow, "Last pivot low", color.red, offset=1)
plot(lastHigh, "Last pivot high", color.teal, offset=1)
plotshape(lowPivot, "Pivot low", location=location.belowbar, color=color.red, offset=-rightLow)
plotshape(highPivot, "Pivot high", color=color.teal, offset=-rightHigh)