Vnstock Logo

Thông tin tham chiếu

Cộng đồng

Mục lục

Reference() gom các bảng ít thay đổi: hồ sơ một công ty, danh sách mã trên thị trường, phân ngành ICB, danh mục chỉ số, thông tin hợp đồng tương lai, chứng quyền, trái phiếu và lịch sự kiện. Bạn thường gọi chúng một lần, lưu lại, rồi dùng làm gốc cho các bước phân tích khác.

Ai dùng được

Phần lớn hàm trên trang này mở cho mọi cấp: Khách (không khoá), Cộng đồng và Tài trợ. Năm thứ chỉ dành cho cấp tài trợ (Bronze trở lên): cơ cấu sở hữu một dòng shareholders(mode="summary") từ nguồn vci, thông tin một hợp đồng tương lai, một chứng quyền, một trái phiếu, và phân ngành riêng của KBS, CafeF. Gọi ngoài cấp thì nhận EntitlementError và thư viện không gửi truy vấn nào đi. Xem Cấp quyền và giới hạn.

Danh mục không bị cắt dòng

Các danh mục tham chiếu (mọi tuyến reference.*: danh sách mã, phân ngành, chỉ số, lịch sự kiện) trả đủ dòng ở mọi cấp, không bị trần số dòng của cấp cắt bớt. Ví dụ equity.list_by_industry() trả hơn 8.000 dòng dù trần của cấp Khách là 5.000. Bản 5.0.0a5 trở về trước còn áp trần lên danh mục; nâng cấp để nhận đủ.

Tóm tắt

HàmLàm gìCấp
company(s).info(), .overview()Hồ sơ công ty, một dòngMọi cấp
company(s).officers()Ban lãnh đạoMọi cấp
company(s).shareholders()Danh sách cổ đôngMọi cấp
company(s).shareholders(mode="summary")Cơ cấu sở hữu một dòngTài trợ (nguồn vci); Mọi cấp với source="kbs"
company(s).ownership()Cơ cấu sở hữu theo nhóm cổ đôngMọi cấp
company(s).subsidiaries(), .affiliate()Công ty con, công ty liên kếtMọi cấp
company(s).capital_history()Lịch sử vốn điều lệMọi cấp
company(s).events()Sự kiện của công tyMọi cấp
company(s).insider_trading()Giao dịch của người nội bộMọi cấp
equity.list()Mọi mã cổ phiếuMọi cấp
equity.list_by_exchange()Cổ phiếu kèm sàn niêm yếtMọi cấp
equity.list_by_group(group)Mã theo nhóm: VN30, HOSE, HNX30…Mọi cấp
equity.list_by_industry()Mã kèm ngành ICB các cấpMọi cấp
industry.list()Bảng phân ngành ICBMọi cấp
industry.sectors()Mã theo ngành ICBMọi cấp
index.list(), index.groups()Danh mục chỉ số, nhóm mãMọi cấp
index(s).info(), .description()Một chỉ sốMọi cấp
index.members(group), index(s).members()Mã thành phần của chỉ sốMọi cấp
etf.list(), futures.list(), warrant.list(), bond.list()Danh sách ETF, hợp đồng tương lai, chứng quyền, trái phiếuMọi cấp
futures(s).info()Thông tin một hợp đồng tương laiTài trợ
warrant(s).info()Thông tin một chứng quyềnTài trợ
bond(s).info()Thông tin một trái phiếuTài trợ
events.calendar()Lịch sự kiện doanh nghiệp toàn thị trườngMọi cấp
events.market()Lịch nghỉ lễ, nghỉ bù của thị trườngMọi cấp
market.status()Trạng thái phiên của từng sànMọi cấp

Hai nhóm khác của Reference() có trang riêng:

Dữ liệu mẫu trên trang chạy ngày 10/10/2026, cắt bớt cột cho gọn.


1. Khởi tạo

Python
from vnstock import Reference

ref = Reference()

