Chiến lược xu hướng dựa trên sự thay đổi về giá và khối lượng


Ngày tạo: 2023-12-01 14:56:17 sửa đổi lần cuối: 2023-12-01 14:56:17
sao chép: 0 Số nhấp chuột: 601
1
tập trung vào
1619
Người theo dõi

Chiến lược xu hướng dựa trên sự thay đổi về giá và khối lượng

Tổng quan

Chiến lược này được gọi là chiến lược xu hướng dựa trên biến động giá. Chiến lược này có mục đích theo dõi xu hướng bằng cách tính toán sự thay đổi tích lũy của giá và khối lượng giao dịch, kết hợp với trung bình di chuyển để xây dựng danh sách dài và ngắn.

Nguyên tắc chiến lược

Chỉ số trung tâm của chiến lược này là chỉ số biến động tích lũy giá (MPVT). Chỉ số này phản ánh sự phổ biến của thị trường và dòng tiền vào và ra thông qua sự thay đổi của giá cả và khối lượng giao dịch. Công thức tính toán cụ thể như sau:

rV = 交易量 / 50000
xCumPVT = 昨日xCumPVT + (rV * (最新收盘价 - 昨日收盘价) / 昨日收盘价)

Sau đó kết hợp các tham số Level và Scale để xây dựng chỉ số Residence:

nRes = Level + Scale * xCumPVT

Chỉ số Residence phản ánh sự thay đổi tổng hợp của giá cả và khối lượng giao dịch. Khi nó đi qua trung bình di chuyển đơn giản N ngày của nó, làm nhiều; Khi nó đi qua trung bình di chuyển đơn giản N ngày của nó, làm rỗng.

Phân tích lợi thế

Chiến lược này có những lợi thế chính như sau:

  1. Các chỉ số giá trị có thể đánh giá được sự phổ biến của thị trường và dòng tiền, có thể bắt kịp thời các điểm chuyển hướng.
  2. Kết hợp với tối ưu hóa tham số, các tham số có thể được điều chỉnh một cách linh hoạt để phù hợp với môi trường thị trường khác nhau.
  3. Có thể thực hiện chiến lược làm空, mở rộng các trường hợp sử dụng chiến lược bằng cách nhập các tham số ngược.

Phân tích rủi ro

Chiến lược này cũng có một số rủi ro:

  1. Các chỉ số giá có thể tạo ra tín hiệu sai, có thể xảy ra trường hợp phá vỡ không hợp lệ. Các tham số có thể được điều chỉnh thích hợp hoặc lọc kết hợp với các chỉ số khác.
  2. Xu hướng thị trường có thể áp dụng tốt hơn, điều chỉnh thị trường dễ tạo ra tín hiệu sai. Bạn có thể xem xét kết hợp với xu hướng và chỉ số tỷ lệ biến động.
  3. Hiệu quả tối ưu hóa tham số phụ thuộc vào chu kỳ lịch sử, có thể tạo ra rủi ro quá phù hợp. Các tham số nên được điều chỉnh thích hợp hoặc sử dụng phương pháp tối ưu hóa từng bước.

Hướng tối ưu hóa

Chiến lược này có thể được tối ưu hóa theo các khía cạnh sau:

  1. Bạn có thể thử nghiệm các phương tiện di chuyển khác nhau, chẳng hạn như phương tiện di chuyển có trọng lượng, EMA, và kết hợp để xem hiệu quả nào tốt hơn.

  2. Có thể kết hợp với các chỉ số khác như RSI, KD và các tín hiệu lọc khác để giảm khả năng xảy ra tín hiệu sai.

  3. Bạn có thể thử nghiệm các tổ hợp tham số khác nhau để tìm các cặp tham số tốt nhất. Bạn cũng có thể sử dụng phương pháp tối ưu hóa từng bước để các tham số được cập nhật trong thời gian thực.

  4. Có thể tăng sự ổn định của chiến lược bằng cách kết hợp với các chỉ số theo xu hướng, chẳng hạn như Brin Belt.

Tóm tắt

Chiến lược này là một chiến lược COMBO giá điển hình, thông qua tính toán giá trị tích lũy và thay đổi khối lượng giao dịch, thiết kế chỉ số giá trị thay đổi Residence, có thể phản ánh hiệu quả tình trạng dòng tiền vào và ra khỏi thị trường. Chiến lược này đơn giản, thực tế, phù hợp với tình huống xu hướng, có không gian lớn để tối ưu hóa thông qua các tham số tối ưu hóa và kết hợp các chỉ số, là chiến lược xu hướng rất đáng được đề nghị.

Mã nguồn chiến lược
/*backtest
start: 2023-10-31 00:00:00
end: 2023-11-20 00:00:00
period: 3h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=2
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 20/07/2018
//  The related article is copyrighted material from
//  Stocks & Commodities.
//  Strategy by HPotter.
//
// You can change long to short in the Input Settings
// WARNING:
// - For purpose educate only
// - This script to change bars colors.
////////////////////////////////////////////////////////////
strategy(title="Modified Price-Volume Trend Backtest", shorttitle="MPVT")
Level = input(0)
Scale = input(1)
Length = input(23)
reverse = input(false, title="Trade reverse")
xOHLC4 = ohlc4
xV = volume
rV = xV / 50000
xCumPVT = nz(xCumPVT[1]) + (rV * (xOHLC4 - xOHLC4[1]) / xOHLC4[1])
nRes = Level + Scale * xCumPVT
xMARes = sma(nRes, Length)
pos = iff(nRes > xMARes, 1,
       iff(nRes < xMARes, -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(nRes, color=red, title="MPVT", linewidth = 2)
plot(xMARes, color=blue, title="MPVT", linewidth = 2)