Chiến lược nến giao cắt độ lệch chuẩn nhiều thời kỳ


Ngày tạo: 2023-10-24 14:44:00 sửa đổi lần cuối: 2023-10-24 14:44:00
sao chép: 0 Số nhấp chuột: 658
1
tập trung vào
1617
Người theo dõi

Chiến lược nến giao cắt độ lệch chuẩn nhiều thời kỳ

Tổng quan

Chiến lược giao chéo K-line là một chiến lược theo dõi xu hướng điển hình. Chiến lược này xây dựng nhiều nhóm K-line và D-line bằng cách tính các giá trị sai lệch tiêu chuẩn của các khoảng thời gian khác nhau (như đường mặt trời, đường tuần hoàn, đường mặt trăng, v.v.), sau đó lấy trung bình của các đường này để xây dựng đường trung bình, làm nhiều khi đi qua đường chậm trên đường nhanh và không khi đi xuống.

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

Lý luận cốt lõi của chiến lược này là tính toán độ lệch chuẩn trong nhiều chu kỳ thời gian, sau đó lấy trung bình để xây dựng tín hiệu giao dịch.

Đầu tiên, chiến lược thông quastoch()Chức năng tính toán độ lệch chuẩn K theo các tham số khác nhau, ở đây tổng cộng tính toán 5 nhóm giá trị K, tương ứng với chu kỳ thời gian là mặt trời, đường tròn, mặt trăng.

smoothK = input(55)  
SMAsmoothK = input(13)
k = sma(stoch(price, high, low, smoothK), SMAsmoothK) 

smoothK1 = input(89)
SMAsmoothK1 = input(8)  
k1 = sma(stoch(price, high, low, smoothK1), SMAsmoothK1)

...

smoothK4 = input(377) 
SMAsmoothK4 = input(2)
k4 = sma(stoch(price, high, low, smoothK4), SMAsmoothK4)

Sau đó tính D-line với các tham số khác nhau:

smoothD = input(34)
d = sma(k, smoothD)

...

smoothD4 = input(233)  
d4 = sma(k4, smoothD4)

Sau đó, tính trung bình của các nhóm K và D để xây dựng đường nhanh Kavg và đường chậm Davg:

Kavg = avg(k,k1,k2,k3,k4)
Davg = avg(d,d1,d2,d3,d4) 

Cuối cùng, hãy làm nhiều hơn khi sử dụng đường dây nhanh, và làm trống khi sử dụng đường dây chậm:

long = crossover(Kavg, Davg)
short = crossunder(Kavg, Davg)

Bằng cách kết hợp các đường trung bình lệch chuẩn của nhiều chu kỳ thời gian, bạn có thể loại bỏ tiếng ồn thị trường trong các chu kỳ thời gian lớn hơn và khóa các hướng xu hướng chính.

Lợi thế chiến lược

  • Sử dụng khả năng dự đoán độ lệch chuẩn của nhiều chu kỳ thời gian để lọc hiệu quả tiếng ồn và khóa xu hướng
  • Thời gian giữ của chiến lược có thể được điều chỉnh tự do bằng cách điều chỉnh các tham số chu kỳ
  • Sự sai lệch tiêu chuẩn có khả năng theo dõi xu hướng mạnh mẽ
  • Sử dụng hình thức chéo đồng tuyến, tránh bị lừa bởi một breakout giả
  • Có thể dễ dàng tối ưu hóa chu kỳ trung bình của đường dây nhanh và đường dây chậm, tăng sự ổn định

Rủi ro chiến lược và giải pháp

  • Quá trình chéo đường trung bình nhiều thời gian dễ tạo ra nhiều tín hiệu giả, có thể điều chỉnh đúng chu kỳ trung bình để tối ưu hóa
  • Tiêu chuẩn sai lệch dễ bị ảnh hưởng bởi tình huống khắc nghiệt, tạo ra tín hiệu sai, có thể xem xét thêm điều kiện lọc
  • Các tham số chu kỳ cố định không thể thích ứng với sự thay đổi của thị trường, có thể sử dụng các thiết lập chu kỳ thích ứng
  • Giữ vị thế dài hạn dễ dàng theo đuổi cao và thấp, có thể thiết lập dừng di chuyển để khóa lợi nhuận
  • Chỉ số KDJ dễ bị giới hạn, có thể đưa vào các chỉ số khác để tối ưu hóa kết hợp

Giải pháp:

  1. Tăng các điều kiện lọc để tránh bị lừa bởi các đột phá giả ngắn hạn

  2. Sử dụng thiết lập chu kỳ thích ứng, điều chỉnh các tham số chu kỳ theo mức độ biến động của thị trường

  3. Thiết lập dừng di động để dừng lỗ kịp thời, tránh theo đuổi cao giết thấp

  4. Tối ưu hóa tham số chu kỳ trung bình để tìm điểm cân bằng tốt nhất

  5. Kết hợp nhiều tín hiệu chỉ số để tăng sự ổn định chiến lược