Mỗi nhánh mở bằng thuộc tính (ref.equity, ref.index…) hoặc gọi kèm mã (ref.company("FPT"), ref.index("VN30"), ref.futures("41I1GA000")). futures, warrant, bond, index dùng được cả hai cách: ref.futures.list() lấy danh sách, ref.futures("41I1GA000").info() lấy một hợp đồng.

Mọi bảng trả về là pandas.DataFrame. Nguồn thực tế của một kết quả nằm ở df.attrs["source"], tuyến dữ liệu ở df.attrs["route"].


2. Thông tin công ty — Reference().company(symbol)

Python
fpt = ref.company("FPT")

Nguồn mặc định là vci, trừ ownership, capital_history, insider_trading mặc định kbs.

HàmMặc địnhsource= nhận
info, overview, officers, shareholders, subsidiaries, affiliate, eventsvcivci, kbs
ownership, capital_history, insider_tradingkbskbs
shareholders(mode="summary")vcivci, kbs (trả bảng ownership)

2.1 Hồ sơ công ty — info(), overview()

Python
fpt.info(lang="vi", source=None)
fpt.overview(lang="vi", source=None)   # tên khác của info(), cùng kết quả
Tham sốKiểuMặc địnhÝ nghĩa
langstr"vi""vi" hoặc "en"
sourcestrNone (vci)"vci" hoặc "kbs"

Một dòng. Cột khác nhau theo nguồn:

NguồnCột
vcisymbol, name, short_name, sector, profile, listing_date (ngày giờ, múi Asia/Ho_Chi_Minh), issued_share (số cổ phiếu phát hành, float64)
kbssymbol, exchange, profile, history, num_employees, founded_date, listing_date, charter_capital (đồng), website, address, phone, email, tax_id
symbolnameshort_namesectorlisting_date
FPTCông ty Cổ phần FPTFPT CorpTechnology…

2.2 Ban lãnh đạo — officers()

Python
fpt.officers(filter_by="working", source=None)
Tham sốKiểuMặc địnhÝ nghĩa
filter_bystr"working""working", "resigned" hoặc "all". Thư viện kiểm tra giá trị rồi trả cùng một bảng cho cả ba, như bản 3.x. Giá trị khác báo UnsupportedError
sourcestrNone (vci)"vci" hoặc "kbs"

Cột: symbol, name, position, total_shares (số cổ phiếu nắm giữ), rate (tỷ lệ sở hữu, dạng phần, 0.0689 là 6,89%). Nguồn kbs ghi chức vụ viết tắt và để trống hai cột số.

symbolnamepositiontotal_sharesrate
FPTTrương Gia BìnhChủ tịch Hội đồng Quản trị1173479660.0689
FPTBùi Quang NgọcPhó Chủ tịch Hội đồng Quản trị252557150.0148
FPTĐỗ Cao BảoThành viên Hội đồng Quản trị158685000.0093

2.3 Cổ đông — shareholders()

Python
fpt.shareholders(mode="detailed", source=None)
Tham sốKiểuMặc địnhÝ nghĩa
modestr"detailed""detailed": mỗi cổ đông một dòng. "summary": cơ cấu sở hữu cả công ty
sourcestrNone (vci)"vci" hoặc "kbs"

mode="detailed" (mọi cấp). Cột: symbol, name, shareholder_type (Individual, Organization), total_shares, rate (dạng phần), date (ngày cập nhật).

symbolnameshareholder_typetotal_sharesrate
FPTTrương Gia BìnhIndividual1173479660.0689
FPTTổng Công ty Đầu Tư Và Kinh Doanh Vốn Nhà Nước - Công ty TNHHOrganization965856370.0567
FPTCông ty TNHH QTOrganization543039230.0369

mode="summary" với nguồn vci (cấp tài trợ): một dòng, cột symbol, total_shares, state_percentage, foreign_percentage, other_percentage, bod_percentage, institution_percentage (tỷ lệ dạng phần), state_volume, foreigner_volume, other_volume (số cổ phiếu).

