Get free API key
Docs menuexpand_more
travel_exploreTry in the API Viewer

Guides

Endpoints

search
appsAll APIs
functionHow metrics are calculated
← Docs

Docs

How metrics are calculated

Definitions of 69 calculated or normalized values returned by ZENITH Code: formula, inputs and sources, period basis, unit, when they are null, and which endpoints return them, as implemented on October 20, 2026. Every ratio and percentage in the API is a 0–1 decimal (0.25 = 25%; a dividend yield is 0.0323 in the API and 3.23% on screen).

Basis of each definition

  • Computed by the API · verifiedComputed on the fly by the ZENITH Code API; the formula was checked against the API code.
  • Computed by the data pipeline · verifiedComputed and stored by the data pipeline that ingests filings and prices; the API returns the stored value. Checked against the pipeline code and its definitions.
  • External service valueReturned as computed by an external service; the formula details have not been verified.
  • Standard definition (unverified)The standard definition; implementation details have not been verified yet.

Conventions (periods, units, adjustments)

Ratio units (0–1 decimals)

Computed by the API · verified

比率の単位(0〜1 の小数)

Every ratio and percentage is returned as a 0–1 decimal (0.25 = 25%), including margins, ROE, yields, price changes, ownership ratios and dividend change rates. For example, a dividend yield is 0.0323 in the API and 3.23% on screen.

Formula
percent = API value × 100
Inputs and source
—
Period basis
—
Unit
All ratios and percentages are 0–1 decimals; PER, PBR and similar are multiples; amounts and per-share values are in JPY; share counts are in shares
Edge cases and nulls
  • Values are not rounded for display; choose the number of digits on your side.

Period basis (full year, year to date, TTM)

Computed by the data pipeline · verified

期の基準(通期・四半期累計・直近 12 か月)

fiscalPeriod is the period-end month (YYYY-MM), and period is Q1–Q3 or FY (full year). Q2 and Q3 income and cash-flow values are cumulative from the start of the fiscal year; single-quarter values are not returned.

Formula
TTM (trailing twelve months) = current year to date + prior full year − prior-year same-quarter year to date. FY rows use their own value (annualized when the period is not 12 months).
Inputs and source
Per-period financials merged from kessan tanshin (earnings summaries, via TDnet) and annual securities reports (via EDINET)
Period basis
Per row (fiscalPeriod × period)
Unit
fiscalPeriodDays is in days (Q1 ≈ 90, Q2 ≈ 182, Q3 ≈ 273, a 12-month year ≈ 365, a J-REIT half year ≈ 182)
Edge cases and nulls
  • TTM is null unless both the prior full year (within 400 days, 12-month period) and the prior-year same quarter (300–430 days earlier) are available.
  • Japanese quarterly filings usually have no cash-flow statement, so most Q1 and Q3 cash-flow values are null. This follows the disclosure rules; it is not missing data.
  • Sources are given per category (PL, BS, CF, Summary) in provenance, not per column (source is tdnet or edinet).
Response fields
fiscalPeriodperiodfiscalPeriodDays
Endpoints
/stable/income-statement/stable/balance-sheet-statement/stable/cash-flow-statement/stable/key-metrics/stable/earnings-forecast/stable/sga-breakdown

Stock split adjustment

Computed by the data pipeline · verified

株式分割の調整

Per-share values and prices are also returned restated to the current share count, so periods before and after splits or consolidations are comparable. A factor of 1 means no adjustment.

Formula
Adjusted EPS = EPS × splitAdjustmentFactor; adjusted BPS and dividends use the same factor. Prices use the adjusted close (adjustedClose).
Inputs and source
Split records and exchange data (daily prices)
Period basis
Current share basis
Unit
Factor (×)
Edge cases and nulls
  • eps, bps and the dividend rawAmount are as disclosed and not split-adjusted. Use adjustedEps, adjustedBps and amount when comparing across periods.
Response fields
splitAdjustmentFactoradjustedClose
Endpoints
/stable/key-metrics/stable/dividends/stable/historical-price-eod/stable/splits/stable/valuation-history/stable/market-cap-history

How null is used

Computed by the data pipeline · verified

null の扱い

Values that cannot be computed are null, never zero-filled. In key-metrics, metricNullReasons may give the reason (for example, insufficient_prices:200).

Formula
—
Inputs and source
Reason codes recorded by the data pipeline
Period basis
—
Unit
—
Edge cases and nulls
  • A zero or negative denominator (PER of a loss-making company, ROE with negative equity, and so on) gives null.
  • No value is produced from too few prices or periods. Nothing is estimated or interpolated.
Response fields
metricNullReasons
Endpoints
/stable/key-metrics

Profitability

ROE (return on equity)

Computed by the data pipeline · verified

ROE(自己資本利益率)

Net income attributable to owners of the parent divided by average equity (opening and closing). For example, 0.098 in the API is 9.8% on screen.

Formula
ROE = net income × annualization factor ÷ average equity, where average equity = (equity at the same period a year earlier + closing equity) ÷ 2 and equity = net assets − non-controlling interests − share subscription rights (net assets if these are unavailable).
Inputs and source
Net income (attributable to owners of the parent), net assets and non-controlling interests, from kessan tanshin and annual securities reports
Period basis
Per row. The annualization factor is 365 ÷ days for periods of 120–329 days (Q2, Q3, half-year filers) and 1 otherwise (Q1 is not annualized).
Unit
0–1 decimal (0.12 in the API, 12% on screen)
Edge cases and nulls
  • Null when average equity is zero or negative (negative equity).
  • If equity a year earlier is not found (nothing 9–18 months back, or ≤ 0), closing equity alone is used.
  • roe in screener, peers and similar endpoints is the latest full-year value. Industry statistics and rankings drop values above 1 (100%) as outliers; the screener filter does not.
Response fields
roe
Endpoints
/stable/key-metrics/stable/profile/stable/screener/stable/screener-presets/stable/rankings/stable/peers/stable/industry-benchmarks

ROA (return on assets)

Computed by the data pipeline · verified

ROA(総資産利益率)

Net income divided by average total assets (opening and closing), returned as a 0–1 decimal.

Formula
ROA = net income × annualization factor ÷ average total assets (same averaging and annualization rules as ROE)
Inputs and source
Net income (attributable to owners of the parent) and total assets
Period basis
Per row (as for ROE)
Unit
0–1 decimal (0.12 in the API, 12% on screen)
Edge cases and nulls
  • Null when average total assets is zero or negative.
  • Industry statistics exclude values above 1 as outliers.
Response fields
roa
Endpoints
/stable/key-metrics/stable/screener/stable/rankings/stable/peers/stable/industry-benchmarks

ROE and ROA (TTM)

Computed by the data pipeline · verified

ROE・ROA(直近 12 か月)

Trailing-twelve-month (TTM) net income divided by average equity (average total assets for ROA). No annualization is applied.

Formula
roeTtm = TTM net income ÷ average equity; roaTtm = TTM net income ÷ average total assets
Inputs and source
As for ROE and ROA; see “Period basis” for how TTM is built
Period basis
Trailing twelve months (TTM)
Unit
0–1 decimal (0.12 in the API, 12% on screen)
Edge cases and nulls
  • Null when TTM cannot be built (prior-period values are missing) or the denominator is zero or negative.
