Xu hướng theo chiến lược

Tác giả:ChaoZhang, Ngày: 2023-11-06 10:09:02
Tags:

img

Tổng quan

Chiến lược này dựa trên nguyên tắc theo xu hướng. Nó sử dụng chỉ số Parabolic SAR để xác định hướng xu hướng của thị trường và kết hợp chỉ số barcolor để hình dung trạng thái giá tăng / giảm. Nó đi dài khi xu hướng tăng và đi ngắn khi xu hướng giảm, nhằm mục đích nắm bắt lợi nhuận từ xu hướng thị trường.

Chiến lược logic

Chiến lược này chủ yếu sử dụng chỉ số SAR Parabolic để đánh giá hướng xu hướng thị trường. SAR Parabolic, còn được gọi là chỉ số dừng và đảo ngược parabolic, bao gồm hai thông số: Step, đại diện cho bước chuyển động điểm SAR và Max, đại diện cho bước tối đa cho phép các điểm SAR. Khi thị trường đang trong xu hướng, các điểm SAR sẽ gắn bó với giá và di chuyển lên hoặc xuống liên tục cùng với xu hướng. Khi xu hướng đảo ngược, các điểm SAR sẽ vượt qua giá và xuất hiện ở phía bên kia. Do đó, bằng cách so sánh các điểm SAR với giá cao / thấp, hướng xu hướng hiện tại có thể được xác định.

Cụ thể, khi các điểm SAR nằm dưới giá thấp nhất, nó cho thấy xu hướng tăng, và chiến lược sẽ đi dài. Khi các điểm SAR vượt qua trên giá cao nhất, nó biểu thị sự đảo ngược xu hướng, và chiến lược sẽ đóng các vị trí dài. Ngược lại, khi các điểm SAR nằm trên giá cao nhất, nó báo hiệu xu hướng giảm, và chiến lược sẽ đi ngắn. Khi các điểm SAR vượt qua dưới giá thấp nhất, nó đại diện cho sự đảo ngược, và chiến lược sẽ đóng các vị trí ngắn.

Để trực quan xác định tình trạng xu hướng hiện tại một cách trực quan hơn, chiến lược cũng sử dụng chỉ số màu thanh để tô màu các thanh. Các thanh xanh lá cây đại diện cho xu hướng tăng khi đóng cao hơn các điểm SAR, trong khi các thanh đỏ biểu thị xu hướng giảm khi đóng thấp hơn.

Phân tích lợi thế

Ưu điểm lớn nhất của chiến lược này là nó có thể nắm bắt chính xác xu hướng thị trường và theo dõi xu hướng giao dịch, tránh sự can thiệp của tiếng ồn thị trường thường xuyên.

  1. Sử dụng Parabolic SAR để xác định xu hướng, thiết kế các điểm SAR rất sáng tạo và có thể nhanh chóng và chính xác nắm bắt sự đảo ngược xu hướng.

  2. Sử dụng chỉ số màu thanh để hiển thị trực quan tình trạng bò / gấu hiện tại một cách trực quan.

  3. Các tín hiệu giao dịch đến từ xu hướng chính nó thay vì các yếu tố khác, tránh bị đánh lừa bởi biến động giá ngắn hạn.

  4. Sử dụng theo dõi xu hướng ngăn chặn lỗ, dừng lại kịp thời mà không quá nhạy cảm, ngăn ngừa bị mắc kẹt trong bẫy.

  5. Duy trì hướng giao dịch phù hợp, tránh giao dịch ngược không cần thiết, có lợi cho sự đơn giản.

  6. Các quy tắc giao dịch đơn giản và rõ ràng, dễ hiểu và thực hiện, phù hợp cho người mới bắt đầu học.

Phân tích rủi ro

Những rủi ro lớn nhất của chiến lược này là:

  1. Không thể xác định các điểm vào và ra cụ thể, có khả năng bỏ lỡ các cơ hội xu hướng sớm và muộn.

  2. Ngừng giao dịch và giữ các vị trí trong quá trình hợp nhất, không thể kiếm lợi nhuận hoặc dừng lỗ, với nguy cơ bị bắt.

  3. Không thể hạn chế tỷ lệ rủi ro/lợi nhuận của mỗi giao dịch, lỗ giao dịch duy nhất có thể quá lớn.

  4. Chỉ giao dịch đơn phương, chỉ có thể nắm bắt được xu hướng tăng hoặc giảm.

  5. Không xem xét phân tích xu hướng lớn hơn, mang lại rủi ro giao dịch chống lại xu hướng chính.