symboltotal_sharesstate_percentageforeign_percentagebod_percentageinstitution_percentage
FPT1.885728e+090.056340.283120.0945420.170887

mode="summary" với source="kbs" trả bảng cơ cấu sở hữu của ownership() (mục 2.4), mở mọi cấp. KBS không có bảng một dòng.

2.4 Cơ cấu sở hữu — ownership()

Python
fpt.ownership(source=None)
Tham sốKiểuMặc địnhÝ nghĩa
sourcestrNone (kbs)"kbs"

Cột: symbol, owner_type, ownership_percentage (đơn vị phần trăm, 5.67 là 5,67%), shares_owned, update_date.

symbolowner_typeownership_percentageshares_ownedupdate_date
FPTTCT Đầu tư và Kinh doanh vốn Nhà nước (SCIC)5.67965856372025-12-31
FPTCĐ tổ chức44.017497715522025-12-31
FPTCĐ nội bộ16.052734454412025-12-31

Chú ý đơn vị: ownership_percentage tính bằng phần trăm, còn rate ở officers() và shareholders() tính bằng phần.

2.5 Công ty con, công ty liên kết — subsidiaries(), affiliate()

Python
fpt.subsidiaries(filter_by="all", source=None)
fpt.affiliate(source=None)
Tham sốKiểuMặc địnhÝ nghĩa
filter_bystr"all""all": mọi công ty có góp vốn. "subsidiary": chỉ công ty con. "affiliate": chỉ công ty liên kết, giống affiliate()
sourcestrNone (vci)"vci" hoặc "kbs"

Cột: symbol, name, rate (tỷ lệ sở hữu, dạng phần), sub_symbol (mã của công ty được góp vốn). Với FPT: all 14 dòng, subsidiary 8 dòng, affiliate 5 dòng.

symbolnameratesub_symbol
FPTCông ty TNHH Giáo Dục FPT1.0FPTE
FPTCông ty TNHH Phần Mềm FPT1.0FPTSC
FPTCông ty TNHH FPT IS1.0FISC

2.6 Lịch sử vốn điều lệ — capital_history()

Python
fpt.capital_history(source=None)
Tham sốKiểuMặc địnhÝ nghĩa
sourcestrNone (kbs)"kbs"

Cột: symbol, date (chuỗi DD/MM/YYYY), charter_capital (đồng), currency. Mới nhất ở đầu.

symboldatecharter_capitalcurrency
FPT07/10/20261.885728e+13VND
FPT09/07/20261.741326e+13VND
FPT21/08/20251.703507e+13VND

2.7 Sự kiện của công ty — events()

Python
fpt.events(lang="vi", source=None)
Tham sốKiểuMặc địnhÝ nghĩa
langstr"vi""vi" hoặc "en"
sourcestrNone (vci)"vci" hoặc "kbs"

Tham số thừa mà bản cũ nhận (ví dụ page, limit) được bỏ qua, không báo lỗi.

Nguồn vci trả 22 cột, cả tiếng Việt lẫn tiếng Anh: id, symbol, event_code, event_name_vi, event_name_en, event_title_vi, event_title_en, category, action_type_vi, action_type_en, exercise_ratio, value_per_share, và các cột ngày display_date1, display_date2, public_date, record_date, exright_date, issue_date, start_date, end_date, listing_date, payout_date. Với FPT là 234 dòng.

symbolevent_codeevent_name_vievent_title_vidisplay_date1
FPTISSPhát hành cổ phiếuPhát hành cổ phiếu - Cổ phiếu thưởng tỉ lệ 10.0%2026-09-21
FPTAISNiêm yết thêmFPT - Niêm yết bổ sung 10.819.301 cổ phiếu2026-08-21
FPTDDINDGiao dịch nội bộ: Giao dịch cá nhânNguyễn Văn Khoa - Đăng kí Mua 428,368 FPT2026-06-24

2.8 Giao dịch của người nội bộ — insider_trading()

