Tài nguyên đang được tải lên... tải...

Chiến lược thiết lập đảo ngược cực

Tác giả:ChaoZhang, Ngày: 2024-02-21 14:08:09
Tags:

img

Tổng quan

Chiến lược thiết lập đảo ngược cực đoan là một chiến lược sử dụng đảo ngược đường K cực đoan. Nó sẽ đánh giá dựa trên kích thước thực thể của đường K gần đây nhất và giá trị trung bình, và tạo ra tín hiệu giao dịch khi kích thước thực thể lớn hơn giá trị trung bình và đảo ngược xảy ra.

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

Chiến lược này chủ yếu đánh giá kích thước thực thể của dòng K hiện tại và kích thước tổng thể của dòng K.

Nó sẽ ghi lại kích thước thực thể (sự khác biệt giữa mở và đóng) của đường K mới nhất và kích thước tổng thể của đường K (sự khác biệt giữa cao nhất và thấp nhất).

Sau đó, sử dụng Trung bình Di chuyển True Range (RMA) để tính kích thước thực thể trung bình và kích thước đường K của 20 đường K cuối cùng.

Khi đường K mới nhất tăng và kích thước thực thể lớn hơn kích thước thực thể trung bình, và kích thước đường K tổng thể cũng lớn hơn 2 lần kích thước đường K trung bình, một tín hiệu dài được tạo ra.

Ngược lại, khi đường K cuối cùng giảm và kích thước thực thể cũng đáp ứng các điều kiện trên, một tín hiệu ngắn được tạo ra.

Đó là, các tín hiệu giao dịch được tạo ra khi các đường K cực đảo ngược, bằng cách đánh giá với các giá trị trung bình.

Phân tích lợi thế

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

  1. Sử dụng đặc điểm đường K cực đoan để dễ dàng đảo ngược
  2. So sánh các giá trị cực của kích thước thực thể và kích thước K-line tổng thể để tìm ra các điểm ngoại lệ
  3. Sử dụng RMA để tính toán trung bình động thích nghi với những thay đổi trên thị trường
  4. Kết hợp với các mô hình đảo ngược cho tín hiệu đáng tin cậy hơn

Phân tích rủi ro

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

  1. Đường K cực không nhất thiết phải đảo ngược, có thể tiếp tục chạy
  2. Cài đặt tham số không chính xác có thể gây ra quá nhạy cảm hoặc mờ
  3. Cần sự biến động thị trường đủ để hỗ trợ, không phù hợp cho việc hợp nhất
  4. Có thể tạo ra các tín hiệu giao dịch thường xuyên, tăng chi phí giao dịch và rủi ro trượt

Để giảm rủi ro, các tham số có thể được điều chỉnh thích hợp hoặc dừng lỗ có thể được thêm vào các lỗ kiểm soát.

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

Chiến lược này có thể được tối ưu hóa trong các khía cạnh sau:

  1. Thêm bộ lọc âm lượng để tránh các sự đột phá sai
  2. Sử dụng các chỉ số biến động để tối ưu hóa cài đặt tham số một cách động
  3. Kết hợp các chỉ số xu hướng để tránh đảo ngược dài và ngắn
  4. Thêm các mô hình học máy để đánh giá xác suất đảo ngược đường K
  5. Thêm cơ chế dừng lỗ

Tóm lại

Chiến lược thiết lập đảo ngược cực đoan tạo ra tín hiệu giao dịch khi đảo ngược xảy ra bằng cách đánh giá các tình huống cực đoan của đường K mới nhất. Nó có lợi thế sử dụng các tính năng đường K cực đoan đặc biệt, nhưng cũng có một số rủi ro. Hiệu suất chiến lược tốt hơn có thể đạt được thông qua tối ưu hóa tham số và các biện pháp kiểm soát rủi ro.


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

//@version=4
strategy("Extreme Reversal Setup", overlay=true)

bodySize = input(defval=0.75)
barsBack = input(title="Lookback Period", type=input.integer, defval=20, minval=0)
bodyMultiplier = input(title="Bar ATR Multiplier", type=input.float, defval=2.0, minval=0)

myBodySize = abs(close - open)
averageBody = rma(myBodySize, barsBack)
myCandleSize = abs(high - low)
averageCandle = rma(myCandleSize, barsBack)

signal_long = open[1]-close[1] >= bodySize*(high[1]-low[1]) and 
   high[1]-low[1] > averageCandle*bodyMultiplier and 
   open[1]-close[1] > averageBody and close > open
signal_short = close[1]-open[1] >= bodySize*(high[1]-low[1]) and 
   high[1]-low[1] > averageCandle*bodyMultiplier and 
   close[1]-open[1] > averageBody and open > close

plotshape(signal_long, "LONG", shape.triangleup, location.belowbar, size=size.normal)
plotshape(signal_short, "SHORT", shape.triangledown, location.belowbar, size=size.normal)

strategy.entry("LONG", strategy.long, when=signal_long)
strategy.entry("SHORT", strategy.short, when=signal_short)

Thêm nữa