Chiến lược theo dõi xu hướng định lượng dựa trên nhiều chỉ số kỹ thuật

Tác giả:ChaoZhang, Ngày: 2024-01-22 10:40:01
Tags:

img

Tổng quan

Chiến lược này kết hợp nhiều chỉ số kỹ thuật như Bollinger Bands, Stochastic Oscillator và Relative Strength Index để thiết lập tín hiệu mua và bán cho các hoạt động theo dõi xu hướng dài hạn trên tài sản tiền điện tử.

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

Chiến lược đầu tiên thiết lập các tham số tính toán cho các chỉ số như Bollinger Bands, Stochastic Oscillator và RSI. Tín hiệu mua được định nghĩa là: đóng dưới Bollinger Lower Band, đường K dưới 20 và trên đường D, RSI dưới 30. Khi cả ba điều kiện được đáp ứng cùng một lúc, mua dài. Tín hiệu bán được định nghĩa một phần là: đường K trên 70 và dưới 70 trong giai đoạn trước (cross cross chết vàng), và có sự khác biệt RSI. Khi hai điều kiện này được đáp ứng, đóng 50% vị trí.

Phân tích lợi thế

Chiến lược này kết hợp nhiều chỉ số để đánh giá tình trạng thị trường và tránh đánh giá sai do một chỉ số duy nhất gây ra. Bollinger Bands để đánh giá liệu nó có bị bán quá mức, Stochastic Oscillator để đánh giá liệu nó có bị bán quá mức và RSI để đánh giá liệu nó có bị bán quá mức hay không. Các hiệu ứng kết hợp của nhiều chỉ số có thể xác định hiệu quả đáy thị trường cho thời gian dài chính xác. Ngoài ra, chiến lược cũng sử dụng sự khác biệt của RSI để đánh giá sự đảo ngược tiềm năng của xu hướng để tránh dừng lỗ muộn. Do đó, chiến lược này có thể nắm bắt tốt hơn các cơ hội bán cao thấp.

Phân tích rủi ro

Chiến lược này dựa trên tối ưu hóa tham số. Nếu các tham số được đặt không đúng, nó sẽ không thể xác định chính xác đáy và đỉnh. Ngoài ra, có thể có sự kết hợp không chính xác giữa các chỉ số. Ví dụ, Bollinger Bands xác định quá bán, nhưng các chỉ số khác không đạt được các điều kiện tương ứng. Tất cả các tình huống này có thể dẫn đến tổn thất không cần thiết. Cuối cùng, chiến lược không xem xét mức rút tối đa và quản lý vị trí, cũng cần tối ưu hóa.

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

  1. Kiểm tra và tối ưu hóa các thông số chỉ số để tìm ra sự kết hợp thông số tốt nhất.

  2. Thêm điều khiển rút tiền tối đa để tạm dừng giao dịch khi đạt đến ngưỡng.

  3. Thêm một mô-đun quản lý vị trí để điều chỉnh động các vị trí dựa trên điều kiện thị trường.

  4. Thêm một chiến lược dừng lỗ Khi hướng thị trường được xác định không chính xác, hãy đặt một điểm dừng lỗ hợp lý để kiểm soát lỗ đơn.

Tóm lại

Ý tưởng tổng thể của chiến lược này là rõ ràng. Thông qua sự đánh giá của nhiều chỉ số, nó có khả năng mạnh mẽ để nắm bắt đáy và đỉnh. Nhưng một số thông số và mô-đun vẫn còn chỗ cho tối ưu hóa. Với các điều chỉnh thích hợp, nó có thể trở thành một chiến lược định lượng lợi nhuận ổn định.


/*backtest
start: 2024-01-14 00:00:00
end: 2024-01-21 00:00:00
period: 1m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Stratégie d'Entrée et de Sortie Longue", overlay=true)

// Paramètres des indicateurs
longueurBollinger = 20
stdDevBollinger = 2
longueurStochastic = 14
smoothK = 3
smoothD = 3
longueurRSI = 14

// Bollinger Bands
basis = ta.sma(close, longueurBollinger)
dev = ta.stdev(close, longueurBollinger)
lowerBand = basis - stdDevBollinger * dev

// Stochastic Oscillator
k = ta.sma(ta.stoch(close, high, low, longueurStochastic), smoothK)
d = ta.sma(k, smoothD)

// RSI
rsi = ta.rsi(close, longueurRSI)

// Logique des autres indicateurs (à compléter)

// Conditions d'entrée (à définir)
conditionBollinger = close < lowerBand
conditionStochastic = k < 20 and k > d
conditionRSI = rsi < 30
// Autres conditions (Braid Filter, VolumeBIS, Price Density...)

conditionEntree = conditionBollinger and conditionStochastic and conditionRSI // et autres conditions

// Exécution du trade (entrée)
if (conditionEntree)
    strategy.entry("Long Position", strategy.long)

// Conditions de sortie
stochCrossOver70 = k > 70 and k[1] <= 70

// Simplification de la détection de divergence baissière
// (Cette méthode est basique et devrait être raffinée pour une analyse précise)
highsRising = high > high[1]
lowsRising = low > low[1]
rsiFalling = rsi < rsi[1]
divergenceBearish = highsRising and lowsRising and rsiFalling

// Clôturer la moitié de la position
if (stochCrossOver70 and divergenceBearish)
    strategy.close("Long Position", qty_percent = 50)


Thêm nữa