Response fields
roeTtmroaTtm
Endpoints
/stable/key-metrics

Pre-tax return on assets (as disclosed)

Computed by the data pipeline · verified

総資産税引前利益率(開示値)

Returns the value the company reports in the kessan tanshin summary, as disclosed.

Formula
Not computed (as disclosed)
Inputs and source
Kessan tanshin summary (Summary in financial-statement-full)
Period basis
As disclosed for the full year
Unit
Assumed to be a 0–1 decimal (the unit has not yet been checked against real data)
Edge cases and nulls
  • Null when the company does not disclose it.
Response fields
roaPretax
Endpoints
/stable/key-metrics

ROIC (return on invested capital)

Computed by the data pipeline · verified

ROIC(投下資本利益率)

After-tax operating income divided by invested capital (interest-bearing debt + equity + non-controlling interests). A flat 30% tax rate is assumed. Cash is not subtracted.

Formula
ROIC = operating income × (1 − 30% tax rate) × annualization factor ÷ invested capital, where invested capital = interest-bearing debt + equity + non-controlling interests (average of opening and closing, capped at net assets).
Inputs and source
Operating income (PL); interest-bearing debt, equity and non-controlling interests (BS)
Period basis
Per row. The annualization factor is 365 ÷ days for periods of 120–329 days (Q2, Q3, half-year filers) and 1 otherwise (Q1 is not annualized).
Unit
0–1 decimal (0.12 in the API, 12% on screen)
Edge cases and nulls
  • Because cash is not subtracted, companies holding a lot of cash show a lower ROIC.
  • Null when invested capital is zero or negative.
  • For companies with a financial-services segment, the value is null or covers only the non-financial part.
Response fields
roic
Endpoints
/stable/key-metrics

Gross margin

Computed by the data pipeline · verified

売上総利益率

Gross profit divided by revenue, returned as a 0–1 decimal.

Formula
Gross margin = gross profit ÷ revenue
Inputs and source
Gross profit (as-filed PL line) and revenue
Period basis
Per row (cumulative ÷ cumulative, so no annualization)
Unit
0–1 decimal (0.12 in the API, 12% on screen)
Edge cases and nulls
  • Null when revenue is zero, negative or missing, and for companies that do not report gross profit (banks, insurers and so on).
Response fields
grossMargin
Endpoints
/stable/income-statement/stable/key-metrics

Operating margin

Computed by the data pipeline · verified

売上高営業利益率

Operating income divided by revenue, returned as a 0–1 decimal.

Formula
Operating margin = operating income ÷ revenue
Inputs and source
Operating income and revenue (kessan tanshin, annual securities reports)
Period basis
Per row (no annualization)
Unit
0–1 decimal (0.12 in the API, 12% on screen)
Edge cases and nulls
  • Null when revenue is zero, negative or missing, and where there is no operating-income line (for example, insurers).
Response fields
operatingMargin
Endpoints
/stable/income-statement/stable/key-metrics

Ordinary-income margin

Computed by the data pipeline · verified

売上高経常利益率

Ordinary income divided by revenue. Ordinary income is a profit subtotal specific to Japanese GAAP.

Formula
Ordinary margin = ordinary income ÷ revenue
Inputs and source
Ordinary income and revenue
Period basis
Per row (no annualization)
Unit
0–1 decimal (0.12 in the API, 12% on screen)
Edge cases and nulls
  • Mostly null for IFRS and US GAAP filers, which have no ordinary income. Also null when revenue is zero or negative.
Response fields
ordinaryMargin
Endpoints
/stable/income-statement/stable/key-metrics

Net margin

Computed by the data pipeline · verified

売上高純利益率

Net income divided by revenue, returned as a 0–1 decimal.

Formula
Net margin = net income (attributable to owners of the parent) ÷ revenue
Inputs and source
Net income and revenue
Period basis
Per row (no annualization)
Unit
0–1 decimal (0.12 in the API, 12% on screen)
Edge cases and nulls
  • Null when revenue is zero, negative or missing.
Response fields
netMargin
Endpoints
/stable/income-statement/stable/key-metrics

Revenue (banks and insurers)

Computed by the data pipeline · verified

売上高(銀行・保険の扱い)

Disclosed revenue (consolidated preferred, actuals). Banks and insurers report ordinary revenues and securities firms report operating revenues instead; those are used here.

Formula
Not computed (as disclosed)
Inputs and source
Revenue line of kessan tanshin and annual securities reports (revenue or operating revenue under IFRS)
Period basis
Per row (Q2 and Q3 are cumulative)
Unit
JPY
Edge cases and nulls
  • Revenue equivalents for banks, insurers and brokers mean different things. Take care when comparing margins or PSR.
Response fields
revenue
Endpoints
/stable/income-statement/stable/sga-breakdown

SG&A and R&D ratios

Computed by the API · verified

販管費率・研究開発費率

The API computes how large SG&A and R&D are relative to revenue and gross profit.

Formula
sgaToRevenue = SG&A ÷ revenue; sgaToGrossProfit = SG&A ÷ gross profit; researchAndDevelopmentToRevenue = R&D ÷ revenue; items[].share = item ÷ total SG&A (all rounded to 6 decimals)
Inputs and source
As-filed PL lines (SG&A, R&D, gross profit) and revenue
Period basis
Per row
Unit
0–1 decimal (sgaToGrossProfit exceeds 1 when there is an operating loss)
Edge cases and nulls
  • Null when the denominator is 0. sgaToGrossProfit is null when gross profit ≤ 0, and share is null when total SG&A ≤ 0.
Response fields
sgaToRevenuesgaToGrossProfitresearchAndDevelopmentToRevenueshare
Endpoints
/stable/sga-breakdown

Valuation

PER (price-to-earnings ratio)

Computed by the data pipeline · verified

PER(株価収益率)

Price divided by earnings per share (split-adjusted EPS). key-metrics-latest and similar endpoints use the latest close and the latest full-year EPS; key-metrics uses the price at each period end and that period’s EPS.

Formula
PER = close ÷ (adjusted EPS × annualization factor), falling back to disclosed EPS. The annualization factor is 365 ÷ days for periods of 120–329 days (Q2, Q3, half-year filers) and 1 otherwise (Q1 is not annualized). For a full-year comparison, use perTtm.
Inputs and source
Exchange data (split-adjusted close) and EPS (kessan tanshin, annual securities reports)
Period basis
key-metrics-latest, batch-key-metrics-latest, profile, screener, rankings and peers: latest close × latest full year. key-metrics: price at each period end × that period
Unit
Multiple (×)
Edge cases and nulls
  • Null when EPS is zero or negative (a loss).
  • Industry statistics and peer comparisons exclude values ≤ 0.
Response fields
per
Endpoints
/stable/key-metrics/stable/key-metrics-latest/stable/batch-key-metrics-latest/stable/profile/stable/screener/stable/screener-presets/stable/rankings/stable/peers/stable/industry-benchmarks