Python
fpt.insider_trading(source=None)
Tham sốKiểuMặc địnhÝ nghĩa
sourcestrNone (kbs)"kbs"

Cột: id, symbol, person_name, position, transaction_type, registered_volume, traded_volume, start_date, end_date, status. Ngày chạy thử, FPT trả bảng rỗng có đủ cột. Giao dịch nội bộ của FPT vẫn xem được trong events() (mã sự kiện bắt đầu bằng DD).


3. Danh sách cổ phiếu — Reference().equity

HàmMặc địnhsource= nhận
list()vci—
list_by_group(group)vcivci, kbs
list_by_exchange(), list_by_industry()vcivci

3.1 Mọi mã — list()

Python
ref.equity.list()

Không có tham số. Cột: symbol, org_name. Ngày chạy thử: 1.754 mã.

symbolorg_name
YTCCông ty Cổ phần Xuất nhập khẩu Y tế Thành phố Hồ Chí Minh
YEGCông ty Cổ phần Tập đoàn Yeah1
YBMCông ty Cổ phần Khoáng sản Công nghiệp Yên Bái

3.2 Theo sàn — list_by_exchange()

Python
ref.equity.list_by_exchange(source=None)
ref.equity.by_exchange()   # tên khác

Chỉ giữ cổ phiếu (bỏ chứng quyền, trái phiếu, quỹ…), như bản 3.x. Cột: symbol, exchange (HOSE, HNX, UPCOM), organ_name, organ_short_name, icb_code_lv2.

symbolexchangeorgan_nameorgan_short_nameicb_code_lv2
YTCUPCOMCông ty Cổ phần Xuất nhập khẩu Y tế Thành phố Hồ Chí MinhXNK Y tế TP.HCM4500
YEGHOSECông ty Cổ phần Tập đoàn Yeah1Tập đoàn Yeah15500
YBMHOSECông ty Cổ phần Khoáng sản Công nghiệp Yên BáiKhoáng sản CN Yên Bái1700

3.3 Theo nhóm — list_by_group()

Python
ref.equity.list_by_group(group, source=None)
ref.equity.by_group(group)   # tên khác
Tham sốKiểuMặc địnhÝ nghĩa
groupstrbắt buộcMã nhóm: "VN30", "VN100", "HNX30", "HOSE", "HNX", "UPCOM", "ETF", "CW", "FU_INDEX", "BOND"… Danh sách nhóm ở ref.index.groups()
sourcestrNone (vci)"vci" hoặc "kbs"

Một cột symbol. VN30 trả 30 mã. Hai nguồn có thể đếm khác nhau cho cùng một nhóm: ngày chạy thử, HOSE có 430 mã ở vci và 406 mã ở kbs.

Python
vn30 = ref.equity.list_by_group("VN30")

3.4 Theo ngành ICB — list_by_industry()

Python
ref.equity.list_by_industry(icb_code=None, lang="vi", source=None)
Tham sốKiểuMặc địnhÝ nghĩa
icb_codestrNoneMã ngành ICB, ví dụ "8355" (ngân hàng). Để trống thì lấy mọi ngành
langstr"vi""vi" hoặc "en"
sourcestrNone (vci)"vci"

Mỗi mã một dòng cho mỗi cấp ngành. Cột: symbol, organ_name, com_type_code, icb_level (1 tới 4), icb_code, icb_name. Không lọc: 8.202 dòng. icb_code="8355": 29 dòng.

symbolorgan_namecom_type_codeicb_levelicb_codeicb_name
ABBNgân hàng Thương mại Cổ phần An BìnhNH48355Ngân hàng
ACBNgân hàng Thương mại Cổ phần Á ChâuNH48355Ngân hàng
BABNgân hàng Thương mại Cổ phần Bắc ÁNH48355Ngân hàng

4. Phân ngành — Reference().industry

Phân ngành ICB lấy từ nguồn vci và mở mọi cấp.

4.1 Bảng ngành ICB — list()

