Pivot point breakout adalah strategi trend yang membeli saham apabila harga melangkau di atas rintangan baru-baru ini dan menjual apabila harga melangkau di bawah sokongan baru-baru ini untuk menangkap perubahan trend.
Strategi ini mengira titik pertengahan harga tertinggi dan harga terendah dalam tempoh sebagai garis rintangan dan sokongan baru-baru ini. Apabila harga memecahkan titik-titik pusingan ini, ia menandakan perubahan trend yang boleh diperdagangkan.
Secara khusus, ia mengira titik tengah harga tertinggi selama N1 hari yang lalu sebagai garis rintangan, dan titik tengah harga terendah selama N2 hari sebagai garis sokongan. Di sisi panjang, jika harga tertinggi hari ini melanggar di atas garis rintangan baru-baru ini, isyarat beli dicetuskan. Di sisi pendek, jika harga terendah hari ini melanggar di bawah garis sokongan baru-baru ini, isyarat jual dicetuskan. Pelabur boleh menyesuaikan N1 dan N2 untuk menyesuaikan kepekaan strategi.
Strategi ini adalah mudah dan mudah, tidak memerlukan ramalan pasaran, hanya mengesan penembusan titik pusingan untuk menangkap trend.
Strategi ini sangat mudah dan intuitif, tidak memerlukan kemahiran ramalan, hanya menjejaki gangguan titik pusingan. Ini mengurangkan kesukaran operasi, menjadikannya sesuai untuk pelabur dari semua peringkat.
Penembusan titik pusingan adalah isyarat yang terkenal untuk perubahan trend. Strategi boleh bertindak balas dengan tepat pada masanya apabila perubahan trend, menyesuaikan kedudukan untuk mengelakkan terperangkap.
Pelabur boleh menyesuaikan jumlah hari untuk melihat ke kiri dan ke kanan, yang menyesuaikan kepekaan strategi.
Strategi ini terutamanya menyediakan trend berikut. Ia boleh dengan mudah digabungkan dengan strategi masa lain untuk meningkatkan pulangan keseluruhan.
Strategi ini memerlukan pengumpulan data untuk mengenal pasti perubahan trend, yang boleh menyebabkan kelewatan tertentu dalam isyarat. Perlu melihat pembalikan harga sementara isyarat masih berterusan dalam trend asal.
Pasaran mungkin mempunyai pembiasan palsu jangka pendek dari titik pusingan. Pelabur memerlukan kemahiran tertentu untuk menangani whipsaws dan mengelakkan terperangkap.
Strategi ini sepenuhnya mengikuti trend, oleh itu mempunyai risiko penarikan yang agak besar. Pelabur perlu mempertimbangkan toleransi risiko mereka sendiri. Juga boleh mengurangkan saiz kedudukan untuk mengurangkan penarikan.
Parameter yang terlalu sensitif boleh menyebabkan kekerapan perdagangan yang berlebihan. Perlu menyesuaikan parameter dengan betul untuk mengawal bilangan dagangan. Tempoh penahan minimum juga dapat membantu kekerapan yang lebih rendah.
Boleh menguji semula dan mengoptimumkan N hari untuk tertinggi dan terendah untuk mencari campuran parameter terbaik dalam jangka panjang. Juga boleh menyesuaikan parameter secara dinamik berdasarkan keadaan pasaran, menggunakan tetapan yang lebih sensitif apabila trend kuat.
Dapat menetapkan keperluan magnitud minimum untuk pecah untuk mengelakkan pecah palsu kecil.
Boleh menambah penunjuk teknikal lain seperti RSI, KD dan lain-lain. Jika pecah sejajar dengan perbezaan penunjuk, isyarat lebih berkesan.
Boleh ukuran kedudukan secara dinamik berdasarkan keadaan pasaran untuk mengawal risiko. Hedges boleh dihentikan untuk mengelakkan kerugian besar. Juga boleh menyesuaikan saiz berdasarkan kekuatan trend yang sedang berlangsung.
Strategi titik pusingan merakam trend dengan mudah melalui titik pusingan, sesuai untuk pelbagai pelabur. Kelebihannya adalah kesederhanaan dan menangkap perubahan trend dengan berkesan, tetapi ia juga mempunyai beberapa masalah yang tertinggal, risiko whipsaw dan penarikan yang besar. Penyesuaian parameter, menambah penapis dan meningkatkan saiz kedudukan dapat meningkatkan kestabilan strategi. Secara keseluruhan ia sesuai untuk pelabur yang mencari trend yang mudah diikuti, tetapi risiko perlu diurus dengan betul.
/*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)