
Chiến lược phá vỡ xu hướng là một chiến lược định lượng để đánh giá xu hướng thị trường và giao dịch bằng cách tính toán biến động giá. Chiến lược này sử dụng công thức ((giá cao nhất - giá thấp nhất) / giá đóng cửa để tính toán biến động giá của đường K, sau đó xử lý bằng phẳng bằng đường trung bình để đánh giá liệu xu hướng có đảo ngược hay không.
Chỉ số cốt lõi của chiến lược này là ((giá cao nhất - giá thấp nhất) / giá đóng cửa, nó phản ánh sự biến động của đường K. Chiến lược này đầu tiên tính toán chỉ số này, sau đó lấy giá trị tuyệt đối của nó và tính toán trung bình di chuyển đơn giản. Nếu giá trị tuyệt đối của chỉ số biến động của đường K hiện tại cao hơn trung bình di chuyển của một khoảng thời gian nhất định trong quá khứ, điều này có thể cho thấy xu hướng mới đang hình thành.
Cụ thể, chiến lược bao gồm các bước sau:
Chiến lược này cũng bao gồm các hoạt động trực quan như vẽ chỉ số, thay đổi màu K-line, để dễ dàng đánh giá trực quan xu hướng thị trường. Nói chung, chiến lược sử dụng biến động giá để đánh giá sự thay đổi xu hướng tiềm ẩn là một cách đơn giản và trực tiếp.
Chiến lược này có những ưu điểm chính sau:
Nhìn chung, chiến lược này phá vỡ các định kiến tư duy của các chỉ số đánh giá truyền thống, chỉ tập trung vào sự biến động của chính giá cả, linh hoạt để nắm bắt sự thay đổi xu hướng tiềm năng. Các tham số có thể điều chỉnh được mạnh mẽ, sử dụng đơn giản, là một chiến lược xu hướng đáng khuyên.
Chiến lược này cũng có những rủi ro chính như:
Những rủi ro này chủ yếu liên quan đến việc chiến lược này quá phụ thuộc vào xu hướng thị trường để đánh giá sự biến động của giá. Để giảm rủi ro, bạn có thể xem xét kết hợp với các chỉ số đánh giá khác để đánh giá hiệu quả của tín hiệu xu hướng; cũng có thể điều chỉnh tham số thích hợp, làm phẳng các chỉ số biến động, lọc tiếng ồn ngắn.
Chiến lược này có thể được tối ưu hóa theo các hướng sau:
Các biện pháp tối ưu hóa này có thể làm giảm khả năng giao dịch sai và tăng tỷ lệ lợi nhuận của chiến lược. Đặc biệt, việc tăng các chỉ số và mô hình đánh giá hiệu quả của tín hiệu có thể làm giảm đáng kể tín hiệu không hiệu quả. Ngoài ra, chiến lược dừng lỗ cũng rất cần thiết để kiểm soát tổn thất đơn lẻ và đảm bảo lợi nhuận tổng thể.
Chiến lược phá vỡ xu hướng này đánh giá sự thay đổi xu hướng thị trường bằng cách tính toán biến động giá, nguyên tắc đơn giản và trực tiếp, sử dụng tính linh hoạt, có thể tùy chỉnh tham số để điều chỉnh độ nhạy. Chiến lược có lợi thế trong việc nắm bắt sự thay đổi xu hướng, nhưng cũng có một số rủi ro. Chúng ta có thể cải tiến từ việc tối ưu hóa các chỉ số đánh giá, xây dựng mô hình lọc, điều chỉnh các thiết lập tham số, v.v., để làm cho chiến lược ổn định và đáng tin cậy hơn. Nói chung, chiến lược này cung cấp một cách suy nghĩ mới để đánh giá sự thay đổi xu hướng thị trường, đáng để nghiên cứu tối ưu hóa hơn.
/*backtest
start: 2023-11-26 00:00:00
end: 2023-12-26 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=3
////////////////////////////////////////////////////////////
// Copyright by HPotter v2.0 25/10/2017
//
// This histogram displays (high-low)/close
// Can be applied to any time frame.
//
// WARNING:
// - For purpose educate only
// - This script to change bars colors.
////////////////////////////////////////////////////////////
strategy(title="(H-L)/C Histogram Backtest", precision = 2)
input_barwidth = input(4, title="Bar Width")
input_barsback = input(1, title="Look Back")
input_percentorprice = input(false, title="% change")
input_smalength = input(16, title="SMA Length")
reverse = input(false, title="Trade reverse")
hline(0, color=blue, linestyle=line)
xPrice = (high-low)/close
xPriceHL = (high-low)
xPrice1 = iff(input_percentorprice, xPrice * 100, xPriceHL)
xPrice1SMA = sma(abs(xPrice1), input_smalength)
pos = 0.0
pos := iff(xPrice1SMA[input_barsback] > abs(xPrice1), 1,
iff(xPrice1SMA[input_barsback] < abs(xPrice1), -1, nz(pos[1], 0)))
possig = iff(reverse and pos == 1, -1,
iff(reverse and pos == -1, 1, pos))
if (possig == 1)
strategy.entry("Long", strategy.long)
if (possig == -1)
strategy.entry("Short", strategy.short)
barcolor(possig == -1 ? red: possig == 1 ? green : blue )
plot(abs(xPrice1), color=green, style = histogram, linewidth = input_barwidth, title="Change")
plot(xPrice1SMA[input_barsback], color=red, title="SMA")