Giá mục tiêu của công ty chứng khoán chính xác đến đâu?
Đối chiếu giá mục tiêu trong báo cáo CTCK với giá thực tế sau 6 hoặc 12 tháng: tỷ lệ đạt, sai số, chiều đúng sai theo từng CTCK và từng mã, đồng thuận có trọng số.
Mỗi báo cáo phân tích đều có một giá mục tiêu, nhưng hiếm ai quay lại kiểm xem giá
đó có thành hiện thực. FinLens MCP làm việc đó bằng dữ liệu: research_broker_scorecard
đối chiếu giá mục tiêu của từng báo cáo với giá đóng cửa thực tế sau 6 hoặc 12 tháng,
gộp theo công ty chứng khoán hoặc theo mã. Kết quả là số liệu mô tả quá khứ,
không phải bảng xếp hạng chất lượng tư vấn và không dự báo độ chính xác về sau.
Cách đo
Mẫu gồm các báo cáo có giá mục tiêu, phát hành trong years năm gần nhất và đã đủ
horizon_months (6 hoặc 12 tháng) để đo. Giá mục tiêu được quy về thang giá điều
chỉnh tại ngày phát hành (chia adj_ratio), báo cáo ghi theo nghìn đồng được nhân
1.000 (unit_fixed), rồi so với chuỗi giá đóng cửa đã điều chỉnh. Mỗi báo cáo cho
ra:
| Trường | Ý nghĩa |
|---|---|
hit | Có phiên đóng cửa chạm giá mục tiêu trong kỳ (giá mục tiêu cao hơn giá phát hành: đóng cửa ≥ mục tiêu; thấp hơn: đóng cửa ≤ mục tiêu) |
days_to_hit | Số ngày lịch từ phát hành tới phiên đầu tiên đạt mục tiêu |
error_pct | (giá cuối kỳ − giá mục tiêu) / giá mục tiêu, %; âm là giá cuối kỳ thấp hơn mục tiêu |
upside_claimed_pct | Mức tăng đã hứa: giá mục tiêu / giá ngày phát hành − 1 |
realized_pct | Mức tăng thực tế: giá cuối kỳ / giá ngày phát hành − 1 |
direction_correct | Hai số trên cùng dấu |
Gộp theo nhóm, mỗi hàng có n, hit_rate, median_error_pct, mean_abs_error_pct,
direction_accuracy, median_upside_claimed_pct, median_realized_pct,
optimistic_share (tỷ lệ báo cáo hứa upside trên 20%), buy_rating_share,
sell_rating_share và n_distinct. Hàng total là toàn phạm vi lọc, kể cả các
nhóm bị ẩn vì ít hơn min_reports báo cáo.
CTCK nào hay đạt giá mục tiêu?
Trong 3 năm qua, công ty chứng khoán nào có tỷ lệ đạt giá mục tiêu sau 12 tháng cao nhất? Họ thường hứa upside bao nhiêu?
→ research_broker_scorecard: horizon_months=12, years=3 — rows xếp theo hit_rate giảm dần, min_reports mặc định 5
Đo lại với kỳ 6 tháng thì tỷ lệ đạt và sai số thay đổi thế nào?
→ research_broker_scorecard: horizon_months=6
Ví dụ đo ngày 14/11/2026 với kỳ 12 tháng: mẫu gồm 604 báo cáo trên 124 mã. Các
trường n_too_recent, n_no_price, n_excluded và n_groups_hidden cho biết bao
nhiêu báo cáo chưa đủ kỳ đo, thiếu giá, bị loại vì giá mục tiêu bất thường, hay bị
ẩn vì nhóm quá nhỏ. Số liệu là ví dụ tại một thời điểm, không phải cam kết.
Các báo cáo về mã này đã đúng đến đâu?
Lọc theo ticker để xem từng CTCK đã viết về mã đó và bảng reports tối đa 30 báo
cáo mới nhất kèm kết quả đo. min_reports khi lọc theo mã mặc định là 1, nên mọi
CTCK có báo cáo đo được đều hiện.
Các báo cáo về HPG hai năm qua: CTCK nào đạt giá mục tiêu, báo cáo nào lệch nhiều nhất, giá mục tiêu đã quy về thang hiện tại là bao nhiêu?
→ research_broker_scorecard: ticker='HPG', years=2 — đọc rows theo CTCK và reports[]
SSI viết về những mã nào trong 3 năm qua, mã nào họ đoán đúng chiều nhiều nhất?
→ research_broker_scorecard: broker='SSI' — rows đổi sang từng mã (group_by='ticker')
Tên broker dùng đúng như trường source của các công cụ research_*, ví dụ
'SSI' hay 'Mirae Asset'. Mỗi báo cáo trong reports có report_id để mở toàn văn
bằng research_read_report.
Đồng thuận có trọng số
research_get_analyst_consensus giữ nguyên target_median (trung vị đơn giản, một
phiếu mỗi CTCK) và có thêm weighted_target: trung vị có trọng số của cùng các
phiếu trong by_source. Trọng số của một CTCK bằng hit_rate 12 tháng toàn thị
trường của CTCK đó nhưng không dưới 0,2 khi CTCK có từ 5 báo cáo đo được, và bằng
0,5 khi chưa đủ lịch sử. weights_used liệt kê trọng số từng CTCK. weighted_target
là số tham khảo đặt cạnh target_median, không thay thế nó.
Đồng thuận giá mục tiêu của FPT: trung vị thường và trung vị có trọng số theo lịch sử đạt mục tiêu của từng CTCK lệch nhau bao nhiêu?
→ research_get_analyst_consensus: ticker='FPT' — so target_median với weighted_target, xem weights_used
Khi mẫu đối chiếu CTCK tạm thời chưa dựng được, công cụ vẫn trả đồng thuận thường
và ghi chú trong note; weighted_target khi đó bỏ trống.
Số đo quá khứ trên mẫu nghiêng về báo cáo tăng giá
Phần lớn báo cáo phân tích đưa giá mục tiêu cao hơn giá hiện hành, nên hit_rate của
mọi CTCK đều hưởng lợi trong giai đoạn thị trường tăng và chịu thiệt trong giai đoạn
giảm. So các CTCK trong cùng một mẫu, cùng kỳ đo mới có ý nghĩa; so hit_rate
giữa hai giai đoạn khác nhau thì không. Kết quả không phải đánh giá chất lượng tư
vấn, không dự báo độ chính xác của báo cáo sắp tới, và không phải khuyến nghị đầu tư.
Bảng công cụ
| Công cụ | Việc gì | Tham số chính |
|---|---|---|
research_broker_scorecard | Đối chiếu giá mục tiêu với giá thực tế sau 6 hoặc 12 tháng, gộp theo CTCK hoặc theo mã; kèm từng báo cáo khi lọc | ticker hoặc broker, horizon_months (6, 12), years, min_reports |
research_get_analyst_consensus | Đồng thuận một phiếu mỗi CTCK: target_median, phân bố khuyến nghị, by_source, và weighted_target kèm weights_used | ticker, limit |
Bài liên quan
Báo cáo CTCK & đồng thuận
Tìm, đọc và tải báo cáo phân tích; đồng thuận giá mục tiêu theo mã.
Tổng hợp một lệnh
Bức tranh một mã kèm đồng thuận CTCK, và CTCK nào vừa đổi giá mục tiêu.
Mùa KQKD & định giá
Cổ phiếu đắt hay rẻ so ngành, so lịch sử và so cả thị trường.
Câu hỏi thường gặp
Giá mục tiêu trong báo cáo của công ty chứng khoán có đáng tin không?
Không có câu trả lời chung cho mọi báo cáo, nhưng có thể đo trên dữ liệu quá khứ. Công cụ research_broker_scorecard của FinLens MCP lấy các báo cáo có giá mục tiêu phát hành trong một số năm, chờ đủ 6 hoặc 12 tháng, rồi so với chuỗi giá đóng cửa đã điều chỉnh. Kết quả cho từng CTCK: hit_rate là tỷ lệ báo cáo có phiên đóng cửa chạm giá mục tiêu trong kỳ, median_error_pct là giá cuối kỳ lệch giá mục tiêu bao nhiêu phần trăm, direction_accuracy là tỷ lệ đoán đúng chiều. Mẫu nghiêng về báo cáo tăng giá; đây là số mô tả quá khứ, không đánh giá chất lượng tư vấn, không dự báo tương lai.
Công ty chứng khoán nào có tỷ lệ đạt giá mục tiêu cao nhất?
Hỏi trợ lý AI đã kết nối FinLens MCP câu đó, công cụ research_broker_scorecard sẽ trả bảng rows xếp theo hit_rate giảm dần, mỗi hàng một CTCK với số báo cáo đo được, sai số trung vị, chiều đúng, upside đã hứa trung vị, tỷ lệ báo cáo hứa upside trên 20% và tỷ lệ nhãn mua bán. Nhóm có ít hơn min_reports báo cáo bị ẩn để tránh kết luận từ mẫu quá nhỏ, mặc định 5 báo cáo khi xét toàn thị trường. Ví dụ đo ngày 14/11/2026 với kỳ 12 tháng: mẫu gồm 604 báo cáo trên 124 mã. Thứ hạng chỉ phản ánh mẫu quá khứ đó.
Các báo cáo về HPG trong hai năm qua có đạt giá mục tiêu không?
Lọc research_broker_scorecard theo ticker='HPG' sẽ trả bảng theo từng CTCK đã viết về HPG, kèm danh sách reports tối đa 30 báo cáo mới nhất: ngày phát hành, nhãn khuyến nghị nguyên văn, giá mục tiêu đã quy về thang giá điều chỉnh hiện tại và số in trong báo cáo gốc, giá ngày phát hành, giá đóng cửa cao nhất và thấp nhất trong kỳ đo, giá cuối kỳ, có đạt mục tiêu hay không, số ngày tới khi đạt, và sai số. Báo cáo mới hơn kỳ đo chưa đủ thời gian nên không nằm trong mẫu, số lượng đó ghi ở n_too_recent khi xét toàn thị trường.
Đồng thuận có trọng số weighted_target khác gì giá mục tiêu trung vị?
Trong research_get_analyst_consensus của FinLens MCP, target_median là trung vị đơn giản của giá mục tiêu mỗi CTCK một phiếu. weighted_target là trung vị có trọng số của cùng các phiếu đó: trọng số của một CTCK bằng hit_rate 12 tháng toàn thị trường của CTCK đó nhưng không dưới 0,2 khi CTCK có từ 5 báo cáo đo được, và bằng 0,5 khi chưa đủ lịch sử. Danh sách weights_used ghi rõ trọng số đã dùng cho từng CTCK. weighted_target chỉ là số tham khảo đặt cạnh target_median, không thay thế nó, và không phải khuyến nghị.
Vì sao giá mục tiêu trong báo cáo cũ trông lệch hẳn so với giá hiện tại?
Vì giá cổ phiếu được điều chỉnh khi chia cổ tức, thưởng cổ phiếu hay phát hành thêm, còn giá mục tiêu in trong báo cáo thì không. FinLens MCP quy giá mục tiêu về thang giá điều chỉnh hiện tại bằng hệ số adj_ratio của phiên gần nhất trước ngày phát hành, và giữ số gốc ở target_price_reported để đối chiếu. Báo cáo ghi giá theo nghìn đồng được nhân 1.000 và đánh dấu unit_fixed. Nhờ đó hit và error_pct trong research_broker_scorecard so đúng thang với chuỗi giá đóng cửa đã điều chỉnh.
Cập nhật lần cuối