Tổng quan:
PVO đo sự khác biệt giữa hai trung bình động dựa trên khối lượng bằng tỷ lệ phần trăm của trung bình động lớn hơn để đo sự thay đổi trong xu hướng khối lượng. Chiến lược này sử dụng PVO để xác định xu hướng khối lượng để xác nhận hoặc bác bỏ hành động giá.
Chiến lược logic:
Chiến lược hình thành chỉ số PVO thông qua thành phần EMA kép và sử dụng đường tín hiệu để xác định thay đổi xu hướng khối lượng để dự đoán hướng giá tiềm năng.
Ưu điểm:
Chiến lược này sử dụng đầy đủ tác động chỉ báo của thay đổi khối lượng trên hành động giá. So với chỉ số duy nhất, cấu trúc PVO ổn định hơn với các tham số có thể tùy chỉnh để đánh giá thay đổi xu hướng khối lượng và phát hiện hướng giá tiềm năng trước. Sự khác biệt màu sắc trực quan tăng cường quyết định xu hướng và tùy chọn giao dịch ngược làm cho nó trở thành một chiến lược dựa trên khối lượng linh hoạt.
Rủi ro:
Sự thay đổi khối lượng thường chậm trễ hành động của giá và PVO có thể đưa ra tín hiệu sai khi giá tiếp cận cuối xu hướng. Các thiết lập tham số sai cũng có thể ảnh hưởng đến độ chính xác của phán đoán. Cần thận trọng khi giao dịch ngược lại, vì xu hướng có thể mở rộng. Chỉ riêng khối lượng không thể xác định điểm nhập chính xác và cần sự giúp đỡ của các chỉ số khác để thời gian. khối lượng không dự đoán đầy đủ giá và cần theo dõi thận trọng.
Tối ưu hóa:
Kiểm tra và tối ưu hóa các kết hợp EMA để tìm các khoảng thời gian tốt nhất để phát hiện xu hướng. Thêm ngưỡng biến động khối lượng để lọc các tín hiệu không hiệu quả. Kết hợp MACD, KD để xác nhận nhập thêm. Thiết lập stop loss để kiểm soát lỗ giao dịch duy nhất. Chúng sẽ cải thiện đáng kể khả năng áp dụng chiến lược.
Kết luận:
Chiến lược dao động khối lượng phần trăm đánh giá sự thay đổi xu hướng khối lượng bằng cách tính toán sự khác biệt tỷ lệ phần trăm giữa các EMA khối lượng để dự đoán hướng giá tiềm năng. Nó áp dụng cấu trúc EMA đôi đơn giản và hiệu quả để đo lường biến động khối lượng và sử dụng mã hóa màu sắc trực quan để tăng hiệu quả trực quan. Tùy chọn giao dịch ngược linh hoạt và cài đặt tham số làm cho nó phù hợp cho cả giao dịch trung và dài hạn và ngắn hạn. Nhưng vì chỉ số khối lượng tụt lại tín hiệu giá và không thể xác định thời gian nhập chính xác, các tham số và kết hợp các chỉ số khác cần tối ưu hóa để cải thiện hiệu suất chiến lược.
/*backtest start: 2023-10-06 00:00:00 end: 2023-10-23 00:00:00 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=2 //////////////////////////////////////////////////////////// // Copyright by HPotter v1.0 27/09/2017 // The Percentage Volume Oscillator (PVO) is a momentum oscillator for volume. // PVO measures the difference between two volume-based moving averages as a // percentage of the larger moving average. As with MACD and the Percentage Price // Oscillator (PPO), it is shown with a signal line, a histogram and a centerline. // PVO is positive when the shorter volume EMA is above the longer volume EMA and // negative when the shorter volume EMA is below. This indicator can be used to define // the ups and downs for volume, which can then be use to confirm or refute other signals. // Typically, a breakout or support break is validated when PVO is rising or positive. // // You can change long to short in the Input Settings // WARNING: // - For purpose educate only // - This script to change bars colors. //////////////////////////////////////////////////////////// strategy(title="Percentage Volume Oscillator (PVO)", shorttitle="PVO") LengthShortEMA = input(12, minval=1) LengthLongEMA = input(26, minval=1) LengthSignalEMA = input(9, minval=1) reverse = input(false, title="Trade reverse") hline(0, color=gray, linestyle=line) xShortEMA = ema(volume , LengthShortEMA) xLongEMA = ema(volume , LengthLongEMA) xPVO = ((xShortEMA - xLongEMA) / xLongEMA) * 100 xSignalEMA = ema(xPVO , LengthSignalEMA) xPVOHisto = xPVO - xSignalEMA pos = iff(xSignalEMA < xPVO, -1, iff(xSignalEMA > xPVO, 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(xPVO, color=blue, title="PVO") plot(xSignalEMA, color=red, title="Signal") plot(xPVOHisto, color=gray, title="PVO Histo", style=histogram)