Để đối phó với những rủi ro này, tối ưu hóa có thể được thực hiện trong các khía cạnh sau:

  1. Kết hợp các chỉ số khác để xác định các điểm nhập và xuất cụ thể.

  2. Thêm các chỉ số phát hiện xu hướng để tránh mở các vị trí trong quá trình củng cố.

  3. Thiết lập các quy tắc quản lý rủi ro để giới hạn lỗ trên mỗi giao dịch.

  4. Tối ưu hóa logic chuyển đổi dài / ngắn để nắm bắt nhiều cơ hội giao dịch hơn.

  5. Thêm phân tích nhiều khung thời gian để xác định hướng xu hướng chính.

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

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

  1. Tối ưu hóa các thông số SAR Parabolic để phù hợp hơn với các sản phẩm và khung thời gian khác nhau.

  2. Thêm các bộ lọc như trung bình động vào các điểm nhập bộ lọc.

  3. Kết hợp các chiến lược đột phá để có được trong một xu hướng sớm sau khi xu hướng bắt đầu.

  4. Tối ưu hóa các chiến lược dừng lỗ để tránh quá nhạy cảm hoặc quá thiếu nhạy cảm.

  5. Thêm chiến lược thu lợi nhuận để tích cực thu lợi nhuận khi đạt đến một mức độ nhất định.

  6. Cải thiện các chiến lược quản lý tiền để cải thiện lợi nhuận điều chỉnh rủi ro.

  7. Tối ưu hóa nhiều khung thời gian để đảm bảo sự phù hợp của xu hướng lớn với hướng giao dịch.

  8. Giới thiệu máy học vv để tối ưu hóa các thông số một cách năng động.

Tóm lại

Chiến lược này xác định hướng xu hướng với chỉ số Parabolic SAR và theo dõi xu hướng ngay sau khi bắt đầu. Ưu điểm là tín hiệu giao dịch đến từ xu hướng chính nó, ít nhạy cảm với tiếng ồn thị trường. Nhưng nó cũng có những điểm yếu như không thể giới hạn rủi ro mỗi giao dịch và thiếu điểm nhập.


/*backtest
start: 2023-10-06 00:00:00
end: 2023-11-05 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
strategy("Trend Trader Strategy (Trend Code)", shorttitle="Trend Trader Strategy (Trend Code)", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=100)

//Inputs
TrendCode = input(5, title = "Trend Code")

////////////////////////////////////////////////////////////////////////////////
// BACKTESTING RANGE
 
// From Date Inputs
fromDay = input(defval = 1, title = "From Day", minval = 1, maxval = 31)
fromMonth = input(defval = 1, title = "From Month", minval = 1, maxval = 12)
fromYear = input(defval = 2019, title = "From Year", minval = 1970)
 
// To Date Inputs
toDay = input(defval = 1, title = "To Day", minval = 1, maxval = 31)
toMonth = input(defval = 1, title = "To Month", minval = 1, maxval = 12)
toYear = input(defval = 2020, title = "To Year", minval = 1970)
 
// Calculate start/end date and time condition
startDate = timestamp(fromYear, fromMonth, fromDay, 00, 00)
finishDate = timestamp(toYear, toMonth, toDay, 00, 00)
time_cond = true
 
////////////////////////////////////////////////////////////////////////////////

//Parabolic SAR
psar = sar(0.02, 0.02, TrendCode * 0.005)


//Plot PSAR
plot(psar, title="PSAR", color = color.teal , trackprice=true)

//Barcolor
barcolor(close > psar ? color.green : color.red, title = "Bar Color")

if (psar >= high and time_cond)
    strategy.entry("long", strategy.long, stop=psar, comment="long")
else
    strategy.cancel("long")

if (psar <= low and time_cond)
    strategy.entry("short", strategy.short, stop=psar, comment="short")
else
    strategy.cancel("short")
        
if (not time_cond)
    strategy.close_all()





 


Thêm nữa