Bill Williams Chiến lược giao dịch dao động tuyệt vời

Tác giả:ChaoZhang, Ngày: 2023-12-19 15:27:15
Tags:

img

Tổng quan

Chiến lược giao dịch Bill Williams Awesome Oscillator là một chiến lược giao dịch định lượng được phát triển dựa trên các khuyến nghị được đề xuất bởi Bill Williams trong cuốn sách của ông New Trading Dimensions. Chiến lược sử dụng sự khác biệt giữa các đường trung bình di chuyển nhanh và chậm để xây dựng một chỉ số dao động và hiển thị nó dưới dạng biểu đồ, tạo ra các tín hiệu giao dịch thông qua thay đổi màu sắc của biểu đồ.

Chiến lược logic

Chỉ số cốt lõi của chiến lược này là Awesome Oscillator (AO). Công thức của nó là:

AO = SMA ((Giá trung bình, độ dài nhanh) - SMA ((Giá trung bình, độ dài chậm)

Trong đó Giá trung bình lấy trung bình của giá cao và thấp; Độ dài nhanh đại diện cho giai đoạn của trung bình di chuyển nhanh; Độ dài chậm đại diện cho giai đoạn của trung bình di chuyển chậm.

Chỉ số AO phản ánh sự dao động của giá thị trường ở các quy mô thời gian khác nhau thông qua sự khác biệt giữa trung bình chuyển động nhanh và chậm. Khi trung bình chuyển động nhanh cao hơn so với trung bình chuyển động chậm, nó báo hiệu rằng đà tăng giá ngắn hạn mạnh hơn đà tăng giá dài hạn và cung cấp tín hiệu mua. Khi trung bình chuyển động nhanh thấp hơn đà tăng giá chậm, nó báo hiệu rằng đà tăng giá ngắn hạn yếu hơn đà tăng giá dài hạn và cung cấp tín hiệu bán.

Chiến lược này sử dụng sự khác biệt giữa giá trị AO hiện tại và giai đoạn trước để xác định vị trí dài / ngắn của giai đoạn hiện tại. Các màu sắc khác nhau được sử dụng để xác định chúng trên biểu đồ: màu xanh dương khi AO hiện tại lớn hơn giai đoạn trước, cho thấy phù hợp với thời gian dài; màu đỏ khi AO hiện tại thấp hơn giai đoạn trước, cho thấy phù hợp với thời gian ngắn.

Phân tích lợi thế

Những lợi thế chính của chiến lược này bao gồm:

  1. Sử dụng sự khác biệt giữa các đường trung bình động để xây dựng chỉ số làm mịn dữ liệu giá và giúp lọc tiếng ồn thị trường;
  2. Sự khác biệt giữa các đường trung bình di chuyển nhanh và chậm ghi lại sự thay đổi xu hướng giá qua các chân trời thời gian khác nhau;
  3. Biểu đồ biểu đồ hiển thị trực quan trạng thái dài / ngắn để dễ dàng đánh giá hướng giao dịch;
  4. Các tham số có thể tùy chỉnh để điều chỉnh độ nhạy của chỉ số phục vụ các công cụ giao dịch khác nhau.

Phân tích rủi ro

Ngoài ra còn có một số rủi ro với chiến lược này:

  1. Các thiết lập tham số không chính xác có thể dẫn đến các tín hiệu giao dịch thường xuyên, dẫn đến giao dịch quá mức;
  2. Cấu trúc tương đối phức tạp của chỉ số AO có thể dẫn đến việc bỏ lỡ các cơ hội giao dịch nếu các tham số không được thiết lập đúng cách;
  3. Các tín hiệu đến từ một nguồn duy nhất thiếu xác minh từ các chỉ số khác.

Để giảm thiểu các rủi ro trên, các thông số có thể được tối ưu hóa, cấu trúc chỉ số có thể được điều chỉnh và các chỉ số khác có thể được sử dụng để xác minh.

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

Một số hướng có thể tối ưu hóa chiến lược này bao gồm:

  1. Tối ưu hóa chiều dài trung bình di chuyển nhanh và chậm để tìm ra sự kết hợp thông số tốt nhất;
  2. Thử các loại trung bình động khác nhau để xây dựng chỉ số AO, ví dụ EMA, LWMA, v.v.;
  3. Bao gồm các chỉ số theo xu hướng và dao động để cải thiện AO;
  4. Thêm các cơ chế dừng lỗ để kiểm soát lỗ cho mỗi giao dịch.

Kết luận

Tóm lại, chiến lược giao dịch Bill Williams Awesome Oscillator xác định hiệu quả các cơ hội đảo ngược ngắn hạn bằng cách đánh giá sự thay đổi xu hướng giá bằng cách sử dụng sự khác biệt giữa trung bình di chuyển nhanh và chậm.


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

//@version=2
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 29/12/2016
//    This indicator is based on Bill Williams` recommendations from his book 
//    "New Trading Dimensions". We recommend this book to you as most useful reading.
//    The wisdom, technical expertise, and skillful teaching style of Williams make 
//    it a truly revolutionary-level source. A must-have new book for stock and 
//    commodity traders.
//    The 1st 2 chapters are somewhat of ramble where the author describes the 
//    "metaphysics" of trading. Still some good ideas are offered. The book references 
//    chaos theory, and leaves it up to the reader to believe whether "supercomputers" 
//    were used in formulating the various trading methods (the author wants to come across 
//    as an applied mathemetician, but he sure looks like a stock trader). There isn't any 
//    obvious connection with Chaos Theory - despite of the weak link between the title and 
//    content, the trading methodologies do work. Most readers think the author's systems to 
//    be a perfect filter and trigger for a short term trading system. He states a goal of 
//    10%/month, but when these filters & axioms are correctly combined with a good momentum 
//    system, much more is a probable result.
//    There's better written & more informative books out there for less money, but this author 
//    does have the "Holy Grail" of stock trading. A set of filters, axioms, and methods which are 
//    the "missing link" for any trading system which is based upon conventional indicators.
//    This indicator plots the oscillator as a histogram where periods fit for buying are marked 
//    as blue, and periods fit for selling as red. If the current value of AC (Awesome Oscillator) 
//    is over the previous, the period is deemed fit for buying and the indicator is marked blue. 
//    If the AC values is not over the previous, the period is deemed fir for selling and the indicator 
//    is marked red.
//
// 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("Bill Williams. Awesome Oscillator (AO)")
nLengthSlow = input(34, minval=1, title="Length Slow")
nLengthFast = input(5, minval=1, title="Length Fast")
reverse = input(false, title="Trade reverse")
xSMA1_hl2 = sma(hl2, nLengthFast)
xSMA2_hl2 = sma(hl2, nLengthSlow)
xSMA1_SMA2 = xSMA1_hl2 - xSMA2_hl2
cClr = xSMA1_SMA2 > xSMA1_SMA2[1] ? blue : red
pos = iff(xSMA1_SMA2 > xSMA1_SMA2[1], 1,
	   iff(xSMA1_SMA2 < xSMA1_SMA2[1], -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(xSMA1_SMA2, style=histogram, linewidth=1, color=cClr)

Thêm nữa