Chiến lược giao dịch chỉ số %R của Williams dựa trên chỉ số %R của Williams để tạo ra tín hiệu giao dịch. Chỉ số này đo đạc động lực của thị trường bằng cách so sánh giá đóng cửa hiện tại với mức giá cao nhất và thấp nhất trong một khoảng thời gian nhất định.
Khi đường chỉ số %R của Williams phá vỡ đường mua quá mức, nó tạo ra tín hiệu bán; khi đường chỉ số phá vỡ khu vực bán quá mức, nó tạo ra tín hiệu mua.
Tính toán giá trị Williams% R của một chu kỳ nhất định (như 14 ngày)
Thiết lập đường mua quá mức (như-20) và khu vực bán quá mức (như-80)
Làm nhiều hơn khi đường chỉ số đi từ dưới lên và vượt qua khu vực bán tháo
Khi đường chỉ số vượt quá đường mua từ trên xuống, thì lệnh thanh toán sẽ được thực hiện.
Bằng cách này, chiến lược có thể mở nhiều lỗ hổng ở các điểm có thể đảo ngược giá và nắm bắt cơ hội ngắn.
Thiết lập tham số đơn giản, quy tắc rõ ràng
Có thể đánh giá sớm quá mức mua bán
Tiến bộ trong hệ thống hóa giao dịch, không bị ảnh hưởng bởi cảm xúc cá nhân
%R Williams có thể bị bỏ lỡ cơ hội
Các tham số tối ưu hóa cần được thử nghiệm nhiều lần
Mua bán quá mức chỉ có giá trị tham khảo
Chiến lược chỉ số% R của Williams để nắm bắt cơ hội đảo ngược bằng cách đánh giá vùng quá mua quá bán. Thiết lập chiến lược quản lý vị trí và dừng lỗ hợp lý có thể kiểm soát rủi ro. Tuy nhiên, các nhà giao dịch cần chú ý đến vấn đề chậm trễ của chỉ số và cần hỗ trợ các công cụ kỹ thuật khác để xác minh và sử dụng chiến lược này một cách thận trọng.
/*backtest
start: 2023-01-01 00:00:00
end: 2023-09-13 00:00:00
period: 12h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
// © Julien_Eche
//@version=5
strategy("Williams %R Strategy", overlay=true, initial_capital=100000, shorttitle="W%R Strategy")
// Paramètres
length = input(14, "Length")
overboughtLevel = input(-20, "Overbought Level")
oversoldLevel = input(-80, "Oversold Level")
// Calcul du Williams %R
williamsR = -100 * (ta.highest(high, length) - close) / (ta.highest(high, length) - ta.lowest(low, length))
// Conditions d'achat et de vente
buySignal = ta.crossover(williamsR, oversoldLevel)
sellSignal = ta.crossunder(williamsR, overboughtLevel)
// Entrée en position longue
if buySignal
strategy.entry("Buy", strategy.long)
// Sortie de la position longue
if sellSignal
strategy.close("Buy")