Skip to main content
GET
cURL

Authorizations

X-FH-APIKEY
string
header
required

API key dài hạn của client. Cấu hình 1 lần lúc khởi tạo; có thể wire thẳng vào static setter của SDK tự-gen. Đi kèm với FINHAY_API_SECRET — secret này chỉ dùng ở phía client để tính X-FH-SIGNATURE, không bao giờ gửi qua mạng.

Query Parameters

exchange
enum<string>

Lọc theo sàn niêm yết.

Available options:
HOSE,
HNX,
UPCOM
Example:

"HOSE"

index
enum<string>

Lọc theo rổ chỉ số.

Available options:
VN30,
HNX30
Example:

"VN30"

sector
enum<string>

Lọc theo slug ngành cấp 1.

Available options:
technology,
telecommunications,
healthcare,
financials,
real-estate,
consumer-discretionary,
consumer-staples,
industrials,
basic-materials,
energy,
utilities
Example:

"financials"

window
enum<string>
default:1D

Cửa sổ luỹ kế cho các field dòng tiền (foreign_, proprietary_, volume, value), kết thúc ở phiên hiện tại. Các field trạng thái (pe, market_cap…) không chịu ảnh hưởng. Mặc định 1D. Không dùng chung với date.

Available options:
1D,
1W,
1M,
3M,
6M,
1Y,
YTD
Example:

"YTD"

date
string<date>

Quét đúng một phiên quá khứ đã đóng (YYYY-MM-DD, phải nhỏ hơn ngày hôm nay — phiên đang chạy dùng window=1D). Không dùng chung với window. Khi có date, các field chỉ tồn tại ở thời điểm hiện tại (market_cap, shares_outstanding, pe, pb, eps, value, ma50, ma200) trả về null, và sort / filter theo chúng bị từ chối 400.

Example:

"2026-08-05"

sort
string

Field số để sắp xếp, thêm tiền tố - cho giảm dần. VD -market_cap, foreign_net_value. Mặc định -market_cap, riêng khi dùng date mặc định là -volume. Không sắp xếp được theo ma50/ma200; khi dùng date cũng không sắp xếp được theo các field không có giá trị quá khứ (market_cap, shares_outstanding, pe, pb, eps, value).

Example:

"-foreign_net_value"

fields
string

Danh sách field cần trả về, phân tách bằng dấu phẩy. Mặc định symbol,exchange,name,price,change_percent. Field dùng trong sort/filter luôn được thêm vào. Field hợp lệ: symbol, name, exchange, sector, price, change_percent, market_cap, shares_outstanding, pe, pb, eps, volume, value, foreign_buy_value, foreign_sell_value, foreign_net_value, foreign_net_volume, foreign_room_available, foreign_room_available_pct, proprietary_buy_value, proprietary_sell_value, proprietary_net_value, proprietary_net_volume, ma50, ma200. ma50/ma200 chỉ hiển thị được qua fields — không dùng làm sort hay filter trực tiếp, chỉ làm vế phải của price_gt/price_lt.

Example:

"symbol,name,pe,market_cap"

price_gt

Chỉ lấy mã có giá hiện tại lớn hơn giá trị này. Nhận một số (vnd), hoặc ma50 / ma200 để lấy các mã đang giao dịch trên đường trung bình động của chính mã đó.

Example:

20000

price_lt

Chỉ lấy mã có giá hiện tại nhỏ hơn giá trị này. Nhận một số (vnd), hoặc ma50 / ma200 để lấy các mã đang giao dịch dưới đường trung bình động của chính mã đó.

Example:

20000

change_percent_gt
number

Chỉ lấy mã có thay đổi giá (%) lớn hơn giá trị này.

Example:

3

change_percent_lt
number

Chỉ lấy mã có thay đổi giá (%) nhỏ hơn giá trị này.

Example:

3

market_cap_gt
number

Chỉ lấy mã có vốn hoá (vnd) lớn hơn giá trị này.

Example:

1000000000000

market_cap_lt
number

Chỉ lấy mã có vốn hoá (vnd) nhỏ hơn giá trị này.

Example:

1000000000000

shares_outstanding_gt
number

Chỉ lấy mã có số cổ phiếu lưu hành lớn hơn giá trị này.

Example:

100000000

shares_outstanding_lt
number

Chỉ lấy mã có số cổ phiếu lưu hành nhỏ hơn giá trị này.

Example:

100000000

pe_gt
number

Chỉ lấy mã có p/e lớn hơn giá trị này.

Example:

15

pe_lt
number

Chỉ lấy mã có p/e nhỏ hơn giá trị này.

Example:

15

pb_gt
number

Chỉ lấy mã có p/b lớn hơn giá trị này.

Example:

2

pb_lt
number

Chỉ lấy mã có p/b nhỏ hơn giá trị này.

Example:

2

eps_gt
number

Chỉ lấy mã có eps (vnd) lớn hơn giá trị này.

Example:

3000

eps_lt
number

Chỉ lấy mã có eps (vnd) nhỏ hơn giá trị này.

Example:

3000

volume_gt
number

Chỉ lấy mã có khối lượng khớp lớn hơn giá trị này.

Example:

1000000

volume_lt
number

Chỉ lấy mã có khối lượng khớp nhỏ hơn giá trị này.

