Chiến lược theo xu hướng đơn giản


Ngày tạo: 2024-01-05 13:09:37 sửa đổi lần cuối: 2024-01-05 13:09:37
sao chép: 0 Số nhấp chuột: 657
1
tập trung vào
1621
Người theo dõi

Chiến lược theo xu hướng đơn giản

Bài viết này sẽ phân tích chi tiết về một chiến lược theo xu hướng dựa trên đường trung bình di chuyển đơn giản. Chiến lược này sử dụng kết hợp đường thẳng trên nhiều khung thời gian để tạo ra tín hiệu giao dịch, thuộc loại chiến lược theo xu hướng điển hình.

Tổng quan về chiến lược

Chiến lược này đồng thời sử dụng các đường trung bình di chuyển đơn giản 21 ngày, 50 ngày, 100 ngày và 200 ngày. Khi giá vượt qua các đường trung bình này, nó tạo ra tín hiệu mua và bán. Ngoài ra, chiến lược cũng sử dụng kênh Donchian để tạo ra tín hiệu giao dịch khi giá vượt qua giá cao nhất hoặc thấp nhất vào ngày 20 và 55.

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

Nguyên tắc cốt lõi là sử dụng nhiều khung thời gian trung bình để đánh giá xu hướng. Cụ thể, chiến lược sử dụng các đường trung bình di chuyển đơn giản với 4 độ dài thời gian khác nhau: 21 ngày, 50 ngày, 100 ngày và 200 ngày. Các khoảng thời gian của các đường trung bình này được mở rộng từ ngắn đến dài, được sử dụng để xác định xu hướng ở các cấp độ khác nhau.

Khi đường trung bình ngắn hạn vượt qua đường trung bình dài hạn, tín hiệu mua sẽ được tạo ra. Điều này cho thấy xu hướng thị trường có thể chuyển hướng, đi vào kênh tăng. Và khi đường trung bình ngắn hạn vượt qua đường trung bình dài hạn, tín hiệu bán sẽ được tạo ra. Điều này cho thấy xu hướng thị trường có thể bắt đầu đảo ngược, đi vào kênh giảm.

Ngoài ra, chiến lược này cũng sử dụng kênh Donchian để bổ sung tín hiệu giao dịch. Khi giá vượt qua mức cao nhất / thấp nhất của ngày 20 hoặc 55, nó cũng sẽ kích hoạt tín hiệu mua / bán, khóa lợi nhuận theo xu hướng.

Tóm lại, chiến lược này kết hợp cả lý thuyết đường thẳng và kênh Donchian để đánh giá hướng xu hướng thông qua nhiều khung thời gian, thuộc về chiến lược theo dõi xu hướng điển hình.

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

  1. Thiết kế khung thời gian đa dạng, có thể nắm bắt hiệu quả các xu hướng rõ ràng
  2. Đồng thời sử dụng đường trung bình và kênh Donchian, tín hiệu đáng tin cậy hơn
  3. Thực hành đơn giản, phù hợp với người mới bắt đầu giao dịch số lượng

Rủi ro chiến lược

  1. Rủi ro phá vỡ giả. Giá có thể biến động mạnh trong một thời gian, dẫn đến tín hiệu sai của đường trung bình hoặc kênh Donchian
  2. Dễ bị tổn thất trong tình trạng biến động. Chiến lược này phù hợp hơn với môi trường thị trường có xu hướng rõ ràng
  3. Không gian tối ưu hóa tham số hạn chế. Đường trung bình di chuyển và kênh Donchian khó điều chỉnh tham số hiệu quả

Giải pháp đối phó với rủi ro:

  1. Thêm điều kiện lọc để tránh phá vỡ giả. Ví dụ: tăng điều kiện khối lượng giao dịch
  2. Giảm mức dừng lỗ thích hợp để đối phó với tình trạng chấn động
  3. Cố gắng giới thiệu các tham số tự động tối ưu hóa của thuật toán học máy

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

  1. Tăng các điều kiện lọc dựa trên khối lượng giao dịch để tránh tín hiệu sai trong biến động giá
  2. Cố gắng thay thế moving averages bằng các chỉ số có thể làm mịn giá tốt hơn, chẳng hạn như Kaufman Adaptive Moving Averages
  3. Ứng dụng thuật toán học máy để tự động tối ưu hóa các tham số chiến lược để phù hợp hơn với tình hình thị trường hiện tại
  4. Kết hợp các chỉ số biến động để đánh giá xu hướng mạnh mẽ, tránh bị đánh giá trong tình huống biến động

Tóm tắt

Bài viết này phân tích chi tiết một chiến lược theo dõi xu hướng đơn giản dựa trên các đường trung bình di chuyển và đường Donchian trên nhiều khung thời gian. Chiến lược này sử dụng kết hợp các đường trung bình khác nhau để xác định hướng xu hướng, nguyên tắc đơn giản, rõ ràng và dễ thực hiện. Đồng thời, cũng phân tích các lợi thế của chiến lược, rủi ro có thể tồn tại và ý tưởng tối ưu hóa tiếp theo.

Mã nguồn chiến lược
/*backtest
start: 2022-12-29 00:00:00
end: 2024-01-04 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=3
strategy("Trend Following", overlay=true, default_qty_type = strategy.percent_of_equity, default_qty_value = 10)

maxIdLossPcnt = input(1, "Max Intraday Loss(%)", type=float)
entryLong = false
entryShort = false

// strategy.risk.max_intraday_loss(maxIdLossPcnt, strategy.percent_of_equity)

if (close > highest(high[1], 20))
    strategy.entry("Long fast", strategy.long)
    entryLong = true
    

if (close < lowest(low[1], 20))
    strategy.entry("Short fast", strategy.short)
    entryShort = true
    
if (close > highest(high[1], 55))
    strategy.entry("Long slow", strategy.long)
    entryLong = true

if (close < lowest(low[1], 55))
    strategy.entry("Short slow", strategy.short)
    entryShort = true

len1 = input(21, minval=1, title="21 SMA")
src1 = input(close, title="21 SMA")
out1 = sma(src1, len1)
plot(out1, title="21 SMA", color= white)

len2 = input(50, minval=1, title="50 SMA")
src2 = input(close, title="50 SMA")
out2 = sma(src2, len2)
plot(out2, title="50 SMA", color= blue)

len3 = input(100, minval=1, title="100 SMA")
src3 = input(close, title="100 SMA")
out3 = sma(src3, len3)
plot(out3, title="100 SMA", color= orange)

len4 = input(200, minval=1, title="200 SMA")
src4 = input(close, title="200 SMA")
out4 = sma(src4, len4)
plot(out4, title="200 SMA", color= green)