Chiến lược được đặt tên là
Cốt lõi của chiến lược này là chỉ số dao động giá giảm (DPO). DPO tương tự như đường trung bình động, có thể lọc các xu hướng dài hạn trong giá để làm cho biến động chu kỳ rõ rệt hơn. Cụ thể, DPO so sánh giá với đường trung bình động đơn giản N ngày của họ. Khi giá trên đường trung bình động, DPO là dương; khi giá dưới đường trung bình động, DPO là âm. Điều này dẫn đến một dao động dao động xung quanh trục 0. Chúng ta có thể sử dụng dương / âm của DPO để đánh giá sự gia tăng / giảm giá tương đối với xu hướng.
Chiến lược này đặt tham số N thành 14 và xây dựng chỉ số DPO 14 ngày. Khi DPO dương tính, một tín hiệu dài được phát hành. Khi DPO âm tính, một tín hiệu ngắn được phát hành.
Để giảm thiểu rủi ro, tối ưu hóa có thể được xem xét trong các khía cạnh sau:
Thêm các cơ chế dừng lỗ để kiểm soát lỗ đơn.
Điều chỉnh giá trị của tham số N để tìm tham số tối ưu.
Bao gồm các chỉ số xu hướng để tránh giao dịch chống lại các xu hướng quan trọng.
Chiến lược này tạo ra các tín hiệu giao dịch dựa trên chỉ số dao động giá giảm. Bằng cách so sánh với trung bình động, chỉ số này lọc các xu hướng dài hạn trong giá để làm cho các đặc điểm chu kỳ giá rõ rệt hơn. Điều này giúp khám phá một số cơ hội giao dịch ẩn. Đồng thời, nó cũng phải đối mặt với các vấn đề như độ nhạy của tham số, lọc, vv. Vẫn còn nhiều chỗ để cải thiện hiệu quả thông qua tối ưu hóa liên tục.
/*backtest start: 2023-11-16 00:00:00 end: 2023-11-20 08:00:00 period: 30m basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=2 //////////////////////////////////////////////////////////// // Copyright by HPotter v1.0 31/03/2017 // The Detrend Price Osc indicator is similar to a moving average, // in that it filters out trends in prices to more easily identify // cycles. The indicator is an attempt to define cycles in a trend // by drawing a moving average as a horizontal straight line and // placing prices along the line according to their relation to a // moving average. It provides a means of identifying underlying // cycles not apparent when the moving average is viewed within a // price chart. Cycles of a longer duration than the Length (number // of bars used to calculate the Detrend Price Osc) are effectively // filtered or removed by the oscillator. // // You can change long to short in the Input Settings // Please, use it only for learning or paper trading. Do not for real trading. //////////////////////////////////////////////////////////// strategy(title="Detrended Price Oscillator", shorttitle="DPO") Length = input(14, minval=1) Series = input(title="Price", defval="close") reverse = input(false, title="Trade reverse") hline(0, color=green, linestyle=line) xPrice = close xsma = sma(xPrice, Length) nRes = xPrice - xsma pos = iff(nRes > 0, 1, iff(nRes < 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(nRes, color=red, title="Detrended Price Oscillator")