PER (TTM) and forward PER

Computed by the data pipeline · verified

PER(直近 12 か月)・予想 PER

perTtm is the close divided by trailing-twelve-month (TTM) EPS; perForecast is the close divided by the company’s forecast EPS.

Formula
perTtm = close ÷ epsTtm (TTM EPS is built from split-adjusted EPS). perForecast = close ÷ company-forecast EPS (a full-year forecast, so it is annualized only on FY rows).
Inputs and source
EPS (actual and company forecast, from kessan tanshin) and close
Period basis
TTM and the forecast fiscal year
Unit
Multiple (EPS in JPY)
Edge cases and nulls
  • Null when the denominator is ≤ 0. Forecast metrics are withheld when the period length cannot be determined.
Response fields
perTtmperForecastepsTtmepsForecast
Endpoints
/stable/key-metrics

PBR (price-to-book ratio)

Computed by the data pipeline · verified

PBR(株価純資産倍率)

Price divided by book value per share (split-adjusted BPS).

Formula
PBR = close ÷ adjusted BPS (BPS if unavailable). BPS is a balance, so it is not annualized.
Inputs and source
Close and BPS (see “BPS”)
Period basis
For key-metrics-latest, batch-key-metrics-latest, profile, screener, rankings and similar: latest close ÷ BPS of the latest fiscal period (quarters included); period end for key-metrics
Unit
Multiple (×)
Edge cases and nulls
  • Null when BPS is zero or negative (negative equity).
Response fields
pbr
Endpoints
/stable/key-metrics/stable/key-metrics-latest/stable/batch-key-metrics-latest/stable/profile/stable/screener/stable/screener-presets/stable/rankings/stable/peers/stable/industry-benchmarks

PSR (price-to-sales ratio)

Computed by the data pipeline · verified

PSR(株価売上高倍率)

Market capitalization divided by revenue. psrTtm uses trailing-twelve-month (TTM) revenue.

Formula
PSR = market cap ÷ (revenue × annualization factor); psrTtm = market cap ÷ TTM revenue. The annualization factor is 365 ÷ days for periods of 120–329 days (Q2, Q3, half-year filers) and 1 otherwise (Q1 is not annualized).
Inputs and source
Market cap and revenue
Period basis
As for PER
Unit
Multiple (×)
Edge cases and nulls
  • Null when revenue is ≤ 0. For banks and insurers the denominator is ordinary revenues.
Response fields
psrpsrTtm
Endpoints
/stable/key-metrics/stable/screener/stable/rankings/stable/peers/stable/industry-benchmarks

PEG ratio

Computed by the data pipeline · verified

PEG レシオ

PER divided by EPS growth expressed as a percentage number. pegRatioForecast divides forward PER by forecast EPS growth.

Formula
pegRatio = perTtm ÷ (EPS growth × 100). pegRatioForecast = forward PER ÷ ((forecast EPS ÷ TTM EPS − 1) × 100)
Inputs and source
PER (TTM and forward), prior and current EPS, and company-forecast EPS
Period basis
Trailing twelve months (TTM)
Unit
Multiple (×)
Edge cases and nulls
  • Null when growth is ≤ 0 or prior EPS is ≤ 0.
Response fields
pegRatiopegRatioForecast
Endpoints
/stable/key-metrics/stable/earnings-forecast

Market capitalization

Computed by the data pipeline · verified

時価総額

The close multiplied by shares outstanding excluding treasury shares (both split-adjusted).

Formula
Market cap = close (split-adjusted) × shares outstanding (split-adjusted; otherwise issued shares − treasury shares)
Inputs and source
Exchange data (close) and share counts from filings
Period basis
Latest close for quote, screener and similar; period-end price date for key-metrics
Unit
JPY
Edge cases and nulls
  • Null when the share count is unavailable.
  • For history, use market-cap-history (see “Market cap history”).
Response fields
marketCap
Endpoints
/stable/key-metrics/stable/market-capitalization/stable/quote/stable/batch-quote/stable/profile/stable/screener/stable/screener-presets/stable/rankings/stable/peers/stable/industry-benchmarks/stable/market-movers/stable/new-highs-lows/stable/sector-performance

EV (enterprise value)

Computed by the data pipeline · verified

EV(企業価値)

Market cap plus interest-bearing debt and non-controlling interests, minus cash and cash equivalents.

Formula
EV = market cap + interest-bearing debt + non-controlling interests (0 if absent) − cash and cash equivalents (closing balance in the cash-flow statement)
Inputs and source
Market cap, interest-bearing debt, non-controlling interests (BS) and cash (CF)
Period basis
Period end (key-metrics)
Unit
JPY
Edge cases and nulls
  • Null when debt or cash is missing; they are not treated as 0. Null for banks and securities firms, where EV is not defined.
Response fields
enterpriseValue
Endpoints
/stable/key-metrics

EV/EBITDA

Computed by the data pipeline · verified

EV/EBITDA

EV divided by trailing-twelve-month (TTM) EBITDA.

Formula
EV/EBITDA = EV ÷ TTM EBITDA (the full-year value on full-year rows). Null if unavailable.
Inputs and source
EV and EBITDA
Period basis
Trailing twelve months (TTM)
Unit
Multiple (×)
Edge cases and nulls
  • Null when EV or EBITDA is ≤ 0 or missing, and for banks and securities firms.
  • The screener parameter evToEbitdaLowerThan sets an upper bound only.
Response fields
evToEbitda
Endpoints
/stable/key-metrics/stable/screener/stable/rankings/stable/peers/stable/industry-benchmarks

Valuation history (PER, PBR, dividend yield)

Computed by the API · verified

PER・PBR・配当利回りの推移

The API computes these from each day’s adjusted close and the latest EPS, BPS and dividend published by that day. Later results are never used early.

Formula
per = adjusted close ÷ EPS (only when EPS > 0; 4 decimals); pbr = adjusted close ÷ BPS (BPS > 0; 4 decimals); dividendYield = DPS ÷ adjusted close (6 decimals). EPS, BPS and DPS are restated to the current share count with the split factor.
Inputs and source
Exchange data (adjusted close, else close) and per-period financials. Each period is used from its announcement date (45 days after period end if unknown).
Period basis
basis=fy (default) uses full-year EPS and BPS; basis=ttm uses TTM EPS and the latest quarterly BPS. Dividends are full-year in both. interval=weekly or monthly keeps the last trading day of each week or month.
Unit
PER and PBR are multiples; dividend yield is a 0–1 decimal (0.0323 in the API, 3.23% on screen)
Edge cases and nulls
  • Null when EPS or BPS is ≤ 0. A zero dividend gives a yield of 0; an unknown dividend gives null.
  • TTM EPS is used as stored, without the split factor, because it is already built from split-adjusted EPS.
  • Up to 10 years per request. Prices are available from January 2010.
Response fields
perpbrdividendYieldepsbpsdividendPerShareepsPeriodbpsPerioddividendPeriod
Endpoints
/stable/valuation-history

Market cap history

Computed by the API · verified

時価総額の推移