Example:

1000000

value_gt
number

Chỉ lấy mã có giá trị khớp (vnd) lớn hơn giá trị này.

Example:

50000000000

value_lt
number

Chỉ lấy mã có giá trị khớp (vnd) nhỏ hơn giá trị này.

Example:

50000000000

foreign_net_value_gt
number

Chỉ lấy mã có giá trị mua ròng khối ngoại (vnd) lớn hơn giá trị này.

Example:

0

foreign_net_value_lt
number

Chỉ lấy mã có giá trị mua ròng khối ngoại (vnd) nhỏ hơn giá trị này.

Example:

0

foreign_net_volume_gt
number

Chỉ lấy mã có khối lượng mua ròng khối ngoại trong window lớn hơn giá trị này.

Example:

0

foreign_net_volume_lt
number

Chỉ lấy mã có khối lượng mua ròng khối ngoại trong window nhỏ hơn giá trị này.

Example:

0

foreign_buy_value_gt
number

Chỉ lấy mã có giá trị khối ngoại MUA trong window (vnd) lớn hơn giá trị này. Đây là chiều mua, không phải mua ròng — mua ròng dùng foreign_net_value_gt.

Example:

10000000000

foreign_buy_value_lt
number

Chỉ lấy mã có giá trị khối ngoại MUA trong window (vnd) nhỏ hơn giá trị này.

Example:

10000000000

foreign_sell_value_gt
number

Chỉ lấy mã có giá trị khối ngoại BÁN trong window (vnd) lớn hơn giá trị này. Đây là chiều bán, không phải bán ròng — bán ròng dùng foreign_net_value_lt.

Example:

10000000000

foreign_sell_value_lt
number

Chỉ lấy mã có giá trị khối ngoại BÁN trong window (vnd) nhỏ hơn giá trị này.

Example:

10000000000

foreign_room_available_gt
number

Chỉ lấy mã có room ngoại còn lại (số cổ phiếu) lớn hơn giá trị này. Muốn so theo tỷ lệ thì dùng foreign_room_available_pct_gt.

Example:

1000000

foreign_room_available_lt
number

Chỉ lấy mã có room ngoại còn lại (số cổ phiếu) nhỏ hơn giá trị này.

Example:

1000000

foreign_room_available_pct_gt
number

Chỉ lấy mã có room ngoại còn lại (% so với trần sở hữu nước ngoài, 0–100) lớn hơn giá trị này.

Example:

50

foreign_room_available_pct_lt
number

Chỉ lấy mã có room ngoại còn lại (% so với trần sở hữu nước ngoài, 0–100) nhỏ hơn giá trị này. VD foreign_room_available_pct_lt=5 để tìm các mã gần kín room.

Example:

5

proprietary_net_value_gt
number

Chỉ lấy mã có giá trị mua ròng của tự doanh trong window (vnd) lớn hơn giá trị này. VD proprietary_net_value_gt=0 để lấy các mã tự doanh mua ròng.

Example:

0

proprietary_net_value_lt
number

Chỉ lấy mã có giá trị mua ròng của tự doanh trong window (vnd) nhỏ hơn giá trị này. VD proprietary_net_value_lt=0 để lấy các mã tự doanh bán ròng.

Example:

0

proprietary_net_volume_gt
number

Chỉ lấy mã có khối lượng mua ròng của tự doanh trong window lớn hơn giá trị này.

Example:

0

proprietary_net_volume_lt
number

Chỉ lấy mã có khối lượng mua ròng của tự doanh trong window nhỏ hơn giá trị này.

Example:

0

proprietary_buy_value_gt
number

Chỉ lấy mã có giá trị tự doanh MUA trong window (vnd) lớn hơn giá trị này. Đây là chiều mua, không phải mua ròng — mua ròng dùng proprietary_net_value_gt.

Example:

5000000000

proprietary_buy_value_lt
number

Chỉ lấy mã có giá trị tự doanh MUA trong window (vnd) nhỏ hơn giá trị này.

Example:

5000000000

proprietary_sell_value_gt
number

Chỉ lấy mã có giá trị tự doanh BÁN trong window (vnd) lớn hơn giá trị này. Đây là chiều bán, không phải bán ròng — bán ròng dùng proprietary_net_value_lt.

Example:

5000000000

proprietary_sell_value_lt
number

Chỉ lấy mã có giá trị tự doanh BÁN trong window (vnd) nhỏ hơn giá trị này.

Example:

5000000000

page
integer

Trang, bắt đầu từ 1. Mặc định 1.

Required range: x >= 1
Example:

1

page_size
integer

Số mã mỗi trang (1–50). Mặc định 20.

Required range: 1 <= x <= 50
Example:

20

Response

data.items là danh sách mã, mỗi item chỉ chứa các field được chọn qua fields.

Các field chung của envelope trong mọi response của Finhay API.

  • error_code là "0" (string) khi thành công, mã khác "0" khi lỗi.
  • message là thông điệp ngắn từ server.
data
object
required

Kết quả sàng lọc cổ phiếu, đã phân trang.

error_code
string

"0" khi thành công, khác "0" khi lỗi.

Example:

"0"

message
string

Thông điệp trạng thái dễ đọc.

Example:

"success"