Chiến lược đảo ngược điểm phá vỡ là một chiến lược theo dõi xu hướng, nó bắt kịp sự thay đổi của xu hướng bằng cách mua cổ phiếu cao hơn điểm hỗ trợ gần đây và bán khi nó thấp hơn điểm kháng cự gần đây. Chiến lược này đơn giản và trực tiếp, phù hợp với các nhà đầu tư không có nhiều phán đoán trước về thị trường và chỉ muốn theo dõi xu hướng.
Chiến lược này xác định các đường kháng cự và đường hỗ trợ gần nhất bằng cách tính toán các điểm trung bình của giá cao nhất và giá thấp nhất trong một số ngày. Khi giá vượt qua các điểm quan trọng này, nó cho thấy có sự thay đổi trong xu hướng và có thể theo dõi hướng thay đổi đó để giao dịch.
Cụ thể, chiến lược sẽ tính toán điểm trung bình giá cao nhất trong ngày N1 trước đây là đường kháng cự, điểm trung bình giá thấp nhất trong ngày N2 trước đây là đường hỗ trợ. Trong hướng mua, nếu giá cao nhất trong ngày vượt qua đường kháng cự gần đây, sẽ phát ra tín hiệu mua. Trong hướng bán, nếu giá thấp nhất trong ngày giảm xuống đường hỗ trợ gần đây, sẽ phát ra tín hiệu bán.
Chiến lược này đơn giản và trực tiếp, không cần phải dự đoán thị trường, chỉ cần theo dõi đột phá của các điểm quan trọng để bắt được xu hướng. Mua khi xu hướng lên phá vỡ đường kháng cự và bán khi giảm xuống đường hỗ trợ, theo chiều hướng.
Chiến lược này rất đơn giản và trực quan, không cần bất kỳ kỹ năng dự đoán nào, chỉ cần theo dõi các điểm hỗ trợ kháng cự để có thể thực hiện đột phá. Điều này làm giảm độ khó hoạt động và làm cho nó phù hợp với tất cả các cấp độ của nhà đầu tư.
Điểm đột phá quan trọng là tín hiệu thay đổi xu hướng được công nhận trên thị trường. Chiến lược này có thể phản ứng kịp thời khi xu hướng thay đổi, điều chỉnh vị trí và tránh bị mắc kẹt.
Các nhà đầu tư có thể tự thiết lập số ngày xem dữ liệu bên trái và bên trái, điều chỉnh độ nhạy của chiến lược. Xem nhiều ngày làm cho đường hỗ trợ kháng cự ổn định hơn, xem ít ngày làm cho chiến lược linh hoạt hơn.
Chiến lược này chủ yếu thực hiện chức năng theo dõi xu hướng, có thể dễ dàng được sử dụng với các chiến lược khác để chọn thời gian, cải thiện lợi nhuận tổng thể.
Chiến lược này nhận ra sự thay đổi xu hướng cần một số dữ liệu tích lũy, có thể dẫn đến sự chậm trễ của điểm mua và bán. Cần chú ý đến việc liệu giá đã đảo ngược và tín hiệu vẫn tiếp tục xu hướng ban đầu.
Trong một thời gian ngắn, thị trường có thể có điểm đột phá giả tạo, và các nhà đầu tư cần có khả năng ứng phó để tránh bị giam giữ.
Chiến lược này theo dõi xu hướng toàn vị trí, vì vậy có rủi ro rút lui lớn. Các nhà đầu tư cần xem xét khả năng chịu rủi ro của mình.
Nếu thiết lập tham số quá nhạy cảm, có thể dẫn đến tần suất giao dịch quá cao. Cần điều chỉnh tham số thích hợp để kiểm soát số lần giao dịch. Bạn cũng có thể thiết lập thời gian giữ tối thiểu để giảm tần suất giao dịch.
Các tham số tối ưu nhất có thể được tìm thấy bằng cách kiểm tra lại các tham số giá cao nhất và thấp nhất trong N ngày trong một thời gian dài. Các tham số điều chỉnh động có thể được kết hợp với các tham số điều chỉnh động của thị trường và thiết lập các tham số nhạy cảm hơn khi xu hướng rõ ràng.
Bạn có thể thiết lập một mức độ tối thiểu cho đột phá, tránh bị lừa dối bởi những đột phá giả mạo có mức độ nhỏ. Càng đột phá mạnh, khả năng chuyển hướng càng lớn.
Có thể thêm các chỉ số kỹ thuật khác như RSI, KD, và các dấu hiệu hiệu hiệu quả hơn nếu các chỉ số vượt qua cùng một lúc với các dấu hiệu vượt qua.
Bạn có thể kiểm soát rủi ro bằng cách điều chỉnh vị trí tùy theo tình hình thị trường, bạn có thể thiết lập dừng lỗ cho rủi ro để tránh thua lỗ lớn. Bạn cũng có thể điều chỉnh vị trí theo xu hướng.
Chiến lược đảo ngược điểm đột phá để theo dõi xu hướng thông qua các điểm đột phá quan trọng đơn giản, có thể được áp dụng rộng rãi cho tất cả các loại nhà đầu tư. Ưu điểm của chiến lược này là đơn giản, dễ vận hành, có thể nắm bắt hiệu quả sự thay đổi xu hướng, nhưng cũng có một số độ trễ, rủi ro phá vỡ giả và rút lui lớn.
/*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)