Bắt đầu ngayBắt đầu miễn phí

Thực hiện benchmarking cho chiến lược

Bạn tự hỏi: thay vì tốn công sức giao dịch chủ động một mã cổ phiếu, điều gì xảy ra nếu bạn chỉ mua rồi nắm giữ cổ phiếu trong một khoảng thời gian? Chiến lược giao dịch chủ động của bạn có tạo ra lợi nhuận tốt hơn so với chiến lược thụ động mua-và-giữ không? Để trả lời câu hỏi này, bạn dự định thực hiện một bài kiểm tra benchmarking.

Gói bt đã được nhập sẵn cho bạn. Dữ liệu giá lịch sử của cổ phiếu Tesla đã được nạp sẵn trong price_data.

Ngoài ra, ba backtest chiến lược sma10, sma30, sma50 từ bài trước đã được nạp sẵn và có thể dùng trực tiếp.

Bài tập này là một phần của khóa học

Giao dịch Tài chính với Python

Xem khóa học

Bài tập tương tác thực hành trực tiếp

Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.

def buy_and_hold(price_data, name):
    # Define the benchmark strategy
    bt_strategy = bt.Strategy(name, 
                              [____,
                               bt.algos.SelectAll(),
                               bt.algos.WeighEqually(),
                               bt.algos.Rebalance()])
    # Return the backtest
    return ____(bt_strategy, price_data)
Chỉnh sửa và Chạy Mã