The API multiplies each day’s adjusted close by the latest share count published by that day (split-adjusted).

Formula
marketCap = adjusted close × shares (rounded to JPY). Shares are the first available of: adjusted shares outstanding → shares outstanding ÷ split factor → adjusted issued shares → issued shares ÷ split factor.
Inputs and source
Exchange data (daily prices) and per-period share counts
Period basis
Daily (weekly or monthly via interval)
Unit
JPY; shares
Edge cases and nulls
  • Days computed from issued shares have sharesBasis = issued. Treasury shares are included, so market cap is slightly overstated.
  • Null before any share count was published.
Response fields
marketCapsharessharesBasissharesPeriodadjustedClose
Endpoints
/stable/market-cap-history

Dividends

Dividend per share (DPS)

Computed by the data pipeline · verified

1 株当たり配当(DPS)

The annual dividend on FY rows, and the dividend with that quarter-end record date on quarterly rows. Amounts are split-adjusted.

Formula
FY: the annual dividend row (actual over forecast); otherwise the sum of payments from the day after the prior year-end to this period end. Quarters: the dividend whose record date is that quarter end. Split-adjusted amount (else as disclosed).
Inputs and source
Dividend section of kessan tanshin
Period basis
Per row
Unit
JPY
Edge cases and nulls
  • Null when the disclosure shows “—” (for example, undecided).
Response fields
dividendPerShare
Endpoints
/stable/key-metrics

Dividend amount (history)

Computed by the API · verified

配当額(配当履歴)

amount is the split-adjusted dividend per share (else as disclosed); rawAmount is the amount as disclosed.

Formula
amount = adjusted amount (disclosed amount if unavailable)
Inputs and source
Dividends from kessan tanshin and dividend forecast revisions
Period basis
Per record date (periodEndDate)
Unit
JPY
Edge cases and nulls
  • forecastOrActual tells forecasts from actuals. There are both annual-total rows (dividendType = annual) and per-payment rows, so take care when summing.
Response fields
amountrawAmount
Endpoints
/stable/dividends/stable/dividends-calendar

Annual dividend

Computed by the data pipeline · verified

年間配当

annualDividend is the annual dividend for the latest fiscal year (company forecasts included). If there is no annual row, it is interim actual + year-end forecast.

Formula
annualDividend = the annual dividend for the latest fiscal year (company forecasts included), else interim (actual) + year-end (forecast).
Inputs and source
Dividends from kessan tanshin
Period basis
Latest
Unit
JPY (split-adjusted)
Edge cases and nulls
  • latestAnnualDividend in dividend-streaks is the latest fiscal-year total built by the API (see “Consecutive non-decrease and increase years”).
Response fields
annualDividendlatestAnnualDividend
Endpoints
/stable/key-metrics-latest/stable/batch-key-metrics-latest/stable/key-metrics/stable/dividend-streaks

Dividend yield

Computed by the data pipeline · verified

配当利回り

The annual dividend divided by the price: 0.0323 in the API is 3.23% on screen.

Formula
dividendYield = annual dividend ÷ close
Inputs and source
Annual dividend (see “Annual dividend”) and close
Period basis
Latest close for key-metrics-latest, screener and similar; period-end price for key-metrics (full-year rows only; null on quarterly rows)
Unit
0–1 decimal (0.0323 in the API, 3.23% on screen)
Edge cases and nulls
  • 0 for companies paying no dividend; null when the annual dividend is unknown.
  • Industry statistics exclude values ≤ 0 and above 1, so they describe dividend payers.
  • distributionYield in etf-metrics is the ETF distribution yield (same column).
Response fields
dividendYielddistributionYield
Endpoints
/stable/key-metrics/stable/key-metrics-latest/stable/batch-key-metrics-latest/stable/profile/stable/screener/stable/screener-presets/stable/rankings/stable/peers/stable/industry-benchmarks/stable/etf-metrics

Payout ratio

Computed by the data pipeline · verified

配当性向

DPS divided by split-adjusted EPS: 0.3218 in the API is 32.18% on screen. payoutRatioForecast uses the company’s forecast EPS.

Formula
Payout ratio = DPS ÷ adjusted EPS (no fallback to unadjusted EPS)
Inputs and source
DPS and adjusted EPS
Period basis
Per row
Unit
0–1 decimal (0.12 in the API, 12% on screen)
Edge cases and nulls
  • Null when adjusted EPS is missing or zero or negative, or when BPS is zero or negative.
Response fields
payoutRatiopayoutRatioForecast
Endpoints
/stable/key-metrics/stable/earnings-forecast

DOE (dividend on equity)

Computed by the data pipeline · verified

DOE(純資産配当率)

DPS divided by average BPS (split-adjusted). This is a computed value, not the DOE the company discloses.

Formula
DOE = DPS ÷ average adjusted BPS, where average = (same period a year earlier + current) ÷ 2 when the earlier value (9–18 months back) is positive; otherwise the current value.
Inputs and source
DPS and adjusted BPS
Period basis
Per row
Unit
0–1 decimal (0.12 in the API, 12% on screen)
Edge cases and nulls
  • dividendToNetAssetsRatio (the disclosed value) is currently always null; use doe.
Response fields
doedividendToNetAssetsRatio
Endpoints
/stable/key-metrics

Dividend CAGR (3 and 5 years)

Computed by the data pipeline · verified

配当の年平均成長率(3 年・5 年)

Compound annual growth rate (CAGR) of the annual dividend over 3 and 5 years, returned as a 0–1 decimal.

Formula
3y = (annual dividend of the latest fiscal year ÷ that of the fiscal year 3 years earlier)^(1/3) − 1; 5y = (latest fiscal year ÷ the fiscal year 5 years earlier)^(1/5) − 1. Counted in years.
Inputs and source
Annual dividends by fiscal year (the latest fiscal year includes company forecasts)
Period basis
Up to the latest fiscal year (company forecasts included)
Unit
0–1 decimal (0.12 in the API, 12% on screen)
Edge cases and nulls
  • Null when either end is ≤ 0.
  • Null when there is no fiscal year exactly 3 (or 5) years earlier, or when there are two entries for that year. A nearby year is not used instead.
Response fields
dividendCagr3ydividendCagr5y
Endpoints
/stable/key-metrics-latest/stable/batch-key-metrics-latest/stable/key-metrics/stable/screener/stable/rankings

Progressive dividend years (pipeline value)

Computed by the data pipeline · verified

連続非減配年数(データ基盤の値)

How many consecutive recent years the annual dividend was at least the prior year’s. Despite the name, years with an unchanged dividend count.

Formula
Count back from the latest year while years are consecutive and current ≥ prior
Inputs and source
Annual dividends by fiscal year (built by the data pipeline)
Period basis
Up to the latest fiscal year
Unit
Years
Edge cases and nulls
  • 0 when the latest year paid no dividend.
  • For strict increases only, use consecutiveIncreaseYears in dividend-streaks.
Response fields
progressiveDividendYearsreportedNonDecreaseYears
Endpoints
/stable/key-metrics-latest/stable/batch-key-metrics-latest/stable/key-metrics/stable/screener/stable/screener-presets/stable/rankings/stable/dividend-streaks