Python
ref.industry.list(lang="vi", source=None)
Tham sốKiểuMặc địnhÝ nghĩa
langstr"vi""vi" hoặc "en"; tên ngành theo ngôn ngữ này nằm ở cột icb_name
sourcestrNone (vci)"vci"

Cột: icb_code, icb_name, icb_level. 177 ngành.

icb_codeicb_name (vi)icb_name (en)icb_level
0001Dầu khíOil & Gas1
0500Dầu khíOil & Gas2
0530Sản xuất Dầu khíOil & Gas Producers3

Bản 3.x với lang="en" trả bảng không có cột tên; thế hệ 5 đặt tên tiếng Anh vào icb_name.

4.2 Mã theo ngành — sectors()

Python
ref.industry.sectors(icb_code=None, lang="vi", source=None)

Cùng tham số và cùng bảng với equity.list_by_industry() (mục 3.4).

4.3 Phân ngành riêng của KBS và CafeF

Ngoài ICB, hai nguồn có cách phân ngành riêng. Chúng nằm ở lớp tương thích, chỉ dành cho cấp tài trợ, và không phải ICB: tên ngành giữ nguyên như nguồn đăng, mã ngành không so được với icb_code.

Python
from vnstock.explorer.kbs import Listing as KBSListing
from vnstock.explorer.cafef import Listing as CafeFListing

KBSListing().industries()               # 25 ngành của KBS
KBSListing().symbols_by_industries()    # mã kèm ngành KBS, chỉ HOSE và HNX
CafeFListing().industries()             # ngành của CafeF
CafeFListing().symbols_by_industries()  # mã kèm ngành CafeF

Bảng ngành có cột classification ("kbs" hoặc "cafef"), industry_code, industry_name, industry_level, parent_code. Bảng mã theo ngành có symbol, organ_name, classification, industry_level, industry_code, industry_name. Reference().industry.list(source="kbs") không lấy được bảng này: hàm báo UnsupportedError vì chỉ vci phục vụ ICB. Xem thêm Lớp tương thích.


5. Chỉ số — Reference().index

HàmMặc địnhsource= nhận
list()builtin (bảng có sẵn trong thư viện)builtin
index(s).info(), .description()builtin—
groups()kbs—
members(), list_by_group(), index(s).members()kbskbs, vci

5.1 Danh mục chỉ số — list()

Python
ref.index.list(source=None)

Cột: symbol, name, description, full_name, group, index_id, sector_id. 29 chỉ số, thuộc các nhóm HOSE Indices, Sector Indices, Investment Indices, VNX Indices, HNX Indices, UPCOM Indices. Danh mục không có VNINDEX, HNXINDEX, UPCOMINDEX.

symbolnamedescriptionfull_namegroupindex_id
VN30VN3030 cổ phiếu vốn hóa lớn nhất & thanh khoản tốt nhất HOSEVN30 IndexHOSE Indices5.0
VNMIDVNMIDMid-Cap Index - nhóm cổ phiếu vốn hóa trung bìnhVNMidCap IndexHOSE Indices6.0
VNSMLVNSMLSmall-Cap Index - nhóm cổ phiếu vốn hóa nhỏVNSmallCap IndexHOSE Indices7.0

Lọc theo nhóm bằng IndexGroup, kiểu liệt kê có ở gốc gói. IndexGroup có bốn giá trị: HOSE, SECTOR, INVESTMENT, VNX; thuộc tính full_name trả đúng chuỗi ở cột group.

Python
from vnstock import IndexGroup

indices = ref.index.list()
sector = indices[indices["group"] == IndexGroup.SECTOR.full_name]   # "Sector Indices", 10 chỉ số

IndexGroup kế thừa str, nên IndexGroup.HOSE truyền thẳng được vào chỗ nhận chuỗi, ví dụ ref.equity.list_by_group(IndexGroup.HOSE) giống list_by_group("HOSE").

5.2 Một chỉ số — index(symbol).info(), .description()

