Vnstock Logo

Vnstock thế hệ 5

Cộng đồng

Mục lục

vnstock thế hệ 5 là thư viện Python giúp bạn tự truy xuất dữ liệu chứng khoán, vĩ mô và tỷ giá từ các nguồn bên thứ ba, nhận về bảng pandas.DataFrame có tên cột thống nhất. Thư viện chạy trên máy của bạn; truy vấn đi thẳng từ máy bạn tới nguồn.

Thế hệ 5 gộp hai thư viện cũ thành một:

Trước đâyTừ thế hệ 5
vnstock 4.x, bản Cộng đồngvnstock 5.x, dùng không khoá hoặc với khoá cấp Cộng đồng
vnstock_data 3.x, bản Mở rộngvnstock 5.x, dùng với khoá cấp tài trợ

Cùng một lệnh cài, cùng tên lớp, cùng cách gọi. Khoá API của bạn quyết định hàm nào chạy được và lấy được bao nhiêu dữ liệu, không quyết định cách viết mã.

Bắt đầu trong ba bước

Shell
pip install -U --extra-index-url https://vnstocks.com/api/packages vnstock
vnstock register        # nhập khoá API, bỏ qua nếu muốn chạy ở cấp Khách
Python
from vnstock import Market, Reference, Fundamental

Market().equity("FPT").ohlcv(length=20)            # 20 nến ngày gần nhất
Reference().company("FPT").overview()              # hồ sơ doanh nghiệp
Fundamental().equity("FPT").income_statement()     # kết quả kinh doanh

Lấy khoá API ở trang tài khoản. Chi tiết cài đặt, môi trường ảo, Google Colab và hạn dùng của bản cài ở trang Cài đặt.

Đọc theo thứ tự này

Bảy trang dưới đây đủ để bạn cài thư viện, đăng nhập và lấy dữ liệu chứng khoán hằng ngày:

BướcTrangĐể làm gì
1Cài đặtCài vào môi trường ảo, Google Colab, nâng cấp, hạn dùng của bản cài
2Đăng nhập và dòng lệnhĐăng nhập bằng khoá API, xem cấp và lượt gọi, chẩn đoán khi lỗi
3Thông tin tham chiếuReference(): danh sách mã, hồ sơ doanh nghiệp, chỉ số, ngành, sự kiện
4Dữ liệu thị trườngMarket(): nến giá, khớp lệnh, bảng giá của cổ phiếu, chỉ số, phái sinh, chứng quyền, ETF, trái phiếu
5Báo cáo tài chínhFundamental(): ba báo cáo chính, chỉ số tài chính, thuyết minh
6Cấp tài khoản và giới hạnHàm nào mở ở cấp nào, số kỳ báo cáo, độ dài lịch sử, trần số dòng
7Xử lý lỗiCác loại ngoại lệ, mã lỗi và cách xử lý

Mỗi trang hàm ghi rõ hàm chạy được ở cấp nào: Mọi cấp (Khách, Cộng đồng, Tài trợ) hay Tài trợ (Bronze trở lên).

Khi cần thêm, ba mục cuối trong mục lục gom phần còn lại:

Đang có mã viết cho bản cũ

Bạn không phải chuyển ngay. Bản cũ vẫn cài được và tài liệu của nó vẫn ở nguyên chỗ cũ: chọn phiên bản ở ô cạnh tiêu đề trang để đổi qua lại. Không chắc máy đang cài bản nào thì chạy python -c "import vnstock; print(vnstock.__version__)"; số bắt đầu bằng 5. là thế hệ 5.

Khi chuyển, phần lớn mã chạy tiếp: tên lớp và tên hàm của giao diện hợp nhất giữ như vnstock_data, các lớp kiểu cũ (Quote, Listing, Company, Finance, Trading, vnstock.explorer.*) vẫn import được. Ba điểm hay vấp nhất:

  • ohlcv(length=N) trả N nến của khung đang hỏi; ohlcv() không đối số trả 100 nến mới nhất. Muốn lấy theo ngày, viết length="30d" hoặc truyền start, end.
  • Lỗi là ngoại lệ có kiểu mang mã code, không phải dòng chữ in ra rồi trả về None. InputError cũng là ValueError, nên except ValueError trong mã cũ vẫn bắt được.
  • Lớp Vnstock() của bản 4.x, các hằng như INDICES_INFO và lớp Broker không còn.

Đọc trang ứng với bản bạn đang dùng:

Đang dùngĐọc
vnstock 4.x, bản Cộng đồngChuyển từ vnstock 4.x
vnstock_data 3.x, bản Mở rộngChuyển từ vnstock_data 3.x
Lớp Quote, Listing, Company, Finance, Trading, vnstock.explorer.*Lớp kiểu cũ và mô-đun theo nguồn

Thư viện không làm gì

  • Không đặt lệnh, không kết nối tài khoản chứng khoán. Lớp hàm Broker của bản 4.x không còn ở thế hệ 5.
  • Không đưa khuyến nghị đầu tư. Kết quả là số liệu bạn tự truy xuất và tự diễn giải.
  • Không bảo đảm dữ liệu đầy đủ hay chính xác. Dữ liệu đến từ nguồn bên thứ ba; khi nguồn đổi cấu trúc hoặc gián đoạn, hàm báo lỗi thay vì trả bảng sai.
  • Không phải mã nguồn mở. Thư viện phát hành dạng đóng gói sẵn theo giấy phép sử dụng cho cá nhân.

Khi đăng nhập và khi xác minh giấy phép, thư viện gửi lên vnstocks.com thông tin tài khoản và thiết bị để cấp quyền và đếm lượt gọi, theo chính sách quyền riêng tư.