連続非減配年数・連続増配年数(API の計算)

The API builds yearly totals from the dividend history and counts consecutive non-decrease years (unchanged years included) and consecutive increase years (strict increases only).

Formula
Yearly total = the annual row (if above 0), else the sum of actual and forecast payments. Count back while years are consecutive and current ≥ prior (> for increases). changeAmount = current − prior (4 decimals); changeRatio = current ÷ prior − 1 (6 decimals).
Inputs and source
Dividends from kessan tanshin (latest valid rows, last 25 years, split-adjusted)
Period basis
Fiscal years ending on or before today
Unit
Years; JPY; 0–1 decimal
Edge cases and nulls
  • 0 years when the latest year is ≤ 0. changeRatio is null when the prior year is ≤ 0.
  • matchesReported shows whether the value equals the pipeline’s count (reportedNonDecreaseYears). They can differ in how an “undecided” forecast is treated.
Response fields
consecutiveNonDecreaseYearsconsecutiveIncreaseYearsmatchesReportedyearschangeAmountchangeRatio
Endpoints
/stable/dividend-streaks

Dividend change rate

Standard definition (unverified)

増配・減配の変動率

Annual dividend changes detected in kessan tanshin and similar filings. As with every other ratio, the change rate and yields are 0–1 decimals (0.1 = 10%).

Formula
Change rate = new ÷ previous − 1; yield = annual dividend ÷ close on the detection date (computed by the data pipeline)
Inputs and source
Kessan tanshin and dividend forecast revisions filed via TDnet
Period basis
Detection date
Unit
0–1 decimal; JPY
Response fields
changeRatepreviousDividendYieldnewDividendYieldpreviousAnnualDividendnewAnnualDividend
Endpoints
/stable/dividend-changes

Growth

Revenue, net income and EPS CAGR (3 and 5 years)

Computed by the data pipeline · verified

売上・純利益・EPS の年平均成長率(3 年・5 年)

Compound annual growth rate (CAGR) from the latest full year compared with the full year N years earlier, returned as a 0–1 decimal.

Formula
CAGR = (latest full year ÷ the full year ending in the same month N years earlier)^(1/N) − 1 (N = 3 or 5; 6 decimals). EPS is split-adjusted.
Inputs and source
Per-period financials (full-year rows)
Period basis
Latest full year
Unit
0–1 decimal (0.12 in the API, 12% on screen)
Edge cases and nulls
  • Null when either end is ≤ 0 (for example, a loss).
  • In key-metrics these six fields are currently null by design. The values are in key-metrics-latest, batch-key-metrics-latest, screener, rankings and industry-benchmarks (latest snapshot).
Response fields
revenueCagr3yrevenueCagr5ynetIncomeCagr3ynetIncomeCagr5yepsCagr3yepsCagr5y
Endpoints
/stable/key-metrics-latest/stable/batch-key-metrics-latest/stable/screener/stable/rankings/stable/industry-benchmarks/stable/key-metrics

Year-on-year change (as disclosed)

Computed by the data pipeline · verified

前年同期比(開示値)

Returns the year-on-year change the company reports in the kessan tanshin summary, as disclosed.

Formula
Not computed (as disclosed). The usual definition is current ÷ prior-year same period − 1.
Inputs and source
Kessan tanshin summary (Summary *_change items in financial-statement-full)
Period basis
Year to date (compared with the same period of the prior year)
Unit
0–1 decimal
Edge cases and nulls
  • Null when the company shows “—” (for example, after swinging to a loss).
Response fields
revenueChangeRateoperatingIncomeChangeRateordinaryIncomeChangeRatenetIncomeChangeRate
Endpoints
/stable/key-metrics

Forecast growth and forecast margins

Computed by the API · verified

会社予想の伸び率・予想利益率

The API computes how much the company forecast grows from the latest full-year actual, and forecast profit as a share of forecast revenue.

Formula
*GrowthVsActual = forecast ÷ actual − 1 (FY rows only; 6 decimals). operatingMarginForecast = forecast operating income ÷ forecast revenue; netMarginForecast = forecast net income ÷ forecast revenue (6 decimals).
Inputs and source
Guidance in kessan tanshin (FY rows carry next-year guidance; Q1–Q3 rows carry current-year guidance)
Period basis
Forecast fiscal year (forecastFiscalPeriod)
Unit
0–1 decimal (0.12 in the API, 12% on screen)
Edge cases and nulls
  • Growth is null when the actual is ≤ 0; forecast margins are null when forecast revenue is 0.
  • Progress rates (year-to-date actual ÷ full-year forecast) are not returned.
Response fields
revenueGrowthVsActualoperatingIncomeGrowthVsActualnetIncomeGrowthVsActualepsGrowthVsActualoperatingMarginForecastnetMarginForecast
Endpoints
/stable/earnings-forecast

Per-share values and share counts

EPS (earnings per share)

Computed by the data pipeline · verified

EPS(1 株当たり当期純利益)

eps and epsDiluted are as disclosed (based on the share count at the time). adjustedEps is split-adjusted (based on the current share count).

Formula
adjustedEps = eps × splitAdjustmentFactor
Inputs and source
EPS from kessan tanshin and annual securities reports (basic and diluted are paired from the same document and basis)
Period basis
Per row (Q2 and Q3 are cumulative)
Unit
JPY
Edge cases and nulls
  • Diluted EPS is null for companies without dilutive securities, which do not disclose it.
Response fields
epsepsDilutedadjustedEps
Endpoints
/stable/income-statement/stable/key-metrics

BPS (book value per share)

Computed by the data pipeline · verified

BPS(1 株当たり純資産)

Basically common equity divided by shares outstanding; the disclosed BPS is used when the two differ greatly. adjustedBps is split-adjusted.

Formula
BPS = common equity ÷ shares outstanding; the disclosed BPS is used when shares are missing or the two differ greatly. adjustedBps = BPS × splitAdjustmentFactor.
Inputs and source
Equity, preferred shares and share counts (BS and share information)
Period basis
Period-end balance
Unit
JPY
Edge cases and nulls
  • The threshold for using the disclosed value is described differently in the pipeline code and its spec; the rule in production is still being confirmed.
Response fields
bpsadjustedBps
Endpoints
/stable/key-metrics

Share counts (issued, treasury, outstanding)

Computed by the data pipeline · verified

株式数(発行済・自己株式・流通)

Shares outstanding are issued shares minus treasury shares. The average share count is the disclosed EPS denominator.

Formula
outstandingShares = numberOfIssuedShares − numberOfTreasuryStock
Inputs and source
Share information in kessan tanshin
Period basis
Period end (the average is over the period)
Unit
Shares
Edge cases and nulls
  • Shares outstanding is not computed when the inputs look wrong (for example, the treasury field holds the net count).
Response fields
numberOfIssuedSharesnumberOfTreasuryStockoutstandingSharesaverageNumberOfShares
Endpoints
/stable/key-metrics

Balance sheet strength and cash flow

Equity ratio

Computed by the data pipeline · verified

自己資本比率