Python
ref.index("VN30").info()          # một dòng, cùng cột với list()
ref.index("VN30").description()   # chuỗi: "30 cổ phiếu vốn hóa lớn nhất & thanh khoản tốt nhất HOSE"

Chỉ số không có trong danh mục (kể cả VNINDEX) thì info() trả bảng rỗng và description() trả None.

5.3 Nhóm mã — groups()

Python
ref.index.groups()

Các nhóm dùng được cho list_by_group() và members(). Cột: group_name, group_code, category, description. 16 nhóm: BOND, CW, ETF, FU_INDEX, HNX, HNX30, HOSE, UPCOM, VN100, VN30, VNALL, VNMidCap, VNSI, VNSmallCap, VNX50, VNXALL.

group_namegroup_codecategorydescription
BONDBONDTrái phiếuCorporate Bond - Trái phiếu doanh nghiệp niêm yết
CWCWChứng quyềnCovered Warrant - Chứng quyền phát hành bởi các tổ chức tài chính
ETFFUNDETF/QuỹExchange-Traded Fund - Quỹ chỉ số và quỹ trao đổi

5.4 Mã thành phần — members(), list_by_group()

Python
ref.index.members(group=None, source=None, *, symbol=None)
ref.index.list_by_group(group="VN30", source=None)
ref.index.by_group(group="VN30")     # tên khác
ref.index("VN30").members(source=None)
Tham sốKiểuMặc địnhÝ nghĩa
groupstr"VN30" ở list_by_group; bắt buộc ở membersMã nhóm, ví dụ "VN30", "HNX30"
symbolstrNoneTên cũ của group ở bản 4.x; members(symbol="VN30") vẫn chạy
sourcestrNone (kbs)"kbs" hoặc "vci"

Một cột symbol. VNINDEX, HNXINDEX, UPCOMINDEX được đọc là cả sàn HOSE, HNX, UPCOM (ngày chạy thử VNINDEX trả 406 mã). Thiếu mã nhóm ở members() thì báo TypeError.

Python
ref.index.members("VN30")     # 30 mã: ACB, BID, BSR, ...

6. ETF, hợp đồng tương lai, chứng quyền, trái phiếu

6.1 Danh sách — mọi cấp

Python
ref.etf.list(source=None)          # mặc định kbs; nhận kbs, vci
ref.futures.list(source=None)      # mặc định vci; nhận vci, kbs
ref.warrant.list(source=None)      # mặc định vci; nhận vci, kbs
ref.bond.list(bond_type="all")     # không có source

Ba hàm đầu trả một cột symbol. Số mã khác nhau theo nguồn: ngày chạy thử, ETF có 24 mã ở kbs và 21 mã ở vci; hợp đồng tương lai có 8 mã ở vci và 14 mã ở kbs; chứng quyền có 339 mã ở vci.

Mã hợp đồng tương lai trong danh sách có dạng mã KRX, ví dụ 41I1GA000, không phải dạng VN30F2611.

bond.list():

Tham sốKiểuMặc địnhÝ nghĩa
bond_typestr"all""all", "corporate" (trái phiếu doanh nghiệp, nguồn kbs) hoặc "government" (trái phiếu chính phủ, nguồn vci). Giá trị khác báo UnsupportedError

Với "all", bảng có hai cột symbol, type (corporate hoặc government). Ngày chạy thử: 97 mã doanh nghiệp, 6 mã chính phủ. Nếu phần chính phủ không lấy được, hàm vẫn trả phần doanh nghiệp kèm cảnh báo UserWarning; gọi bond.list("government") để xem lỗi đầy đủ. Phần doanh nghiệp lỗi thì cả lời gọi báo lỗi.

symboltype
BAB124016corporate
BAB124025corporate
41B5GC000government

6.2 Một hợp đồng tương lai — futures(symbol).info() (Tài trợ)

Python
ref.futures("41I1GA000").info()

