Chiến lược kiểm tra lại dao động dự báo điểm trục

Tác giả:ChaoZhang, Ngày: 2023-12-20 13:44:26
Tags:

img

Tổng quan

Chiến lược này kiểm tra lại Pivot Point Forecast Oscillator được phát triển bởi Tushar Chande. Máy dao động tính toán sự khác biệt tỷ lệ phần trăm giữa giá đóng cửa và giá dự báo hồi quy tuyến tính n-period. Nó vượt qua trên 0 khi giá dự báo lớn hơn giá đóng cửa và vượt qua dưới 0 khi thấp hơn. Điều này có thể được sử dụng để xác định các bước ngoặt trên thị trường.

Chiến lược logic

Chiến lược này sử dụng Pivot Point Forecast Oscillator để xác định hướng thị trường. Cụ thể, nó tính toán sự khác biệt tỷ lệ phần trăm giữa giá dự báo hồi quy tuyến tính n-period và giá đóng thực tế. Khi tỷ lệ chênh lệch tỷ lệ vượt quá 0, nó đi dài. Khi tỷ lệ chênh lệch tỷ lệ chênh lệch vượt dưới 0, nó đi ngắn.

  1. Tính toán giá dự báo hồi quy tuyến tính thời gian n xLG
  2. Tính toán sự khác biệt tỷ lệ phần trăm giữa giá đóng cửa và giá dự báo xCFO
  3. Xác định mối quan hệ giữa xCFO và 0 với tín hiệu đầu ra possig
    1. xCFO > 0 và long được phép, possig = 1
    2. xCFO < 0 và ngắn được phép, possig = -1
    3. Nếu không, possig = 0
  4. Đi dài hoặc ngắn dựa trên tín hiệu possig

Chiến lược đơn giản và thẳng thắn, so sánh giá thực tế với giá dự báo để xác định xem thị trường có được đánh giá quá cao hay thấp hay không, do đó tạo ra các tín hiệu giao dịch.

Phân tích lợi thế

Chiến lược có những lợi thế sau:

  1. Logic rõ ràng, dễ hiểu và thực hiện.
  2. Một vài thông số, dễ điều chỉnh.
  3. linh hoạt trong việc lựa chọn khung thời gian, thích nghi với các thị trường khác nhau.
  4. Dễ dàng chuyển đổi giữa dài và ngắn.
  5. Chỉ báo trực quan tạo ra các tín hiệu giao dịch rõ ràng.

Phân tích rủi ro

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

  1. Dự đoán hồi quy tuyến tính có thời gian, có thể không duy trì hiệu quả.
  2. Chọn tham số không đúng có thể gây ra giao dịch quá mức.
  3. Sự kiện thiên nga đen có thể gây ra tín hiệu không chính xác.

Các biện pháp đối phó:

  1. Kết hợp với các chỉ số khác để đảm bảo tính hợp lệ của dự đoán hồi quy tuyến tính.
  2. Tối ưu hóa các thông số để giảm tần suất giao dịch.
  3. Thêm stop loss để kiểm soát lỗ giao dịch duy nhất.

Hướng dẫn tối ưu hóa

Chiến lược có thể được cải thiện trong các khía cạnh sau:

  1. Kết hợp với MA và các chỉ số khác để làm giàu các tín hiệu giao dịch.
  2. Thêm stop loss để tránh tổn thất lớn.
  3. Tối ưu hóa các thông số để tìm kết hợp tốt nhất.
  4. Thêm tự động lấy lợi nhuận.
  5. Xem xét chi phí giao dịch, đặt mức dừng lỗ hợp lý và lấy lợi nhuận.

Kết luận

Pivot Point Forecast Oscillator là một chiến lược giao dịch lượng tử sử dụng giá dự báo hồi quy tuyến tính. Chiến lược có logic đơn giản và các tham số linh hoạt, tạo ra các tín hiệu giao dịch rõ ràng. Có chỗ để cải thiện hơn nữa trong việc tối ưu hóa stop loss, lựa chọn tham số, kết hợp các tín hiệu chỉ số khác v.v., để đạt được hiệu suất giao dịch tốt hơn.


/*backtest
start: 2022-12-13 00:00:00
end: 2023-12-19 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=2
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 19/03/2018
// The Chande Forecast Oscillator developed by Tushar Chande The Forecast 
// Oscillator plots the percentage difference between the closing price and 
// the n-period linear regression forecasted price. The oscillator is above 
// zero when the forecast price is greater than the closing price and less 
// than zero if it is below.
//
// You can change long to short in the Input Settings
// WARNING:
//  - For purpose educate only
//  - This script to change bars colors.
////////////////////////////////////////////////////////////
strategy(title="Chande Forecast Oscillator Backtest", shorttitle="CFO")
Length = input(14, minval=1)
Offset = input(0)
reverse = input(false, title="Trade reverse")
hline(0, color=black, linestyle=line)
xLG = linreg(close, Length, Offset)
xCFO = ((close -xLG) * 100) / close
pos = iff(xCFO > 0, 1,
       iff(xCFO < 0, -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(xCFO, color=red, title="CFO")

Thêm nữa