Equity divided by total assets. The company’s disclosed ratio is used when available (with its unit normalized), otherwise it is computed.

Formula
Equity ratio = equity ÷ total assets
Inputs and source
The equity ratio in the kessan tanshin summary, or BS equity and total assets
Period basis
Period end
Unit
0–1 decimal (0.12 in the API, 12% on screen)
Edge cases and nulls
  • Null when the unit of the disclosed value (decimal or %) cannot be determined. Negative under negative equity.
Response fields
equityRatio
Endpoints
/stable/balance-sheet-statement/stable/key-metrics

Equity and common equity

Computed by the data pipeline · verified

自己資本・普通株主に帰属する自己資本

ownersEquity is net assets minus non-controlling interests and share subscription rights (preferred shares included). commonEquity also removes preferred shares.

Formula
Equity = net assets − non-controlling interests − share subscription rights
Inputs and source
Balance sheet (kessan tanshin, annual securities reports)
Period basis
Period end
Unit
JPY
Edge cases and nulls
  • commonEquity deducts preferred shares only when their amount can be identified.
Response fields
ownersEquitycommonEquityshareholdersEquity
Endpoints
/stable/balance-sheet-statement

Financial leverage

Computed by the data pipeline · verified

財務レバレッジ

Total assets divided by equity.

Formula
Financial leverage = total assets ÷ equity
Inputs and source
Balance sheet
Period basis
Period end
Unit
Multiple (×)
Edge cases and nulls
  • Null when equity is ≤ 0.
Response fields
financialLeverage
Endpoints
/stable/key-metrics

Interest-bearing debt and net debt

Computed by the data pipeline · verified

有利子負債・ネット有利子負債

Uses the disclosed interest-bearing debt (plus lease liabilities); otherwise sums borrowings, bonds, commercial paper, lease liabilities and similar items. Net debt subtracts cash.

Formula
Debt = disclosed value (+ lease liabilities); otherwise short- and long-term borrowings + bonds + current portions + CP + lease liabilities + … Net debt = debt − cash and cash equivalents (closing balance in the cash-flow statement).
Inputs and source
As-filed balance-sheet lines
Period basis
Period end
Unit
JPY (negative net debt means cash exceeds debt)
Edge cases and nulls
  • 0 when the balance sheet has no borrowing lines; null when this cannot be determined.
  • Net debt is null for banks and securities firms, where deposits and client assets make it meaningless.
Response fields
interestBearingDebtnetInterestBearingDebt
Endpoints
/stable/balance-sheet-statement/stable/key-metrics

EBITDA

Computed by the data pipeline · verified

EBITDA

Operating income plus depreciation and goodwill amortization. Null when depreciation is unavailable.

Formula
EBITDA = operating income + depreciation (cash-flow statement value preferred) + goodwill amortization (0 if absent)
Inputs and source
Operating income (PL) and depreciation (CF or PL)
Period basis
Per row (ebitdaTtm is trailing twelve months)
Unit
JPY
Edge cases and nulls
  • Mostly null for Q1 and Q3, which usually have no cash-flow statement.
Response fields
ebitdaebitdaTtm
Endpoints
/stable/income-statement/stable/key-metrics

Free cash flow

Computed by the data pipeline · verified

フリー・キャッシュ・フロー

Operating cash flow plus investing cash flow.

Formula
FCF = operating cash flow + investing cash flow (investing cash flow is usually negative)
Inputs and source
Cash-flow statement (kessan tanshin, annual securities reports)
Period basis
Per row (cumulative)
Unit
JPY
Edge cases and nulls
  • Null when either side is missing; it is not treated as 0. Mostly null for Q1 and Q3.
Response fields
freeCashFlow
Endpoints
/stable/cash-flow-statement/stable/key-metrics

Cash and cash equivalents

Computed by the data pipeline · verified

現金及び現金同等物

The closing balance in the cash-flow statement; the balance-sheet value is used if absent.

Formula
Not computed (CF closing balance, else the BS value)
Inputs and source
Cash-flow statement and balance sheet
Period basis
Period end
Unit
JPY
Edge cases and nulls
  • For J-REITs the cash-flow balance already includes cash in trust, so it is not added to balance-sheet cash.
Response fields
cashAndCashEquivalentscashAtEndOfPeriod
Endpoints
/stable/balance-sheet-statement/stable/cash-flow-statement

Total liabilities

Computed by the API · verified

負債合計

The disclosed total liabilities; if absent, the API adds current and non-current liabilities.

Formula
Total liabilities = disclosed value (else current + non-current liabilities)
Inputs and source
As-filed balance sheet (financial-statement-full) and per-period financials
Period basis
Period end
Unit
JPY
Edge cases and nulls
  • Null when neither is available.
Response fields
totalLiabilities
Endpoints
/stable/balance-sheet-statement

Price, returns and technicals

Price (close)

Computed by the data pipeline · verified

株価(終値)

The close on the latest trading day (split-adjusted). This is exchange data and is shown only to signed-in users.

Formula
Not computed (adjusted close, else close)
Inputs and source
Exchange data (daily prices)
Period basis
Latest trading day (priceDate)
Unit
JPY
Edge cases and nulls
  • closePrice in key-metrics is the price at period end, the basis for that period’s PER and similar.
Response fields
pricepriceDatecloseclosePrice
Endpoints
/stable/quote/stable/batch-quote/stable/profile/stable/technicals/stable/returns/stable/screener/stable/screener-presets/stable/rankings/stable/peers/stable/key-metrics/stable/new-highs-lows/stable/market-movers

Price change (1 day to 1 year, year to date)

Computed by the data pipeline · verified

騰落率(1 日・1 週・1 か月・3 か月・6 か月・1 年・年初来)

The change of the latest adjusted close from the adjusted close on the base date. The base date is the last trading day on or before the calendar look-back date.

Formula
Change = (latest adjusted close − base adjusted close) ÷ |base adjusted close| (6 decimals). Base: 1d = previous trading day; 1w = on or before 7 days earlier; 1m, 3m, 6m, 1y = on or before that many months or years earlier; YTD = last trading day on or before Dec 31 of the prior year.
Inputs and source
Exchange data (adjusted close, else close)
Period basis
Latest trading day
Unit
0–1 decimal (0.052 in the API, 5.2% on screen)
Edge cases and nulls
  • Null when there is no price on or before the base date (for example, a recent listing).
  • changePct in market-movers and market-breadth is computed separately by the API (see “Daily move and trading value”).
Response fields
changePct1dchangePct1wchangePct1mchangePct3mchangePct6mchangePct1ychangePctYtd
Endpoints
/stable/quote/stable/batch-quote/stable/returns/stable/screener/stable/screener-presets/stable/rankings/stable/peers/stable/sector-performance

52-week high and low

Computed by the data pipeline · verified

52 週高値・安値

The highest split-adjusted high and lowest low over the last 365 days. Null with fewer than 200 trading days.

Formula
52-week high = max of adjusted highs; 52-week low = min of adjusted lows (last 365 days)
Inputs and source
Exchange data (adjusted highs and lows)
Period basis
Last 365 days (as of priceMetricsDate)
Unit
JPY
Edge cases and nulls
  • Null with fewer than 200 trading days (reason code insufficient_prices:200).
  • high52 and low52 in new-highs-lows are the same values; highDate and lowDate are the dates found by the API in its daily build.