Nguồn kbs, không có tham số source. Một dòng. Cột: symbol, full_name, underlying_symbol, exchange, first_trading_date, last_trading_date, reference_price, ceiling_price, floor_price, open_price, high_price, low_price, close_price (điểm chỉ số), open_interest, basis, foreign_buy_volume, foreign_sell_volume.

symbolfull_nameunderlying_symbolexchangelast_trading_datereference_priceclose_priceopen_interest
41I1GA000VN30 Index Futures 102026VN30HNX2026-10-151880.21877.234255

Mã hợp đồng nhận cả dạng viết tắt quen thuộc (VN30F1M, VN30F2M) lẫn mã định danh KRX 9 ký tự lấy từ ref.futures.list(). Thư viện tự động chuyển đổi mã sang chuẩn của nguồn kbs.

6.3 Một chứng quyền — warrant(symbol).info() (Tài trợ)

Python
ref.warrant("CACB2515").info()

Nguồn kbs. Một dòng. Cột: symbol, issuer, underlying_symbol, exercise_price, exercise_ratio (chuỗi, ví dụ 1.7245:1), first_trading_date, last_trading_date (chuỗi DD/MM/YYYY), listed_share, exchange, warrant_type, underlying_price, reference_price, ceiling_price, floor_price, match_price (nghìn đồng), total_volume, foreign_room, foreign_buy_volume, foreign_sell_volume, break_even_point, break_even_point_diff, intrinsic_value.

symbolissuerunderlying_symbolexercise_priceexercise_ratiolast_trading_datewarrant_typematch_price
CACB2515VNDACB27.421.7245:104/03/2027Call0.24

6.4 Một trái phiếu — bond(symbol).info() (Tài trợ)

Python
ref.bond("BAB124016").info()

Nguồn kbs. Một dòng, gồm biến động giá và chỉ số tài chính của tổ chức phát hành theo kỳ báo cáo gần nhất. Cột: symbol, change_1m, change_1y, current_ratio, debt_ratio, roe, roa, pe, pb, report_period.

symbolchange_1mchange_1ycurrent_ratiodebt_ratioroeroareport_period
BAB1240160.00.07.019.681.561.4312/2025

Lấy mã từ ref.bond.list("corporate").


7. Lịch sự kiện — Reference().events

7.1 Sự kiện doanh nghiệp toàn thị trường — calendar()

Python
ref.events.calendar(start=None, end=None, event_type=None, page=0, limit=20000)
Tham sốKiểuMặc địnhÝ nghĩa
startstrNone (hôm nay)Ngày bắt đầu, YYYY-MM-DD
endstrNone (hôm nay)Ngày kết thúc, YYYY-MM-DD
event_typestrNone"dividend" (cổ tức, phát hành), "insider" (giao dịch nội bộ), "agm" (đại hội cổ đông), "others", hoặc mã sự kiện của nguồn. Để trống thì lấy mọi loại
pageint0Giữ cho khớp chữ ký cũ, không dùng
limitint20000Số dòng tối đa; 20000 cũng là trần

Nguồn vci, không có tham số source. Cột: symbol, event_name, event_title, ex_right_date, record_date, payout_date, value (đồng mỗi cổ phiếu), ratio, organ_name, public_date, issue_date, event_type (mã sự kiện như DIV, ISS, AIS, DDIND, DDINS, EGME, AGME).

Python
ref.events.calendar(start="2026-10-05", end="2026-10-09", event_type="dividend")
symbolevent_nameevent_titlevalueratiopublic_dateevent_type
STWTrả cổ tức bằng tiền mặtTrả cổ tức bằng tiền mặt - Cả năm 2025 - 313 VND313.00.03132026-10-09DIV
ANVTrả cổ tức bằng tiền mặtTrả cổ tức bằng tiền mặt - Đợt 1 2026 - 500 VND500.00.05002026-10-09DIV
ANVTrả cổ tức bằng tiền mặtTrả cổ tức bằng tiền mặt - Đợt 2 2025 - 500 VND500.00.05002026-10-09DIV

