Chiến lược chéo trung bình di chuyển đơn giản

Tác giả:ChaoZhang, Ngày: 2023-09-21 10:47:24
Tags:

Tổng quan

Chiến lược này giao dịch dựa trên đường chéo vàng và đường chéo chết của 3 đường trung bình di chuyển đơn giản. Nó đi dài khi SMA nhanh vượt qua trên đường SMA trung và đường SMA trung vượt qua trên đường SMA chậm; Nó đi ngắn khi đường chéo ngược xảy ra.

Chiến lược logic

  1. Đặt 3 SMA với các khoảng thời gian khác nhau: nhanh, trung bình, chậm
  2. Đi dài khi SMA nhanh vượt qua trên SMA trung và trung trên SMA chậm
  3. Đi ngắn khi SMA nhanh vượt qua dưới SMA trung và trung dưới SMA chậm
  4. Có thể thiết lập thời gian nhập để tránh các vụ đột nhập sai
  5. Rút khi tín hiệu chéo ngược được kích hoạt

Cụ thể, nó sử dụng các giao dịch chéo giữa 3 SMA của các giai đoạn khác nhau để giao dịch. SMA nhanh đại diện cho xu hướng ngắn hạn, SMA giữa đại diện cho xu hướng trung hạn và SMA chậm đại diện cho xu hướng dài hạn. Khi ba SMA chéo lên theo thứ tự, nó báo hiệu xu hướng tăng để đi dài. Khi giao dịch chéo xuống xảy ra, nó báo hiệu xu hướng giảm để đi ngắn. Sự chậm trễ vào cũng có thể được đặt để tránh đột phá sai ngắn hạn.

Phân tích lợi thế

  1. Sử dụng 3 SMA cải thiện độ chính xác hướng
  2. Lần nhập cảnh muộn tránh những vụ trốn thoát giả và bị mắc kẹt.
  3. Logic đơn giản và trực quan, dễ hiểu
  4. Điều chỉnh tham số SMA linh hoạt cho các chu kỳ khác nhau
  5. Tiếp theo xu hướng tránh rủi ro chống lại xu hướng

Phân tích rủi ro

  1. Mức giữ dài trong chu kỳ dài rủi ro tăng lỗ
  2. SMA crossover có một số sự chậm trễ, có thể bỏ lỡ các điểm vào tốt nhất
  3. Yêu cầu tối ưu hóa tham số SMA, nếu không tín hiệu có thể không chính xác
  4. Việc nắm giữ dài mang lại rủi ro qua đêm

Rủi ro có thể được quản lý thông qua kích thước vị trí, tối ưu hóa SMA, chiến lược dừng lỗ v.v.

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

  1. Kiểm tra các khoảng thời gian SMA khác nhau để tìm các thông số tối ưu
  2. Đánh giá sự chậm trễ nhập để lọc ra các tín hiệu
  3. Đưa ra lệnh dừng lỗ thích nghi với hành động giá thực tế
  4. Ưu tiên tham số nghiên cứu trên các sản phẩm khác nhau
  5. Kiểm tra thêm vào lại và các quy tắc kim tự tháp để tối ưu hóa giữ

Tóm lại

Chiến lược này nắm giữ các vị trí dựa trên 3 đường chéo SMA để xác định hướng xu hướng. Ưu điểm là các tín hiệu rõ ràng đơn giản và khả năng cấu hình; Nhược điểm là các tín hiệu tụt lại và sự phụ thuộc tham số. Hiệu suất có thể được cải thiện và rủi ro được kiểm soát thông qua tối ưu hóa tham số, dừng lỗ vv. Nó giúp các nhà giao dịch làm chủ bằng cách sử dụng SMA và các chiến lược chéo.


/*backtest
start: 2023-08-21 00:00:00
end: 2023-09-20 00:00:00
period: 3h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// © DaynTrading

//@version=4
// strategy(
//      title="Simple Moving Average Cross",
//      overlay=true,
//      initial_capital=5000,
//      default_qty_type=strategy.percent_of_equity,
//      default_qty_value=2,
//      commission_type=strategy.commission.percent,
//      commission_value=0.075,
//      pyramiding=0
//      )

sma_top_input = input(title="SMA Top", type=input.integer, defval=20)
sma_mid_input = input(title="SMA Mid", type=input.integer, defval=50)
sma_low_input = input(title="SMA Low", type=input.integer, defval=200)

bars_long = input(title="Long: After trigger, how many bars to wait?", type=input.integer, defval=5)
bars_short = input(title="Short: After trigger, how many bars to wait?", type=input.integer, defval=5)

sma_top = sma(close, sma_top_input)
sma_mid = sma(close, sma_mid_input)
sma_low = sma(close, sma_low_input)

long = sma_top > sma_mid and sma_mid > sma_low
short = sma_top < sma_mid and sma_mid < sma_low

long_condition = long and long[bars_long] and not long[bars_long + 1]
short_condition = short and short[bars_short] and not short[bars_short + 1]

close_long = sma_top < sma_mid and sma_mid < sma_low and not long[bars_long + 1]
close_short = sma_top > sma_mid and sma_mid > sma_low and not short[bars_short + 1]

plot(sma_top, title="SMA Top", color=#95f252, linewidth=2)
plot(sma_mid, title="SMA Mid", color=#FF1493, linewidth=2)
plot(sma_low, title="SMA Low", color=#6a0dad, linewidth=2)

strategy.entry("LongPosition", strategy.long, when = long_condition)
strategy.entry("ShortPosition", strategy.short, when = short_condition)
    
strategy.close("LongPosition", when = close_short)
strategy.close("ShortPosition", when = close_long)

Thêm nữa