Response fields
week52Highweek52Lowhigh52low52highDatelowDate
Endpoints
/stable/technicals/stable/new-highs-lows

Moving averages (50 and 200 days)

Computed by the data pipeline · verified

移動平均(50 日・200 日)

Simple average of the last 50 or 200 adjusted closes.

Formula
ma50 = mean of the last 50 closes; ma200 = mean of the last 200 (within the last 365 days)
Inputs and source
Exchange data (adjusted close)
Period basis
As of priceMetricsDate
Unit
JPY
Edge cases and nulls
  • ma50 is null with fewer than 60 bars, and ma200 with fewer than 200.
Response fields
ma50ma200
Endpoints
/stable/technicals

Volatility (1 year)

Computed by the data pipeline · verified

ボラティリティ(1 年)

The standard deviation of daily log returns, annualized, returned as a 0–1 decimal.

Formula
σ = sample stdev(ln(close_t ÷ close_t−1)) × √252
Inputs and source
Adjusted closes over the last 365 days
Period basis
Last 365 days
Unit
0–1 decimal (0.12 in the API, 12% on screen)
Edge cases and nulls
  • Null with fewer than 30 bars.
Response fields
volatility1y
Endpoints
/stable/technicals

Maximum drawdown (1 year)

Computed by the data pipeline · verified

最大ドローダウン(1 年)

The largest fall from a running peak over the last year, returned as a negative decimal (−0.35 is a 35% fall).

Formula
min(close_t ÷ running peak close − 1)
Inputs and source
Adjusted closes over the last 365 days
Period basis
Last 365 days
Unit
0–1 decimal (≤ 0)
Edge cases and nulls
  • Null with fewer than 30 bars.
Response fields
maxDrawdown1y
Endpoints
/stable/technicals

3-year annualized return and Sharpe ratio

Computed by the data pipeline · verified

3 年の年率リターン・シャープレシオ

The annualized return from the last close on or before three years ago, and the Sharpe ratio: that return minus the risk-free rate, divided by 3-year volatility.

Formula
return3yAnnualized = (latest ÷ start)^(365 ÷ days) − 1. sharpeRatio3y = (return3yAnnualized − risk-free rate) ÷ 3-year annualized volatility.
Inputs and source
Adjusted closes; the risk-free rate is a pipeline setting shared with the WACC calculation
Period basis
Start = last trading day on or before 1,095 days ago
Unit
0–1 decimal (the Sharpe ratio has no unit)
Edge cases and nulls
  • Null for listings under 3 years old or with fewer than 600 bars from the start. The Sharpe ratio is null when 3-year volatility is ≤ 0.
  • The current risk-free rate setting is not published.
Response fields
return3yAnnualizedsharpeRatio3y
Endpoints
/stable/technicals/stable/returns

Average trading value (90 days)

Computed by the data pipeline · verified

平均売買代金(90 日)

Average daily trading value (unadjusted close × volume) over the last 90 trading days.

Formula
Average of (close × volume), using the unadjusted close because it is the amount actually traded
Inputs and source
Exchange data (close and volume, from the last 140 days)
Period basis
Last 90 trading days
Unit
JPY
Edge cases and nulls
  • Null with fewer than 30 days with volume.
Response fields
avgTurnover90d
Endpoints
/stable/technicals

Beta

Standard definition (unverified)

ベータ

The slope of a 2-year regression of weekly returns on the TOPIX ETF (1306).

Formula
β = Cov(stock, 1306) ÷ Var(1306) (weekly returns, 2 years)
Inputs and source
Exchange data (the stock and 1306)
Period basis
Last 2 years
Unit
No unit
Edge cases and nulls
  • Regression details (such as how missing weeks are handled) have not been verified.
Response fields
beta
Endpoints
/stable/profile/stable/key-metrics

WACC and cost of equity

Standard definition (unverified)

WACC・株主資本コスト

The CAPM cost of equity and its weighted average with the cost of debt (WACC), computed by the data pipeline.

Formula
Cost of equity = risk-free rate + β × market risk premium. WACC = cost of equity × E/(D+E) + cost of debt × (1 − tax rate) × D/(D+E) (standard definition)
Inputs and source
Beta, market cap, interest-bearing debt and similar
Period basis
Latest
Unit
0–1 decimal (0.12 in the API, 12% on screen)
Edge cases and nulls
  • The assumptions (market risk premium, tax rate and so on) have not been verified.
Response fields
wacccostOfEquity
Endpoints
/stable/key-metrics

Market-wide (breadth, new highs, sector moves)

Daily move and trading value

Computed by the API · verified

当日の値動き・売買代金

The API computes these from the adjusted closes of the latest and previous trading days. Trading value is the unadjusted close × volume.

Formula
change = close − previous close; changePct = close ÷ previous close − 1 (both 6 decimals); turnover = unadjusted close × volume (rounded to JPY)
Inputs and source
Exchange data. The latest trading day is the newest date on which at least 80% of the median number of stocks (last 10 dates) have prices.
Period basis
Latest and previous trading days
Unit
JPY; 0–1 decimal; shares
Edge cases and nulls
  • Null when the previous close is missing or ≤ 0. Top gainers and losers exclude stocks with zero volume and stocks with a split or consolidation in the last 10 days.
  • Common stocks by default; include ETFs and REITs with includeEtf=true.
Response fields
changechangePctprevCloseturnovervolume
Endpoints
/stable/market-movers/stable/new-highs-lows/stable/market-breadth

52-week new highs and lows

Computed by the API · verified

52 週の新高値・新安値

Stocks whose 52-week high (or low) was set within the last `days` days. distanceFromHigh is how far the close is from the 52-week high.

Formula
New high: high date ≥ latest trading day − (days − 1) days (days 1–30, default 1). distanceFromHigh = close ÷ 52-week high − 1; distanceFromLow = close ÷ 52-week low − 1 (6 decimals).
Inputs and source
52-week high and low (see that entry) and daily prices
Period basis
Latest trading day
Unit
0–1 decimal; counts
Edge cases and nulls
  • Excludes stocks with fewer than 200 trading days and stocks with a split or consolidation in the last 10 days.
  • newHighs and newLows in market-breadth are counts with days = 1.
Response fields
distanceFromHighdistanceFromLownewHighsnewLows
Endpoints
/stable/new-highs-lows/stable/market-breadth

Advancers, decliners and advance/decline ratio

Computed by the API · verified

騰落銘柄数・騰落レシオ

Counts of advancing, declining and unchanged stocks, and advancers ÷ decliners (the advance/decline ratio for that day only).

Formula
advanceDeclineRatio = advancers ÷ decliners; pctAdvancing = advancers ÷ (advancers + decliners + unchanged). universe = advancers + decliners + unchanged + noComparison + splitExcluded.
Inputs and source
Daily moves (see “Daily move and trading value”)
Period basis
One day: the latest trading day (not the 25-day advance/decline ratio)
Unit
Counts; ratio; 0–1 decimal
Edge cases and nulls
  • advanceDeclineRatio is null when there are no decliners.
  • Stocks without a comparable change or with zero volume count as noComparison; recent splits and consolidations count as splitExcluded.
