Nhập môn đổi tần suất (resampling)
Các mô hình nhân tố rủi ro thường dựa trên dữ liệu có tần suất khác nhau. Một ví dụ điển hình là khi dùng dữ liệu vĩ mô theo quý, như giá cả, tỷ lệ thất nghiệp, v.v., cùng với dữ liệu tài chính, vốn thường là theo ngày (thậm chí nội ngày). Để dùng cả hai nguồn dữ liệu trong cùng một mô hình, dữ liệu tần suất cao cần được resample để khớp với dữ liệu tần suất thấp hơn.
Các đối tượng Pandas DataFrame và Series có sẵn phương thức .resample() để chỉ định tần suất thấp hơn. Phương thức này được chain với một phương thức để tạo thống kê ở tần suất thấp, như .mean() để lấy trung bình dữ liệu trong mỗi kỳ mới, hoặc .min() để lấy giá trị nhỏ nhất.
Trong bài tập này, bạn sẽ luyện chuyển đổi dữ liệu returns theo ngày sang tần suất theo tuần và theo quý.
Bài tập này là một phần của khóa học
Quản trị Rủi ro Định lượng với Python
Hướng dẫn bài tập
- Chuyển
returnssang tần suất theo quý với trung bìnhreturns_qbằng cách dùng.resample()và.mean(). - Xem phần đầu của
returns_q, lưu ý rằng phương thức.resample()tự xử lý chỉ mục ngày cho bạn. - Bây giờ chuyển
returnssang tần suất theo tuần với giá trị nhỏ nhấtreturns_w, dùng phương thức.min(). - Xem phần đầu của
returns_w.
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.
# Convert daily returns to quarterly average returns
returns_q = returns.____('Q').____
# Examine the beginning of the quarterly series
print(returns_q.____)
# Now convert daily returns to weekly minimum returns
returns_w = ____.resample('W').____
# Examine the beginning of the weekly series
print(returns_w.____)