Ra mắt Vnstock thế hệ 5: Hợp nhất thư viện lõi, nâng cấp nền tảng Rust và tách năm công cụ chuyên biệt

Ngày 15/10/2026, Vnstock thế hệ 5 chính thức được phát hành.
Đây không chỉ là lần tăng số phiên bản. Thế hệ 5 sắp xếp lại toàn bộ hệ sinh thái thành năm thư viện có vai trò rõ ràng: kết nối và chuẩn hoá dữ liệu, tính toán định lượng, theo dõi dòng thông tin, tự động hoá quy trình và làm việc cùng trợ lý AI.
Thay đổi quan trọng nhất với người đang dùng Vnstock là: vnstock 4.x và vnstock_data 3.x được hợp nhất vào vnstock 5.x. Bạn dùng một tên thư viện, một cách gọi hàm và một hệ thống tài liệu cho mọi cấp tài khoản.
Nếu bạn chỉ cần nắm nhanh bản phát hành này, hãy nhớ năm điểm:
vnstocktrở thành thư viện lõi duy nhất cho cả bản Cộng đồng và bản Mở rộng.- Phần xử lý chính được viết lại bằng Rust, còn kết quả vẫn là
pandas.DataFramequen thuộc. - Năm thư viện được tách theo đúng việc cần làm, nhưng có thể nối thành một quy trình thống nhất.
- Cách báo lỗi, cấp quyền và dòng lệnh được chuẩn hoá trên toàn hệ sinh thái.
- Tài liệu chuyển đổi được viết riêng cho người đang dùng
vnstock4.x,vnstock_data3.x vàvnstock_ta.
Bạn có thể xem bản đồ tổng quan tại trang Vnstock thế hệ 5, hoặc đi thẳng tới phần thay đổi liên quan nhất bên dưới.
Vì sao Vnstock bước sang thế hệ 5?
Qua nhiều phiên bản, Vnstock đã phát triển từ một thư viện truy xuất dữ liệu thành một bộ công cụ rộng hơn. Người dùng không chỉ cần lấy một bảng giá. Họ còn cần chuẩn hoá báo cáo tài chính, tính chỉ báo, quản lý tệp dữ liệu, theo dõi tin mới, lưu lại quy trình và để trợ lý AI hỗ trợ viết mã.
Khi mỗi nhu cầu nằm ở một gói, một cách cài và một kiểu báo lỗi khác nhau, chi phí học và bảo trì tăng lên. Người mới khó biết nên bắt đầu ở đâu. Người đang dùng bản cũ phải nhớ nhiều đường import. Trợ lý AI cũng dễ đoán nhầm tên hàm hoặc trộn cú pháp giữa các thế hệ.
Thế hệ 5 giải quyết vấn đề đó bằng một nguyên tắc đơn giản: mỗi thư viện làm rõ một vai trò, nhưng tất cả cùng dùng chung nền tảng.
Hợp nhất vnstock 4.x và vnstock_data 3.x về một thư viện lõi
Trước thế hệ 5, bản Cộng đồng và bản Mở rộng đi qua hai tên thư viện khác nhau. Từ vnstock 5.x, cả hai dùng chung giao diện lập trình:
| Trước đây | Từ thế hệ 5 |
|---|---|
vnstock 4.x cho bản Cộng đồng | vnstock 5.x |
vnstock_data 3.x cho bản Mở rộng | vnstock 5.x |
| Hai đường cài đặt và hai nhánh tài liệu | Một thư viện lõi, một cây tài liệu hiện hành |
| Quyền sử dụng gắn với tên gói khác nhau | Quyền sử dụng đi cùng tài khoản, không đổi cách viết mã |
Người dùng mới bắt đầu trực tiếp với các lớp Reference, Market, Fundamental, Macro, Insights, Analytics, Retail và Fund. Ví dụ:
from vnstock import Market, Reference, Fundamental
prices = Market().equity("FPT").ohlcv(length=20)
profile = Reference().company("FPT").overview()
income = Fundamental().equity("FPT").income_statement()Các lớp kiểu cũ như Quote, Listing, Company vẫn được giải thích trong tài liệu chuyển đổi, thay vì xuất hiện trên đường học chính của người mới.
Điểm quan trọng là khoá API quyết định phạm vi hàm và hạn mức bạn được dùng; nó không tạo ra một cú pháp khác. Khi quyền sử dụng thay đổi, chương trình không cần đổi toàn bộ đường import.
Nền tảng lõi Rust trên giao diện Python quen thuộc
Phần xử lý của các thư viện thế hệ 5 được xây dựng lại bằng Rust và phân phối dưới dạng gói cài đặt nhị phân dựng sẵn. Người dùng không cần cài trình biên dịch Rust hay C để bắt đầu.
Ở phía Python, trải nghiệm vẫn quen thuộc:
- dữ liệu dạng bảng tiếp tục trả về
pandas.DataFrame; - tên lớp và nhóm hàm được tổ chức theo nghiệp vụ;
- lỗi có kiểu, mã và hướng xử lý rõ hơn;
- các gói chính hỗ trợ Python 3.10 trở lên trên Windows, macOS và Linux.
Sự thay đổi ở phần lõi giúp các thư viện dùng chung cách kiểm tra tham số, phân quyền và trả lỗi. Với người dùng, lợi ích thực tế là môi trường cài đặt nhất quán hơn và chương trình dễ chẩn đoán hơn khi có vấn đề.
Kiến trúc này chia công việc thành hai lớp. Lõi Rust đảm nhiệm phần kiểm tra dữ liệu, quản lý bộ nhớ và tính toán nặng. Lớp Python đóng vai trò giao tiếp với người dùng: nhận tham số theo cú pháp quen thuộc, chuyển dữ liệu vào lõi và trả kết quả về pandas. Nhờ vậy, chương trình vẫn mang cảm giác của một thư viện Python nhưng không còn buộc các phép tính lớn phải chạy qua vòng lặp ở tầng Python.
Lợi ích đầu tiên xuất hiện ngay từ lúc cài đặt. Các phần lõi đã được biên dịch sẵn thành gói cài đặt nhị phân cho từng nền tảng được hỗ trợ. pip không phải dựng lại lõi, tìm trình biên dịch C hay xử lý một chuỗi thư viện tính toán rời rạc như trước. Trên môi trường tương thích, người dùng cài thư viện mở rộng bằng một lệnh và có thể bắt đầu ngay sau khi gói được tải về; thời gian thực tế vẫn phụ thuộc hệ điều hành, đường truyền và môi trường Python.
Lợi ích thứ hai là tốc độ tính toán. Báo cáo đo ngày 06/10/2026 trên Apple M4, một luồng, với Python 3.14, NumPy 2.2 và pandas 2.3 ghi nhận:
| Bài đo | vnstock_quant thế hệ 5 | Mốc so sánh | Mức tăng tốc |
|---|---|---|---|
| 58 chỉ báo, 5.000 phiên, qua API Python chuẩn | 5,34 ms | 138,5 ms với vnstock_ta cũ | 25,9 lần |
| 15 chỉ báo trên 1.600 chuỗi, mỗi chuỗi 1.250 phiên | 1,21 giây | 14,01 giây với vnstock_ta cũ | 11,6 lần |
| 13 chỉ báo trên chuỗi từ 100.000 đến 1.000.000 nến phút | 8,86–97,10 ms | 819,7–8.171,3 ms với vnstock_ta cũ | 84,2–92,6 lần |
Một số chỉ báo vốn dùng nhiều vòng lặp ở thế hệ cũ đạt mức tăng hàng trăm lần trong cùng môi trường đo, như smma 573 lần, supertrend 346 lần và linreg 235 lần. Đây là số đo tham khảo trên một máy và một bộ dữ liệu cụ thể, không phải cam kết tốc độ cho mọi môi trường. Bạn có thể xem đầy đủ cấu hình thử nghiệm, từng chỉ báo và phương pháp đo tại báo cáo kiểm định chất lượng và hiệu năng Vnstock Quant.
Năm thư viện cho năm công đoạn nghiên cứu
Thế hệ 5 không gom mọi thứ vào một gói lớn. Hệ sinh thái được chia thành năm thư viện chính để bạn cài đúng phần mình cần.
vnstock: kết nối và chuẩn hoá dữ liệu đầu vào
vnstock giúp bạn tự truy xuất dữ liệu chứng khoán, tài chính và kinh tế vĩ mô từ nguồn bên thứ ba về môi trường của mình. Các lớp nghiệp vụ trả kết quả theo cấu trúc nhất quán để bạn tiếp tục phân tích bằng pandas hoặc công cụ khác.
Đây là điểm bắt đầu phù hợp cho phần lớn người dùng. Đọc tài liệu vnstock thế hệ 5 để xem nhóm hàm, cài đặt và giới hạn theo cấp tài khoản.
vnstock_quant: tính toán định lượng trên dữ liệu của bạn
vnstock_quant tiếp nhận dữ liệu bảng và thực hiện các phép tính theo năm miền: chỉ báo kỹ thuật, chỉ số tài chính, đo lường rủi ro, quản lý danh mục và mô hình định giá.
Khác biệt đáng chú ý so với vnstock_ta trước đây là phạm vi không còn dừng ở chỉ báo kỹ thuật. Công thức, tham số và cách đối chiếu được trình bày trong tài liệu vnstock_quant để bạn kiểm tra phép tính thay vì chỉ nhận một con số cuối cùng.
vnstock_news: theo dõi tiêu đề và đường dẫn từ nguồn tin
vnstock_news sắp xếp tiêu đề, tóm tắt, thời gian xuất bản và đường dẫn từ các nguồn cấp tin vào bảng dữ liệu trên máy bạn. Mục tiêu là giúp bạn theo dõi dòng thông tin và trở lại đọc bài tại trang gốc.
Phiên bản 3.x rút gọn cách gọi hàm, chuẩn hoá thời gian theo giờ Việt Nam và báo lỗi rõ hơn khi cấu trúc nguồn thay đổi. Phạm vi hiện hành được ghi tại tài liệu vnstock_news.
vnstock_pipeline: tổ chức quy trình và tệp dữ liệu cá nhân
vnstock_pipeline dành cho các công việc lặp lại: cập nhật dữ liệu theo danh sách mã, lưu Parquet hoặc CSV, kiểm tra cấu trúc, ghi nhận lỗi và tải bù phần còn thiếu.
Thư viện chạy trên máy tính hoặc máy chủ riêng do bạn quản lý. Dữ liệu đã lưu có thể được đọc lại và đưa sang công cụ phân tích quen dùng. Xem tài liệu vnstock_pipeline để hiểu cấu hình lưu trữ và quy trình theo lô.
vnstock_mcp: cầu nối cục bộ cho trợ lý AI
vnstock_mcp cho phép ứng dụng AI gọi các thư viện Vnstock đã cài trên máy bạn. Kết quả trung gian được giữ theo mã tham chiếu, còn các bước làm có thể kết xuất thành mã Python để chạy lại.
Mục tiêu không phải để AI thay bạn đưa ra kết luận. Mục tiêu là giúp cuộc trò chuyện để lại một quy trình có thể đọc, sửa và kiểm chứng. Đọc giới thiệu Vnstock MCP để xem mô hình vận hành cục bộ và danh mục công cụ.
Ngoài năm thư viện chính, tài liệu còn có khu vực riêng cho vnstock_bt bản alpha. Đây là nhánh thử nghiệm kiểm thử chiến lược trên dữ liệu người dùng đưa vào; giao diện còn có thể thay đổi giữa các bản nên chưa được xếp vào đường bắt đầu chính của thế hệ 5.
Cài đặt và quản lý thư viện qua một bộ lệnh chung
Vnstock thế hệ 5 được phát hành trên kho gói chính thức của vnstocks.com. Lệnh cài thư viện lõi là:
pip install -U --extra-index-url https://vnstocks.com/api/packages vnstockKênh phát hành chính thức: Kể từ các thư viện thế hệ 5, Vnstock chỉ phát hành gói cài đặt qua chỉ mục gói riêng trên
vnstocks.com, được khai báo bằng tham số--extra-index-url. Các thư viện thế hệ 5 không được phát hành qua PyPI. Vì vậy, hãy giữ nguyên chỉ mục trong câu lệnh cài đặt và chỉ dùng hướng dẫn từ website Vnstock để tránh cài nhầm gói không thuộc kênh phát hành chính thức.
Sau khi cài, bạn có thể đăng ký khoá và cài các thư viện được mở cho tài khoản:
vnstock register
vnstock installCùng một bộ lệnh giúp bạn xem trạng thái môi trường, kiểm tra phiên bản và cập nhật các thư viện đã cài. Trang Tải về và cài đặt Vnstock tạo sẵn câu lệnh phù hợp sau khi bạn đăng nhập.
Bộ lệnh dòng lệnh cho những việc thường gặp
Sau khi cài vnstock, terminal có thêm bộ lệnh vnstock. Bạn không cần mở một notebook chỉ để kiểm tra phiên bản, tìm nguyên nhân lỗi cài đặt hoặc xem hạn mức còn lại.
| Khi bạn cần | Lệnh nên dùng | Kết quả nhận được |
|---|---|---|
| Đăng nhập và đăng ký máy hiện tại | vnstock register | Nhập khoá theo dấu nhắc ẩn, xác thực tài khoản và lưu khoá đã mã hoá trên máy |
| Xem nhanh trạng thái | vnstock status | Cấp tài khoản, hạn dùng, mã thiết bị, phiên bản và trạng thái bản cài |
| Kiểm tra hạn mức | vnstock usage | Phần trăm hạn mức chung còn lại theo giờ, ngày và tháng, cùng mốc đặt lại |
| Xem chính sách đang áp dụng | vnstock policy | Tuyến chức năng và nguồn đang khả dụng trên máy |
| Cài các thư viện được mở cho tài khoản | vnstock install | Tự nhận diện và cài đúng thư viện vào môi trường Python hiện hành |
| Cập nhật toàn bộ thư viện mở rộng | vnstock install -U | Nâng cấp các thư viện đã được mở lên bản mới nhất |
| Chẩn đoán lỗi môi trường | vnstock doctor | Chạy bảy phép kiểm và dừng ở lỗi đầu tiên kèm hướng khắc phục |
| Kiểm tra bản mới | vnstock version | Đối chiếu phiên bản thư viện và lõi Rust với kho gói |
| Xem vị trí cấu hình | vnstock env | Đường dẫn lưu cấu hình, trạng thái và thông tin kết nối cần cho việc xử lý lỗi |
Mọi lệnh đều hỗ trợ --json. Kết quả có cấu trúc này phù hợp cho script tự động, quy trình CI/CD và trợ lý AI: thay vì đọc màn hình rồi đoán, AI có thể nhận đúng tên trường, trạng thái và mã lỗi để đề xuất bước tiếp theo.
Bạn cũng có thể gõ vnstock không kèm tham số để mở dấu nhắc tương tác. Phím Tab hoàn thành lệnh; ký tự / mở danh sách thao tác nhanh; lệnh /data price FPT hiển thị một bảng giá mẫu kèm câu lệnh Python tương ứng. Đây là cách tra cứu nhanh khi bạn muốn xem kết quả và đồng thời lấy đoạn mã để đưa vào notebook hoặc gửi cho trợ lý AI.
Khi gặp lỗi, trình tự ngắn thường là:
vnstock status
vnstock version
vnstock doctor
vnstock usageBốn lệnh lần lượt trả lời: tài khoản có được nhận diện không, bản cài có cần cập nhật không, môi trường hỏng ở đâu và hạn mức còn bao nhiêu. Xem toàn bộ tham số và ví dụ tại hướng dẫn đăng nhập và dòng lệnh.
Mỗi bản phát hành chính thức có hạn dùng 365 ngày và tự nhắc trước khi cần nâng cấp. Cơ chế này giúp người dùng biết bản đang cài đã cũ, thay vì để một chương trình lâu năm âm thầm chạy với hành vi không còn được duy trì.
Làm việc cùng trợ lý AI nhưng giữ quyền kiểm chứng ở người dùng
AI đã làm cho việc viết một đoạn mã Python dễ hơn nhiều. Nhưng một đoạn mã chạy được chưa chắc đã dùng đúng hàm, đúng kỳ, đúng đơn vị hoặc đúng giả định.
Vì vậy, thế hệ 5 không chỉ thêm một cầu nối cho AI. Các thư viện được tổ chức để trợ lý AI có thể đọc tài liệu hiện hành, nhìn thấy tham số có cấu trúc, nhận mã lỗi ổn định và để lại mã Python sau mỗi quy trình.
Cách làm được khuyến khích gồm ba bước:
- Nêu câu hỏi và phạm vi cần kiểm tra.
- Đọc mã, nguồn đầu vào, tham số và công thức trước khi dùng kết quả.
- Lưu lại chương trình để sửa, chạy lại và phát triển thành công cụ của riêng bạn.
AI hỗ trợ viết mã. Việc chọn giả định, đối chiếu đầu vào và chịu trách nhiệm với kết quả vẫn thuộc về người dùng.
Hướng dẫn chuyển đổi từ các phiên bản cũ
Đừng xoá môi trường cũ ngay. Cách an toàn hơn là tạo một môi trường Python riêng cho thế hệ 5, chạy lại một số tác vụ đại diện và đối chiếu kết quả trước khi chuyển hẳn.
Đang dùng vnstock 4.x
Phần lớn giao diện hợp nhất vẫn quen thuộc, nhưng một số lớp cũ, mặc định và nhóm tính năng đã thay đổi. Bắt đầu tại hướng dẫn chuyển từ vnstock 4.x.
Đang dùng vnstock_data 3.x
Thay đổi dễ thấy nhất là đường import:
# Trước đây
from vnstock_data import Market
# Thế hệ 5
from vnstock import MarketSau đó, kiểm tra các thay đổi có chủ ý về tham số, mặc định và tính năng đã ngừng tại hướng dẫn chuyển từ vnstock_data 3.x.
Đang dùng vnstock_ta
vnstock_quant thay thế vai trò của vnstock_ta và mở rộng sang nhiều miền tính toán khác. Cú pháp của Indicator tiếp tục được hỗ trợ; bạn có thể chuyển dần theo hướng dẫn chuyển từ vnstock_ta.
Bắt đầu với Vnstock thế hệ 5
Nếu bạn mới dùng Vnstock, lộ trình ngắn nhất là:
- Mở trang Vnstock thế hệ 5 để xem toàn cảnh.
- Vào trang tải về để cài
vnstocktrong môi trường Python riêng. - Chạy một ví dụ nhỏ từ tài liệu vnstock.
- Chỉ cài thêm
vnstock_quant,vnstock_news,vnstock_pipelinehoặcvnstock_mcpkhi công việc thực sự cần. - Nếu đang có mã cũ, giữ môi trường cũ làm đường lui trong thời gian đối chiếu.
Vnstock thế hệ 5 đánh dấu một thay đổi về cách tổ chức: từ những gói rời rạc thành một hệ sinh thái có chung nền tảng, nhưng vẫn cho phép bạn chọn đúng công cụ cho từng việc.
Quan trọng hơn, thế hệ mới đặt việc kiểm chứng ở trung tâm. Sau mỗi lần làm việc với dữ liệu hoặc trợ lý AI, thứ còn lại không chỉ là một câu trả lời. Đó là đoạn mã, bảng dữ liệu, tham số và cách làm mà bạn có thể đọc lại, sửa và chạy lại.
Vnstock là hệ sinh thái tự động hoá cá nhân trong nghiên cứu đầu tư. Các thư viện kết nối nguồn bên thứ ba hoặc tính toán trên dữ liệu bạn đưa vào; Vnstock cấp quyền sử dụng phần mềm, không bán hay phân phối lại dữ liệu thị trường. Tính sẵn sàng và độ chính xác của dữ liệu phụ thuộc vào nguồn. Nội dung phục vụ nghiên cứu và tham khảo, không phải khuyến nghị đầu tư.