Mục lục bài viết
- Bằng chứng và phạm vi
- Hình minh họa
- Quy trình
- Đừng trộn turnover nền với volume đột biến
- Hai phép xếp hạng độc lập và các giao điểm
- Shares outstanding, corporate actions và delisting
- Xây các lứa danh mục mà không nhân vốn nhiều lần
- Ví dụ spread có lãi nhưng return trên vốn khác
- Đối chứng đúng horizon và kiểm soát rủi ro
- Sai lầm thường gặp
- Checklist thực hành
- Câu hỏi thường gặp
- Nguồn nghiên cứu
Bằng chứng và phạm vi
Lee–Swaminathan nghiên cứu NYSE/AMEX 1965–1995. Bảng VII báo return raw năm đầu: early 16,70%, momentum thuần 12,49%, late 6,84%; đây là event-time spread, không phải CAGR net tài khoản. [1]
Quy trình thực hành
- Chốt dữ liệuReturn, turnover và universe theo cutoff tháng.
- Xếp hạng độc lập10 nhóm return × 3 nhóm turnover.
- Tạo lứaĐóng băng membership và lịch vào sau khoảng trễ.
- Phân vốnNgân sách chia các lứa, kiểm tra borrow.
- Tái cân bằngGộp lệnh ròng nhưng giữ sổ theo cohort.
- Đo ngoài mẫuSo early/late/price-only sau chi phí.
Đừng trộn turnover nền với volume đột biến
Một công ty giao dịch một triệu cổ phiếu/ngày có thể rất khác một công ty khác giao dịch cùng lượng nhưng số cổ phiếu lưu hành gấp mười. Turnover chuẩn hóa hoạt động theo quy mô cổ phiếu: TOᵢ,t=Vᵢ,t/Sharesᵢ,t. Lấy trung bình nhiều tháng hỏi mức giao dịch nền, còn RVOL một phiên hỏi hôm nay khác chính lịch sử gần đây thế nào.
Khái niệm đầu/cuối chu kỳ momentum là cách diễn giải nhóm thống kê, không phải đồng hồ xác định một cổ phiếu đang ở tháng thứ mấy của xu hướng. Một winners/turnover-thấp vẫn có thể sụp ngay sau formation; nhãn nhóm chỉ có ý nghĩa phân phối trên nhiều quan sát.
Câu hỏi thực hành là: giữa những cổ phiếu có return quá khứ tương tự, thêm turnover có cải thiện kết quả sau phí và sau kiểm soát rủi ro không? Điều này khác việc mua riêng một cổ phiếu chỉ vì biểu đồ tăng với volume cạn.
Hai phép xếp hạng độc lập và các giao điểm
Nguồn xếp return thành 10 nhóm và turnover thành 3 nhóm độc lập, rồi lấy giao điểm. Early: long winner/turnover-thấp, short loser/turnover-cao; late đảo lựa chọn turnover. Có khoảng trễ một tuần trước đo hiệu quả. [1]
Đặc tả nghiên cứu đề xuất chọn 6 tháng đã hoàn tất. Return formation tính bằng tích các total-return ngày hoặc tháng theo một chuỗi nhất quán; turnover lấy trung bình daily ratio. Vì số tháng cố định, xếp hạng cumulative return và geometric average return cho cùng thứ tự khi không có missing khác nhau.
Phải tính ngưỡng turnover trên toàn universe đủ điều kiện, không chia riêng ba nhóm trong mỗi decile return nếu muốn giữ cấu trúc xếp hạng độc lập. Các ô giao nhau không nhất thiết có cùng số mã. Quy tắc tie và nhóm quá nhỏ cần khóa trước; không tự tăng tỷ trọng một ô chỉ vì nó đang có ít mã thắng mạnh.
| Nhánh | Long | Short |
|---|---|---|
| Momentum thuần | Return decile 10 | Return decile 1 |
| Early theo cấu trúc nguồn | Decile 10 ∩ turnover tercile 1 | Decile 1 ∩ turnover tercile 3 |
| Late theo cấu trúc nguồn | Decile 10 ∩ turnover tercile 3 | Decile 1 ∩ turnover tercile 1 |
Shares outstanding, corporate actions và delisting
CRSP mô tả dữ liệu gồm shares outstanding, volume, corporate actions và thông tin hủy niêm yết. [2] Có các trường dữ liệu này chưa tự bảo đảm join đúng thời điểm; lịch sử điều chỉnh hồi tố và ngày có hiệu lực cần được kiểm tra riêng.
Ví dụ tự tạo: 1 triệu shares volume/100 triệu shares outstanding tạo turnover 1%. Sau split 2:1, nếu volume thành 2 triệu và shares thành 200 triệu thì tỷ lệ vẫn 1%. Ghép volume đã chỉnh với shares chưa chỉnh có thể làm tỷ lệ nhảy giả và chuyển tercile.
Nguồn có loại mã hủy niêm yết trong năm ngày sau formation. [1] Khi xây bản nhân quả, không dùng sự kiện chưa biết để loại ứng viên. Thay vào đó giữ membership theo snapshot, xử lý cashflow/delisting theo quy tắc dữ liệu đã định và báo mức độ khác biệt với bản nguồn. Không nối lịch sử chỉ bằng ticker có thể được tái sử dụng.
Xây các lứa danh mục mà không nhân vốn nhiều lần
Phiên bản triển khai đề xuất dùng 12 lứa, mỗi tháng hình thành một lứa mới giữ 12 tháng; chờ năm phiên giao dịch từ cutoff trước khi vào. Năm phiên là cách cụ thể hóa khoảng trễ cho thí nghiệm này, không khẳng định mọi chi tiết lịch đúng như paper. Mỗi lứa dùng 1/12 ngân sách, ô long và short cân bằng notional trong lứa.
Ở giai đoạn khởi động chưa đủ 12 lứa, giữ phần còn lại bằng tiền mặt hoặc chuẩn hóa lại là hai lựa chọn khác nhau. Bài này chọn giữ tiền mặt; vì thế không đem đường equity khởi động so trực tiếp với một chuỗi factor luôn đầu tư đầy đủ mà không điều chỉnh.
Một mã có thể thuộc nhiều lứa. Có thể gộp lệnh thực thi ròng để tiết kiệm turnover nhưng vẫn giữ sổ kế toán theo lứa; nếu chỉ cộng toàn bộ notional mới vào equity mỗi tháng, danh mục sẽ vô tình tăng leverage. Mã hết borrow cần quy tắc thay thế hoặc giảm cả hai chân, thay vì giả định mọi short đều thực hiện được.
Giới hạn tối đa 12 slot lứa danh mục đang hoạt động. Nếu lứa mới đến lịch vào trước khi lứa cũ thoát, giữ ngân sách dự kiến bằng tiền mặt tới khi có slot trống; không tạm vượt cap chỉ vì lệch ngày lịch. Chân short tính cả khoản bù cổ tức cho bên cho vay khi phát sinh.
on_month_cutoff(t):
universe = eligible_asof(t)
momentum = six_month_total_return(universe, t)
turnover = mean_daily_volume_over_shares(universe, t)
r_group = independent_rank(momentum, bins=10)
v_group = independent_rank(turnover, bins=3)
long_ids = ids_where(r_group == 10 and v_group == 1)
short_ids = ids_where(r_group == 1 and v_group == 3)
cohort = freeze_membership(long_ids, short_ids, cutoff=t)
schedule_entry(cohort, after=5_trading_sessions, budget=equity/12)
schedule_exit(cohort, after_entry=12_months)
on_execution():
apply_borrow_and_capacity_rules()
trade_net_target_changes()
allocate_fills_and_costs_to_cohorts()
Ví dụ spread có lãi nhưng return trên vốn khác
Dữ liệu giả lập: long A vì return 6 tháng +30% và turnover ở tercile thấp; short B vì return −25% và turnover ở tercile cao. Nếu long $10.000 tăng 8% và short notional ban đầu $10.000 giảm 3%, PnL giá là $800+$300=$1.100. Trên một dollar-long đó là 11%; trên equity $20.000 phân bổ cho hai chân là 5,5% trước chi phí.
Kịch bản thất bại: A giảm 6%, B tăng 10%; PnL giá là −$600−$1.000=−$1.600, tức −8% trên equity $20.000. Dollar-neutral lúc mở không loại bỏ rủi ro thị trường, ngành hoặc squeeze trên chân short.
Giả sử tổng chi phí hai chân qua kỳ nắm giữ bằng $220; ví dụ thắng còn $880. Borrow thay đổi theo thời gian và dividend compensation trên short phải được cộng theo lịch thật. Không được dùng cash nhận từ short như lợi nhuận ngay lúc mở vị thế.
Đối chứng đúng horizon và kiểm soát rủi ro
Factor Mom của Kenneth French dùng prior return tháng 2–12 và danh mục theo size; đó là benchmark khác cấu hình 6 tháng trong bài này. [3] Có thể dùng để hỏi exposure momentum chung, nhưng không gọi chênh lệch giữa hai phương pháp là hiệu quả riêng của volume nếu formation, weighting và universe cùng thay đổi.
Thử nghiệm trực tiếp nên so early, late và momentum thuần trên cùng nguồn dữ liệu, lịch rebalance, gross exposure và chi phí. Báo long và short riêng, ngành, size, liquidity, số mã và net turnover. Nếu lợi thế chỉ đến từ microcaps không thể khớp ở quy mô dự định, cần nói rõ.
Return các lứa chồng lấn có phụ thuộc thời gian; khoảng tin cậy cần xử lý phụ thuộc, chẳng hạn block bootstrap trên chuỗi return danh mục. Giữ tập thời gian cuối chưa dùng lựa chọn và kiểm tra các thị trường riêng, không gộp volume có quy ước ghi nhận khác nhau một cách tùy ý.
Sai lầm thường gặp
Volume thấp nghĩa không ai bán
Turnover là hoạt động khớp chuẩn hóa, không có khả năng xác định động cơ hoặc số người muốn bán.
Lợi nhuận năm đầu thành CAGR dài hạn
Event-time spread của các cohort không tự bằng lợi nhuận ghép lãi của một tài khoản triển khai liên tục.
Đối chứng đổi quá nhiều thứ
Nếu nhánh volume đổi cả horizon, universe và weighting, không thể quy chênh lệch PnL riêng cho turnover.
Checklist trước khi dùng phương pháp
Tự đánh dấu khi đã kiểm tra trên dữ liệu của bạn. Trạng thái lưu trong trình duyệt này; đây không phải chứng nhận chiến lược có lãi.
Câu hỏi thường gặp
Nghiên cứu này mâu thuẫn với ORB chọn RVOL cao?
Không nhất thiết. Một bên đo mức turnover nền nhiều tháng giữa các cổ phiếu, bên kia đo cú sốc cùng giờ so với chính lịch sử gần đây.
Có thể chỉ mua long và bỏ short?
Có thể tạo biến thể long-only, nhưng return và market exposure khác spread long–short trong nguồn. Phải kiểm định lại và chọn benchmark phù hợp.
Nguồn nghiên cứu
Các nguồn dưới đây hỗ trợ phần định nghĩa hoặc bằng chứng được ghi bên cạnh. Mã giả, ví dụ minh họa và tham số đề xuất trong bài cần được kiểm định riêng.
- Price Momentum and Trading VolumeCharles M. C. Lee, Bhaskaran Swaminathan — Journal of Finance, 2000. Đọc toàn văn và bảng VII; kết quả raw, không phải PnL net được tái lập. Đối chiếu: .
- CRSP US Stock DatabasesCRSP. Mô tả các trường dữ liệu; không chứng thực thuật toán hay tính point-in-time của mọi join. Đối chiếu: .
- Detail for Monthly Momentum Factor (Mom)Kenneth R. French Data Library. Định nghĩa benchmark momentum khác cấu hình formation trong paper Lee–Swaminathan. Đối chiếu: .
Đọc tiếp theo phương pháp
Lưu ý rủi ro
Nội dung phục vụ giáo dục và thiết kế nghiên cứu, không phải lời khuyên tài chính. Backtest là mô phỏng lịch sử, không bảo đảm hiệu quả tương lai và không đặt lệnh giao dịch thật. Các phương pháp trong thư viện không mặc nhiên là tính năng đã có trong ứng dụng. Xem phương pháp tính và trung tâm học.
Kiểm tra quy tắc trước khi dùng vốn thật
Đối chiếu khả năng hỗ trợ của ứng dụng, dữ liệu và từng giao dịch mô phỏng; các detector nâng cao có thể cần triển khai riêng.
Tải Backtest trên App Store