Hướng tối ưu hóa chiến lược

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

  1. Việc đưa ra các tín hiệu chỉ số khác để kết hợp, chẳng hạn như đưa MACD, Bollinger Bands, có thể cải thiện chất lượng tín hiệu

  2. Thêm bộ lọc xu hướng, chẳng hạn như giới thiệu hướng đường SMA, các chỉ số như ADX để đánh giá xu hướng, tránh giao dịch ngược

  3. Sử dụng thiết lập chu kỳ thích ứng, điều chỉnh động các tham số chu kỳ theo mức độ biến động của thị trường

  4. Thêm chiến lược dừng chân di động, đặt điểm dừng chân theo các tham số của chiến lược, dừng chân kịp thời

  5. Tối ưu hóa các tham số chu kỳ trung bình của đường nhanh và đường chậm để tìm các tham số kết hợp tốt nhất

  6. Thêm điều kiện lọc kho mở để tránh tín hiệu sai lệch do tiếng ồn ngắn hạn

  7. Hãy thử chiến lược Breakout để mở lệnh sau khi phá vỡ đường trung bình.

  8. Kiểm tra các chiến lược thoát khác nhau, chẳng hạn như Chandelier Exit, tối ưu hóa Stop Loss

Tóm tắt

Chiến lược giao chéo đường K của các chỉ số sai tiêu chuẩn nhiều chu kỳ thời gian kết hợp khả năng theo dõi xu hướng của các chỉ số sai tiêu chuẩn và sự ổn định của chiến lược đồng bằng. Bằng cách tính toán đường K và đường D của các chỉ số sai tiêu chuẩn nhiều chu kỳ, xây dựng tín hiệu giao dịch, có thể sử dụng hiệu quả sức mạnh dự đoán của các chỉ số sai tiêu tiêu chuẩn theo các thang thời gian khác nhau, lọc tiếng ồn thị trường và nắm bắt hướng xu hướng chính. Chiến lược này có không gian điều chỉnh tham số chu kỳ, có thể được tối ưu hóa để có hiệu quả chiến lược tốt hơn bằng cách điều chỉnh các tham số chu kỳ và giới thiệu thêm các điều kiện lọc, chiến lược dừng lỗ.

Mã nguồn chiến lược
/*backtest
start: 2023-09-23 00:00:00
end: 2023-10-23 00:00:00
period: 2h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=2
strategy(title="Slow Stochastic Multi K&D Average Crossover Strategy", overlay=false, pyramiding=0, calc_on_order_fills=true, initial_capital=100000, default_qty_type=strategy.percent_of_equity, currency="USD", default_qty_value=100)


price = input(close)

///////////////////////////////
smoothK = input(55) 

SMAsmoothK = input(13)
k = sma(stoch(price, high, low, smoothK), SMAsmoothK)



smoothD = input(34)
d = sma(k, smoothD)


///////////////////////////

smoothK1 = input(89) 

SMAsmoothK1 = input(8)
k1 = sma(stoch(price, high, low, smoothK1), SMAsmoothK1)

smoothD1 = input(55)
d1 = sma(k1, smoothD1)

//////////////////////////////////////

smoothK2 = input(144) 

SMAsmoothK2 = input(5)
k2 = sma(stoch(price, high, low, smoothK2), SMAsmoothK2)

smoothD2 = input(89)
d2 = sma(k2, smoothD2)

/////////////////////////////////////

smoothK3 = input(233) 

SMAsmoothK3 = input(3)
k3 = sma(stoch(price, high, low, smoothK3), SMAsmoothK3)

smoothD3 = input(144)
d3 = sma(k3, smoothD3)

////////////////////////////////////////////////

smoothK4 = input(377) 

SMAsmoothK4 = input(2)
k4 = sma(stoch(price, high, low, smoothK4), SMAsmoothK4)

smoothD4 = input(233)
d4 = sma(k4, smoothD4)

/////////////////////////////////////////////////

Kavg = avg(k,k1,k2,k3,k4, k4)
plot(Kavg, color=green)

Davg = avg(d,d1,d2,d3,d4, d4)
plot(Davg, color=red)


///////////////////////////////////////
hline(50, color=gray)


long = crossover(Kavg, Davg)// and d < 50
short = crossunder(Kavg, Davg)// and d > 50


last_long = long ? time : nz(last_long[1])
last_short = short ? time : nz(last_short[1])
long_signal = crossover(last_long, last_short) 
short_signal = crossover(last_short, last_long)



strategy.entry("Long", strategy.long, when=long_signal)
strategy.entry("Short", strategy.short, when=short_signal) 

//len1 = input(3)

//closelong = d[1] < k[len1]
//closeshort = d[1] > k[len1]

//strategy.close("Long", when=closelong)
//strategy.close("Short", when=closeshort)