Skip to content

Spec: Endpoint

Overview

This document describe the PLuto endpoint specification and methodology

Endpoint

The endpoints of the service:

Endpoint HTTP Method Description
Group Security
/stock/detail GET Get security profile
/stock/eod GET Get end-of-day quote of security
/stock/adjust GET Get bucket security addjustment on ex-dividend-date
Group Application
/service/health GET Get application service metadata and health check

Detail

Endpoint: /stock/detail

Identifier

Path
GET /stock/detail

Response

Column Type Description
symbol string An abbreviation assigned to a security for trading purposes
name_vn string The long company name in Vietnamese
name_en string The long company name in English
market string The trading platform that the symbol has been traded.
index string The index that the symbol has been included at the last period
type string The financial instrument type of symbol
sector string The GICS sector code
sectorname_vn string The GICS sector name in Vietnamese
sectorname_en string The GICS sector name in English
open float The open price in last trading
high float The high price in last trading
low float The low price in last trading
price float The last price in last trading
volume bigint ---
change float ---
per_change float ---
volume_avg50 bigint ---
low_52w float ---
high_52w float ---
marketcap float ---
rank_avg5 float Retired
rank float Retired
price_signal float Retired
eps float The T12M of EPS
pe float ---
pb float ---
revenue bigint ---
profit bigint ---
asset bigint ---
roe float ---
beta float ---
outstandingshares bigint The outstanding share
issuedshares bigint The listed issued share
floatshares bigint ---
freefloat float ---
devidend float ---
devidend_yeild float ---
listeddate date ---
last_trade date The last trading date on that stock
lastyear_trade date ---
lastyear_price float ---
oneyear_change float ---
avg_price_1w float ---
avg_volume_1w bigint ---
perf_1w float Performance of security in 1-Week

Computation Method

Note: the example is for BID at the run time of 2023-07-24. The updated date are 2023-07-24

Node: last_trade

The last trading date of that symbol

Example: 2023-07-24

Node: price

Last price of last trading per symbol

Example: 46.8

Node: eps

EPS has been calculated by:

\[ EPS={\frac {\sum_{Q-4}^Q (Net Profit After Tax - Minority shareholder)} {Weighted Outstanding Share}} \]

Example on BID:

Period Net profit atttributable to the equity holders of the Bank Numerator (*)
2023-Q1 5_468_480
2022-Q4 4_186_385
2022-Q3 5_277_956
2022-Q2 5_215_695
Total 20_148_516

Unit: million dong

The outstanding shares updated to 2023-Q1 are: Oustanding Share = 5_058_523_816

Note: This is weighted outstanding share

So: denominator = 5_058_523_816

So the EPS = Numerator / denominator = 20_148_516 * 10^6 / 5_058_523_816 = 3_983

Node: pe

\[ P/E ={\frac {Last Price} {EPS}} \]

Example:

The P/E at 2023-07-24 are 46.8 * 10^3 / 3_983 = 11.75

Node: pb

\[ P/B = {\frac {Last Price} {Book Value per share (BVPS)}} \]

Example:

The P/B at 2023-07-24 are 46.8 * 10^3 / 21_716 = 2.15

Node: devidend_yeild

\[ Dividend Yield = {\frac {Last Price} {Trailing 12 month of Cash Dividend}} \]

Example:

The T12M of BID has cash dividend at 200 VND/stock

So the \(dividend yield = ( 200 / (46.8 * 10^3) ) / 100 = 0.427 %\)

Node: beta

Beta of 6 months based on trading-date with has data available more than 20 trading days

For detail calculatation Metric: Beta

Node: marketcap

Market capitalization has been calculated by:

\[ Market Capitalization={{Outstanding Share} * {Last Price}} \]

Example:

\[ Market cap = (5058523816 * 46.8 * 10^3) = 236738 (billion dong) \]

Endpoint: /profile/

Related to endpoint /stock/detail