Response fields
advancersdeclinersunchangednoComparisonsplitExcludedadvanceDeclineRatiopctAdvancinguniverse
Endpoints
/stable/market-breadth

Sector performance (median and cap-weighted)

Computed by the API · verified

業種別の騰落率(中央値・時価総額加重)

The median price change for each of the TSE’s 33 sectors, and the average weighted by start-of-period market cap.

Formula
Median = median change (linear interpolation). Weighted = Σ(w × r) ÷ Σw with w = current market cap ÷ (1 + r) (an approximation of start-of-period market cap).
Inputs and source
Each stock’s price change (see “Price change”) and market cap
Period basis
1 day, 1 week, 1 month, year to date
Unit
0–1 decimal (0.12 in the API, 12% on screen)
Edge cases and nulls
  • Only common stocks priced on the most common latest date are included (stale prices from trading halts are left out). Values of −100% or lower are not used.
  • Stocks without a market cap are left out of the weighted average.
Response fields
changePct1dMedianchangePct1dWeightedchangePct1dCountchangePct1wMedianchangePct1wWeightedchangePct1wCountchangePct1mMedianchangePct1mWeightedchangePct1mCountchangePctYtdMedianchangePctYtdWeightedchangePctYtdCount
Endpoints
/stable/sector-performance

Industry comparison, screener and rankings

Industry median and quartiles

Computed by the API · verified

業種の中央値・四分位

For each of the TSE’s 33 sectors: the first quartile, median and third quartile of each metric, with valid counts. No mean, minimum or maximum is returned.

Formula
p-quantile = x[⌊h⌋] + (h − ⌊h⌋)(x[⌈h⌉] − x[⌊h⌋]), h = (n − 1)p (the same linear interpolation as Excel’s PERCENTILE.INC; 6 decimals)
Inputs and source
Latest snapshot of all stocks (common stocks; ETFs and REITs excluded)
Period basis
Latest (see each metric for its basis)
Unit
Unit of each metric
Edge cases and nulls
  • Valid values: PER, PBR, PSR, EV/EBITDA and market cap above 0; ROE and ROA at most 1; dividend yield above 0 and at most 1.
  • With fewer than 3 valid values, the quartiles are null and only the count is returned. The first row is all sectors (ALL).
Response fields
countperCountperQ1perMedianperQ3pbrCountpbrQ1pbrMedianpbrQ3psrCountpsrQ1psrMedianpsrQ3evToEbitdaCountevToEbitdaQ1evToEbitdaMedianevToEbitdaQ3roeCountroeQ1roeMedianroeQ3roaCountroaQ1roaMedianroaQ3dividendYieldCountdividendYieldQ1dividendYieldMediandividendYieldQ3marketCapCountmarketCapQ1marketCapMedianmarketCapQ3revenueCagr3yCountrevenueCagr3yQ1revenueCagr3yMedianrevenueCagr3yQ3epsCagr3yCountepsCagr3yQ1epsCagr3yMedianepsCagr3yQ3
Endpoints
/stable/industry-benchmarks/stable/peers

Peer selection and rank

Computed by the API · verified

同業他社の選び方と順位

Common stocks in the same sector, ordered by how close their market cap is to the target’s. The last row is the sector median.

Formula
Closeness = |ln(market cap ÷ target market cap)|. marketCapRank = rank by market cap within the sector (1 = largest); marketCapRatio = market cap ÷ target market cap (6 decimals).
Inputs and source
Latest snapshot
Period basis
Latest
Unit
Rank; ratio
Edge cases and nulls
  • If the target has no market cap, peers are ordered by size. Outliers (same rules as industry statistics) are null.
Response fields
rolemarketCapRankmarketCapRatiosectorCount
Endpoints
/stable/peers

Screener filters

Computed by the API · verified

スクリーナーの条件

All bounds are inclusive (MoreThan means ≥ and LowerThan means ≤). Stocks with a null value never match.

Formula
marketCap, per, pbr and dividendYield take ≥ and ≤; roe and roa take ≥; evToEbitda takes ≤. Ratio filters are 0–1 decimals (0.05 for 5%).
Inputs and source
Latest snapshot (see each metric)
Period basis
Latest
Unit
Unit of each metric
Edge cases and nulls
  • The screener does not drop outliers (stocks with ROE above 1 remain).
  • isEtf=false keeps everything except ETFs (REITs included).
Endpoints
/stable/screener

Screener presets

Computed by the API · verified

スクリーナーのプリセット

Six presets: high dividend, value, high ROE, growth, dividend growth (years without a cut) and momentum. All require a market cap of at least ¥5 billion. They are lists of matching stocks, not investment recommendations.

Formula
high-dividend: 4% ≤ yield ≤ 12% and PER > 0 / value: 0 < PER ≤ 15, 0 < PBR ≤ 1, ROE ≥ 5% / high-roe: 15% ≤ ROE ≤ 100% / growth: revenue and EPS 3-year CAGR ≥ 10%, 8% ≤ ROE ≤ 100% / dividend-growth: at least 5 progressive years, yield ≥ 2% / momentum: 1 month ≥ +10%, year to date ≥ +20%
Inputs and source
Latest snapshot (common stocks)
Period basis
Latest
Unit
value is the metric used for sorting
Edge cases and nulls
  • All conditions must hold; stocks with a null value drop out. Years for dividend-growth include unchanged years.
Response fields
rankvalue
Endpoints
/stable/screener-presets

Rankings

Computed by the API · verified

ランキング

Rank by the metric chosen with the metric parameter; value is that metric. Only ROE drops values above 1 (100%) as outliers.

Formula
rank = position after sorting (from 1)
Inputs and source
Latest snapshot (ETFs excluded; REITs included)
Period basis
Latest
Unit
Unit of the metric
Edge cases and nulls
  • Stocks with a null metric are left out.
Response fields
rankvalue
Endpoints
/stable/rankings

Sentiment

Fear & Greed index

External service value

Fear & Greed 指数

A 0–100 market sentiment score (0 is extreme fear, 100 is extreme greed), returned as computed by an external service.

Formula
Combines an inverted RSI(14) and the deviation from the 20-day moving average of the VIX ETF (VIXY). The weights and label thresholds have not been verified.
Inputs and source
VIXY closes (external service)
Period basis
Latest (previousClose is the previous day’s score and lastMonth the score a month ago; neither is a price)
Unit
0–100
Edge cases and nulls
  • label is one of Extreme Fear, Fear, Neutral, Greed and Extreme Greed. components holds rsiScore and smaScore.
  • Returns 503 when the external service does not respond.
Response fields
scorelabelpreviousCloselastMonthcomponents
Endpoints
/stable/fear-greed
info

Definitions reflect the implementation as of October 20, 2026. Changes to calculations are announced in the changelog. This page explains metric definitions and is not investment advice.

Related: Data quality · Japan market primer