7.2 Lịch thị trường — market()

Python
ref.events.market(start=None, end=None, event_type=None)
Tham sốKiểuMặc địnhÝ nghĩa
startstrNoneGiữ sự kiện từ ngày này, YYYY-MM-DD
endstrNoneGiữ sự kiện đến hết ngày này
event_typestrNoneChỉ giữ một loại, ví dụ "Holiday", "Compensation"

Nguồn builtin: bảng có sẵn trong thư viện, không gửi truy vấn. Cột: date, event_name, event_type, duration. Cả bảng có 355 dòng từ năm 2000; năm 2026 có 15 dòng.

dateevent_nameevent_type
2026-01-01Tết Dương LịchHoliday
2026-01-02Tết Dương Lịch (Nghỉ bù/Hoán đổi)Compensation
2026-02-16Tết Nguyên ĐánHoliday

8. Trạng thái phiên — Reference().market.status()

Python
ref.market.status()

Thư viện tính trạng thái phiên ngay trên máy từ lịch giao dịch và lịch nghỉ có sẵn, nên không gửi truy vấn và mọi cấp gọi được. source="mas" hỏi nguồn MAS, dành cho cấp tài trợ. Cột: exchange, asset_type, status, timestamp, last_trading_date.

exchangeasset_typestatustimestamplast_trading_date
HOSEEQUITYCLOSED2026-10-10 16:082026-10-09
HNXEQUITYCLOSED2026-10-10 16:082026-10-09
UPCOMEQUITYCLOSED2026-10-10 16:082026-10-09

9. Khác với bản 4.x và 3.x

Bạn từng dùngỞ thế hệ 5
from vnstock_data import Referencefrom vnstock import Reference, cùng tên hàm
ref.futures().list(), ref.bond().list() (3.x)Vẫn chạy; viết gọn ref.futures.list(), ref.bond.list()
ref.index.members(symbol="VN30") (4.x)Vẫn chạy; tên mới của tham số là group
ref.index.list() có VNINDEX (4.x)Danh mục không còn VNINDEX, HNXINDEX, UPCOMINDEX; thành phần của chúng vẫn lấy được bằng members("VNINDEX")
ref.industry.list(lang="en") (3.x) trả bảng thiếu tênTên tiếng Anh nằm ở icb_name
list_by_industry tự đổi sang KBS khi chạy trên Colab (4.x)Không tự đổi nguồn theo môi trường. Nguồn lỗi thì bạn nhận ngoại lệ
ref.search.symbol(...)Chuyển sang trang Tài sản quốc tế
Fund(), ref.fundXem Dữ liệu quỹ mở, cấp tài trợ

Bảng chuyển đổi đầy đủ: Chuyển từ vnstock 4.x, Chuyển từ vnstock_data 3.x.


10. Đã ngừng

Các tên dưới đây vẫn còn để code cũ tìm thấy, nhưng gọi là báo UnsupportedError mã VNSTOCK_FEATURE_REMOVED.

TênTừ bảnDùng thay
company(s).news()5.0.0a2Không có hàm thay trong vnstock. Sự kiện của công ty: company(s).events()
company(s).article_detail()5.0.0a2Không có
company(s).reports() (báo cáo phân tích của công ty chứng khoán)5.0.0a2Không có. Số liệu doanh nghiệp: Fundamental().equity(s).income_statement()
Reference().derivatives()5.0.0a6Reference().futures(s), Reference().warrant(s)

company(s).trading_stats() và company(s).ratio_summary() còn tên trong thư viện nhưng chưa có dữ liệu ở bản này: gọi là báo UnsupportedError mã VNSTOCK_ROUTE_NOT_FROZEN. Thống kê giao dịch nằm ở Dữ liệu thị trường, chỉ số tài chính ở Dữ liệu cơ bản.

Lỗi và cách bắt: xem Xử lý lỗi. Nguồn mặc định của mọi hàm: xem Nguồn dữ liệu.