Chiến lược giao dịch trung bình động

Tác giả:ChaoZhang, Ngày: 2023-11-01 17:13:40
Tags:

img

Tổng quan

Chiến lược này tạo ra các tín hiệu giao dịch cho các cổ phiếu biến động thấp bằng cách kết hợp các đường trung bình động, chỉ số MACD và các mẫu nến. Nó có thể in tín hiệu mua hoặc bán để cảnh báo khi các điều kiện nhất định được đáp ứng. Tôi sử dụng nó như một cách tiết kiệm thời gian để giúp xác định biểu đồ nào để xem. Bạn có thể điều chỉnh đầu vào và cài đặt phù hợp với nhu cầu của mình. Tôi đề nghị cho phép hai hoặc ba đơn đặt hàng.

Chiến lược logic

Chiến lược chủ yếu sử dụng ba chỉ số để đánh giá tín hiệu giao dịch:

  1. Đường trung bình động: Tính toán ba đường trung bình động - nhanh, chậm và đường cơ bản, và tạo ra tín hiệu mua khi đường nhanh vượt qua đường chậm.

  2. Chỉ số MACD: Tính toán biểu đồ MACD và đường tín hiệu, tạo tín hiệu mua khi biểu đồ MACD vượt trên 0.

  3. Mô hình nến: Tính toán tỷ lệ phần trăm tăng trong một nến duy nhất, tạo ra tín hiệu mua khi tăng vượt quá một tỷ lệ phần trăm nhất định, đánh giá nó là đánh dấu bởi các nhà tạo thị trường.

Đối với tín hiệu bán, chiến lược thiết lập mức dừng lỗ và lấy lợi nhuận. Nó tạo ra tín hiệu bán khi giá đạt mức dừng lỗ và lấy lợi nhuận.

Ưu điểm

  1. Kết hợp ba loại chỉ số kỹ thuật khác nhau để xác minh lẫn nhau và tránh tín hiệu sai.

  2. Liquidity tốt, phù hợp với cổ phiếu biến động thấp.

  3. Thiết lập các điều kiện dừng lỗ và lấy lợi nhuận để khóa lợi nhuận và ngăn ngừa tổn thất mở rộng.

  4. Logic đơn giản và rõ ràng, dễ thực hiện, các tham số điều chỉnh trực quan, thích nghi linh hoạt với các điều kiện thị trường khác nhau.

  5. Các thông số chỉ số được tối ưu hóa và kiểm tra tính ổn định và lợi nhuận.

Rủi ro

  1. Là một chiến lược theo xu hướng, không hiệu quả trong các thị trường hỗn loạn giới hạn trong phạm vi, có thể tạo ra lợi nhuận / lỗ nhỏ thường xuyên.

  2. Các mô hình nến là chủ quan, khó đánh giá chính xác hành vi của người tạo thị trường, có thể tạo ra một số tín hiệu sai.

  3. Stop loss và take profit cần được điều chỉnh cho các cổ phiếu khác nhau, quá nhỏ có thể dừng lỗ sớm, quá lớn có thể hạn chế lợi nhuận.

  4. Chiến lược tương đối phức tạp và cần xem xét nhiều chỉ số đồng thời, đòi hỏi kỹ năng kỹ thuật cao từ các nhà giao dịch.

Hướng dẫn cải thiện

  1. Thêm phán đoán về điều kiện thị trường, theo dõi xu hướng trong các giai đoạn xu hướng rõ ràng, tránh giao dịch trong quá trình hợp nhất.

  2. Tối ưu hóa các thông số trung bình động, điều chỉnh các giai đoạn để phù hợp với các đặc điểm của cổ phiếu. Thử nghiệm với các loại trung bình động khác nhau.

  3. Giới thiệu máy học để mô hình hóa hành vi của người tạo thị trường, giảm các tín hiệu sai.

  4. Phát triển các chiến lược dừng lỗ và lợi nhuận năng động, thay vì cài đặt cố định.

  5. Đơn giản hóa chiến lược bằng cách loại bỏ các chỉ số chủ quan cao để giảm tín hiệu sai cũng có thể xem xét trung bình các chỉ số cùng loại để có được kết quả ổn định hơn.

Kết luận

Chiến lược này tích hợp các đường trung bình động, MACD và đánh giá hành vi của người tạo thị trường vào một chiến lược giao dịch chứng khoán rủi ro thấp tương đối hoàn chỉnh. Nó có một số ưu điểm nhất định nhưng cũng có một số khía cạnh có thể được cải thiện. Mặc dù phức tạp, yêu cầu kỹ thuật không quá đòi hỏi cho các nhà giao dịch. Với tối ưu hóa và thử nghiệm liên tục, chiến lược này có thể trở thành một công cụ giao dịch định lượng rất thực tế. Nó cung cấp một giải pháp tham chiếu cho giao dịch ngắn hạn trung hạn của các cổ phiếu biến động thấp.


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

//@version=3
strategy("Simple Stock Strategy", overlay=true)

//Simple Trading Strategy for Stocks//
// by @ShanghaiCrypto //

////SMA////
fastLength = input(12)
slowLength = input(26)
baseLength = input(100)
price = close

mafast = sma(price, fastLength)
maslow = sma(price, slowLength)
mabase = sma(price, baseLength)

///MACD////
MACDLength = input(9)
MACDfast = input(12)
MACDslow = input(26)
MACD = ema(close, MACDfast) - ema(close, MACDslow)
aMACD = ema(MACD, MACDLength)
delta = MACD - aMACD

////PUMP////
OneCandleIncrease = input(6, title='Gain %')
pump = OneCandleIncrease/100

////Profit Capture and Stop Loss//////
stop = input(2.0, title='Stop Loss %', type=float)/100
profit = input(6.0, title='Profit %', type=float)/100
stop_level = strategy.position_avg_price * (1 - stop)
take_level = strategy.position_avg_price * (1 + profit)

////Entries/////
if crossover(mafast, maslow)
    strategy.entry("Cross", strategy.long, comment="BUY")

if (crossover(delta, 0))
    strategy.entry("MACD", strategy.long, comment="BUY")
    
if close > (open + open*pump)
    strategy.entry("Pump", strategy.long, comment="BUY")

/////Exits/////
strategy.exit("SELL","Cross", stop=stop_level, limit=take_level)
strategy.exit("SELL","MACD", stop=stop_level, limit=take_level)
strategy.exit("SELL","Pump", stop=stop_level, limit=take_level)

////Plots////
plot(mafast, color=green)
plot(maslow, color=red)
plot(mabase, color=yellow)
plot(take_level, color=blue)
plot(stop_level, color=orange)

Thêm nữa