QUANT REPORT — BANPU¶
Spot (2026-06-22): ฿5.35 | Data window: 2016-05-26 → 2026-06-22 (2,450 sessions, adj close) Caveat: Only 60 of 2,450 daily rows are visible in package + the 10y summary row. Beta/factor regressions, Hurst, variance ratio, regime segmentation, drawdown distribution, and rolling-vol regime dating require the full series — these are flagged as NOT COMPUTABLE FROM PACKAGE rather than fabricated. SET index series, sector ETF, oil, USD/THB, US10Y, China property — none supplied, so all beta/factor coefficients are absent.
1. Return statistics (annualised, 10y daily)¶
From the 10y summary row only:
| Metric | BANPU (10y) | SET Index |
|---|---|---|
| Total adj return | −47.96% | n/a — not in package |
| CAGR (geometric) | ≈ −6.3% | n/a |
| Mean return (ann., arith.) | +0.73% | n/a |
| Volatility (ann.) | 38.58% | n/a |
| Skew | 0.142 | n/a |
| Kurtosis (excess) | 8.41 | n/a |
| Sharpe (rf=0) | 0.019 | n/a |
| Max drawdown | −79.74% | n/a |
Distribution diagnostic: Kurtosis 8.4 ⇒ strongly leptokurtic, fat-tailed. Skew mildly positive (0.14) — near-symmetric. Daily return distribution is not normal; any Gaussian-based CI underestimates tail risk by a wide margin.
Implied daily σ ≈ 38.58/√252 = 2.43%. A 3σ Gaussian day is ±7.3%; with κ_excess = 8.4, expect 3σ+ events ~3–5× more often than normal predicts.
2. Volatility regimes¶
NOT COMPUTABLE FROM PACKAGE. Need full 2,450-row series for rolling 60-day vol or HMM segmentation.
What IS visible in the last 60 sessions (2026-03-25 → 2026-06-22): - Realised daily σ (60d, log returns, my calc on visible CSV): ≈ 1.8–2.0% → annualised ~30% - Range: ฿5.30–฿6.20 (14% peak-to-trough) - Current 60d vol < 10y average vol (38.58%) → current regime: low-vol relative to history. - Visible drift over 60 sessions: 5.90 → 5.35 = −9.3% (annualised −33%). Recent trend = down despite low vol.
3. Beta & factor exposures¶
NOT COMPUTABLE FROM PACKAGE. No SET, sector, oil, USD/THB, US10Y, China property series provided. No P/E, P/B, ROE, dividend yield in package (audit DO-NOT-FABRICATE items 1–4, 7).
Priors from sector identity (qualitative, not estimated here): BANPU is historically a high-beta SET name (typical β to SET 1.1–1.4 in Thai coal/energy peers) with material loadings on global thermal coal (Newcastle), Henry Hub gas (via BKV), and USD/THB. None of these factor series are in the package, so coefficients/t-stats/R² are not reported.
4. Mean reversion vs trend¶
Hurst exponent / variance ratio test: NOT COMPUTABLE without full series.
Coarse proxy from the 10y summary: CAGR −6.3% with ann.vol 38.6% over 10 years implies a near-monotonic drift down (drift-to-vol ratio −0.16). The −79.7% max drawdown vs −48% total return tells us the path went substantially lower than the endpoint at some point — i.e. there was a partial recovery after the trough. That is more consistent with trending behaviour over multi-year horizons + mean-reversion within regimes (typical commodity equity).
Operational assumption for forecast: treat 2y horizon as mixed — drift estimate uses long-window negative drift; mean-reversion model anchors to longer-window average price (not valuation, since no P/E available).
5. Drawdown profile¶
| Stat | Value | Note |
|---|---|---|
| Max DD (10y) | −79.74% | from summary row |
| Mean DD | n/a | full series not provided |
| Recovery time distribution | n/a | full series not provided |
| Current DD vs 10y start (10.28) | −47.96% | spot ฿5.35 |
| Current DD vs implied 10y peak | ≥ −66% | spot vs implied peak ≈ ฿15.7 (10.28 / (1−0.797 × 10.28/peak); package-level inference only) |
Drawdown is severe and characteristic of a structurally challenged commodity equity. Recovery probability calculations require the full series.
6. 2-year forecast — model comparison¶
Assumptions¶
| Param | Value | Source |
|---|---|---|
| S₀ | ฿5.35 | last close 2026-06-22 |
| μ (arith. ann.) | 0.73% | 10y summary |
| μ (geom. ann.) | −6.3% | derived from total return |
| σ (ann.) | 38.58% | 10y summary |
| Horizons | T=1, T=2 (years) | per spec |
6a. Geometric Brownian Motion (drift = CAGR −6.3%)¶
GBM: lnS_T ~ N(lnS₀ + (μ_g − σ²/2)·T, σ²T). Using μ_g = −0.063, σ = 0.3858: - Median 12m: S₀·exp((−0.063 − 0.0744)·1) = 5.35·exp(−0.137) = ฿4.66 - 90% CI 12m: [5.35·exp(−0.137 − 1.645·0.3858), 5.35·exp(−0.137 + 1.645·0.3858)] = [฿2.47, ฿8.80] - Median 24m: 5.35·exp(−0.275) = ฿4.07 - 90% CI 24m: [5.35·exp(−0.275 − 1.645·0.5457), 5.35·exp(−0.275 + 1.645·0.5457)] = [฿1.65, ฿9.99]
6b. GBM with arithmetic-mean drift (μ = 0.73%) — sanity alt¶
- Median 12m: 5.35·exp(0.0073 − 0.0744) = ฿5.00
- Median 24m: 5.35·exp(2·(−0.067)) = ฿4.68
6c. Mean reversion to long-run average price¶
No valuation series available. Proxy anchor = 10y geometric mean of start+end adj close = √(10.28·5.35) = ฿7.42. Half-life assumption: 18 months (typical for commodity equities; not estimated from data — flagged). - 12m: 5.35 + (7.42 − 5.35)·(1 − exp(−12/18·ln2)) = 5.35 + 2.07·0.370 = ฿6.12 - 24m: 5.35 + 2.07·0.610 = ฿6.61 - CI (using residual σ proxy of 0.7·σ_GBM): 12m [฿3.5, ฿10.7]; 24m [฿3.2, ฿13.5] - Anchor is arbitrary because no fundamental valuation series exists in package.
6d. Multi-factor regression projection¶
NOT COMPUTABLE — no factor series in package.
6e. Naive EPS × P/E¶
NOT COMPUTABLE — DO-NOT-FABRICATE items 1 and 3 (no EPS, no P/E in package).
Summary¶
| Model | 12m point | 12m 90% CI | 24m point | 24m 90% CI |
|---|---|---|---|---|
| GBM (geom drift −6.3%) | ฿4.66 | [฿2.47, ฿8.80] | ฿4.07 | [฿1.65, ฿9.99] |
| GBM (arith drift +0.73%) | ฿5.00 | [฿2.65, ฿9.43] | ฿4.68 | [฿1.90, ฿11.50] |
| Mean reversion (anchor ฿7.42) | ฿6.12 | [฿3.5, ฿10.7] | ฿6.61 | [฿3.2, ฿13.5] |
| Multi-factor regression | n/a | — | n/a | — |
| Naive EPS × P/E | n/a | — | n/a | — |
| Median of available | ฿5.00 | [~฿2.9, ~฿9.6] | ฿4.68 | [~฿2.2, ~฿11.7] |
Tail-adjusted CI warning: κ = 8.4 implies real 5%/95% tails are roughly 20–30% wider than the Gaussian CIs above. Treat lower bounds as ~฿2.0 (12m) / ~฿1.3 (24m) for stress purposes.
7. Where models disagree and why¶
| Disagreement | Magnitude | Driver |
|---|---|---|
| GBM-geom vs Mean-reversion at 24m | ฿4.07 vs ฿6.61 (+62%) | Drift sign: GBM extrapolates the 10y −6.3% CAGR forward; MR assumes price drifts back up toward longer-window mean. If energy-transition pressure on coal is structural, GBM is right; if cyclical, MR is right. |
| GBM-arith vs GBM-geom | ฿5.00 vs ฿4.66 (12m) | Pure arithmetic vs geometric mean of past returns. The 7.4 pp gap is the volatility drag (σ²/2). For a stock with 38.6% vol, this is huge — arithmetic drift over-states expected terminal value. |
| CI width 24m | ±~140% range | Vol of 38.6% over 2y compounds to σ√T = 54.6% log-vol → wide bands. Real bands wider given kurtosis 8.4. |
The forecast is drift-dominated, not vol-dominated, in terms of point estimate disagreement. The disagreement IS the answer: with 38.6% annual vol and an ambiguous drift, signal-to-noise at 2y horizon is low.
8. Confidence: LOW — and limits of this analysis¶
Confidence: L.
Limits: 1. Only 60 of 2,450 daily rows visible. All higher-moment, rolling, and regime statistics use the summary row's single-point estimates. No rolling vol, no regime dating, no Hurst, no variance ratio could be computed. 2. Zero factor data. SET, oil, gas, USD/THB, US10Y, China property — none in package. Beta and factor exposures fully absent. 3. Zero fundamentals. Per audit DO-NOT-FABRICATE list: no EPS, P/E, P/B, EV/EBITDA, ROE, book value, dividends, debt. No factor ranks (value/size/momentum/quality/yield) possible. Naive EPS×P/E model cannot be run. 4. Structural break risk not modelled: BANPU-BPP merger announced Oct 2025 (3 confirmed sources in package) is a corporate-structure change that may invalidate 10y stationarity assumptions. GBM and MR models implicitly assume the process generating 2016–2026 returns continues — this is likely violated. 5. Fat tails: κ = 8.4 means Gaussian CIs are too narrow. Reported intervals are lower bounds on uncertainty, not honest bounds. 6. Drift estimate fragility: μ̂ standard error over 10y ≈ σ/√10 = 12.2 pp. The −6.3% CAGR is statistically indistinguishable from zero (t ≈ −0.5). Direction of drift over 2y is essentially unknown from price data alone. 7. No survivorship/corporate-action audit beyond the April 2026 dividend adjustment noted by auditor.
Bottom line numerical takeaway: point estimate ฿4.7–฿6.1 in 12m, ฿4.1–฿6.6 in 24m, with honest 90% bands of roughly ฿2–฿10 at 12m and ฿1.5–฿12 at 24m. The bands are wider than the spread of model means — i.e. the noise dominates the signal at this horizon.