Chiến lược giao dịch lượng dựa trên hoạt động trung bình động hàng tháng và hàng quý

Tác giả:ChaoZhang, Ngày: 2023-12-15 11:49:06
Tags:

img

Tổng quan

Chiến lược này chủ yếu dựa trên các đường trung bình động của các đường hàng tháng và hàng quý để hoạt động. Cụ thể, đường 20 ngày được sử dụng như đường hàng tháng và đường 60 ngày như đường hàng quý. Các tín hiệu chiến lược đến từ thập giá vàng và thập giá chết của hai đường trung bình động. Khi đường hàng tháng vượt qua đường hàng quý, đi dài; khi đường hàng tháng giảm xuống dưới đường hàng quý, đóng các vị trí. Chiến lược này phù hợp với các hoạt động trung và dài hạn để nắm bắt cơ hội hợp nhất và phân kỳ.

Chiến lược logic

Chiến lược này sử dụng trung bình di chuyển đơn giản 20 ngày như chỉ số đường hàng tháng và trung bình di chuyển đơn giản 60 ngày như chỉ số đường hàng quý.

  1. Khi đường 20 ngày vượt qua đường 60 ngày, nghĩa là một đường chéo vàng xảy ra, đi dài.
  2. Khi giá giảm hơn 10% so với mức cao nhất trong 10 ngày qua, đóng các vị trí dài để kiếm lợi nhuận.
  3. Khi đường 20 ngày vượt qua dưới đường 60 ngày, tức là một đường chết xảy ra, đóng tất cả các vị trí.
  4. Khi lỗ đạt 10%, dừng lỗ.

Sử dụng đường chéo trung bình động của các đường hàng tháng và hàng quý để xác định xu hướng trung hạn và dài hạn. Chữ chéo vàng cho đi dài chỉ ra sự khởi đầu của thị trường bò trung hạn và dài hạn, trong khi chữ chéo chết cho đi ngắn chỉ ra sự khởi đầu của thị trường gấu trung hạn và dài hạn. Đồng thời, sử dụng chiến lược dừng lợi nhuận và dừng lỗ để kiểm soát rủi ro.

Ưu điểm của Chiến lược

  1. Sử dụng trung bình động hàng tháng và hàng quý lọc tiếng ồn thị trường và nắm bắt xu hướng trung bình và dài hạn.
  2. Các thông số chiến lược đơn giản và dễ thực hiện.
  3. Có thể tùy chỉnh tham số lấy lợi nhuận và dừng lỗ để kiểm soát rủi ro.

Phân tích rủi ro

  1. Không thể xác định các điểm đảo ngược xu hướng, với nguy cơ mất mát.
  2. Trung bình di chuyển hàng tháng và hàng quý có tác động chậm, có khả năng bỏ lỡ các cơ hội ngắn hạn.
  3. Cần phải chọn các điểm dừng lỗ thích hợp để tránh bị dừng quá nhanh.

Giải pháp:

  1. Sử dụng stop loss để dừng lại kịp thời.
  2. Kết hợp các chỉ số khác để lọc tín hiệu và xác định xu hướng.
  3. Điều chỉnh các thông số trung bình động để tối ưu hóa chiến lược.

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

  1. Thêm các chỉ số khác để lọc, chẳng hạn như chỉ số KD, v.v., để tránh sự đột phá sai.
  2. Tối ưu hóa các thông số trung bình động để tìm ra sự kết hợp thông số tốt nhất.
  3. Kết hợp các chiến lược lợi nhuận bổ sung như theo dõi lợi nhuận để nắm bắt nhiều lợi nhuận hơn.

Tóm lại

Chiến lược này có hệ thống sử dụng những lợi thế của các đường trung bình động hàng tháng và hàng quý bằng cách đánh giá các hướng xu hướng trung và dài hạn thông qua đường chéo vàng và đường chéo chết của đường trung bình động. Đồng thời, các cơ chế dừng lỗ và lấy lợi nhuận hợp lý được cấu hình để kiểm soát rủi ro.


/*backtest
start: 2022-12-08 00:00:00
end: 2023-12-14 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
strategy("均線操作-月季", overlay=true, initial_capital = 100000, default_qty_type = strategy.percent_of_equity, default_qty_value = 30)
sma20 = sma(close, 20)
sma60 = sma(close, 60)

plot(sma20, title="月線", color=color.purple,linewidth=2)
plot(sma60, title="季線", color=color.yellow,linewidth=2)

backtest_year = input(title="backtest_year",type=input.integer,defval=2020)
backtest_month = input(title="backtest_month",type=input.integer,defval=10)
backtest_date = input(title="backtest_date",type=input.integer,defval=1)
backtest_start_time = timestamp(backtest_year,backtest_month,backtest_date,0,0,0)

to_long = sma20 > sma60  and close > highest(10)*0.9 // 黃金交叉
to_close = sma20 < sma60 // 死亡交叉
to_exit = close < highest(10)*0.9 //股價嚴重回檔
to_stop = close < 0.9*strategy.position_avg_price 

// to_long = crossover(sma20, sma60)   // 黃金交叉
// to_close = crossunder(sma20, sma60) // 死亡交叉

//plotchar(to_long, char="B", text="買", color=color.red, location=location.belowbar)
//plotchar(to_close, char="S", text="賣", color=color.green, location=location.abovebar)
//strategy.close("open long",when = tslide, comment="多單滑價7%出場")
if true
    strategy.entry("golden", strategy.long,  when=to_long,comment="多單入場")
    strategy.close("golden",  when=to_exit,comment="多單滑價7%出場")
    strategy.close("golden",  when=to_close,comment="月線季線死亡交叉")
    strategy.close("golden",  when=to_stop,comment="虧損10%強迫停損")


Thêm nữa