Vnstock Logo

Quản lý universe thanh khoản

Mở rộng

Mục lục

Thị trường chứng khoán Việt Nam có nhiều mã cổ phiếu đang giao dịch trên cả ba sàn HOSE, HNX và UPCOM. Tuy nhiên, trong nghiên cứu định lượng, việc theo dõi toàn bộ các mã là không cần thiết vì rất nhiều cổ phiếu có thanh khoản kém hoặc gần như không có giao dịch trong thời gian dài.

vnstock_pipeline cung cấp công cụ sàng lọc danh mục theo dõi dựa trên thanh khoản thực tế từ các tệp dữ liệu đã lưu, giúp bạn tập trung năng lực tính toán và lưu trữ vào nhóm cổ phiếu có thanh khoản cao.

Lệnh tạo universe thanh khoản: build-liquidity

Shell
vnstock_pipeline universe build-liquidity [tuỳ_chọn]

Các tuỳ chọn tham số

  • --days: Số phiên giao dịch gần nhất dùng để tính toán giá trị giao dịch bình quân (Mặc định: 5 ngày).
  • --top: Số lượng mã cổ phiếu có thanh khoản cao nhất được chọn vào danh mục (Mặc định: 300 mã).

Ví dụ áp dụng

Shell
# Sàng lọc top 100 cổ phiếu có giá trị giao dịch cao nhất trong 10 phiên vừa qua
vnstock_pipeline universe build-liquidity --days 10 --top 100

Hệ thống sẽ:

  1. Đọc dữ liệu giá lịch sử của toàn bộ các mã đang có trong kho lưu trữ data/ohlcv/.
  2. Tính toán giá trị giao dịch ước tính cho từng phiên: Giá đóng cửa × Khối lượng khớp lệnh.
  3. Tính giá trị giao dịch trung bình trong số phiên yêu cầu và sắp xếp các mã từ cao xuống thấp.
  4. Trích xuất danh sách Top N mã và ghi lại thành danh mục thanh khoản (LIQUIDITY) để sử dụng cho các tác vụ tiếp theo.

Sử dụng universe thanh khoản trong tác vụ tải dữ liệu

Sau khi đã xây dựng danh mục thanh khoản, bạn có thể dễ dàng sử dụng nhóm này trong các tác vụ tải dữ liệu theo lô:

Shell
# Tải nến ngày cập nhật phiên mới nhất cho Top 50 mã thanh khoản
vnstock_pipeline run ohlcv --group LIQUIDITY --top 50 --mode daily

# Tải dữ liệu nến 1 phút cho Top 30 mã sôi động nhất
vnstock_pipeline run ohlcv --group LIQUIDITY --top 30 --interval 1m

Quản lý danh mục theo dõi riêng (Watchlists)

Ngoài các rổ chỉ số chuẩn của thị trường (VN30, HOSE...) và danh mục thanh khoản vừa lọc, bạn có thể tự định nghĩa các danh sách cổ phiếu theo sở thích nghiên cứu của mình trong tệp cấu hình pipeline.toml:

TOML
# Khai báo các danh mục theo dõi trong pipeline.toml
[universe.watchlists]
ngan_hang = ["ACB", "BID", "CTG", "MBB", "TCB", "VCB", "VPB"]
cong_nghe = ["FPT", "CMG", "ELC", "CTR"]
danh_muc_dau_tu = ["FPT", "MWG", "TCB", "VNM"]

Khi chạy các lệnh tải dữ liệu hoặc xuất tệp, bạn chỉ cần truyền tên danh mục qua tham số --watchlist:

Shell
# Tải nến ngày cho riêng nhóm ngành ngân hàng
vnstock_pipeline run ohlcv --watchlist ngan_hang

# Tải báo cáo tài chính cho danh mục đầu tư cá nhân
vnstock_pipeline run financial --watchlist danh_muc_dau_tu

Cách làm này giúp bạn tiết kiệm thời gian gõ từng mã thủ công và bảo đảm quy trình tải dữ liệu diễn ra thuận tiện, có tổ chức.