Executive Summary
- Dual precious-input exposure — gems ≈65% + gold ≈20% of COGS
- Extreme earnings volatility — σ≈HK$5.0m (FY22–25); HK$8.0m incl. FY20
- HK$63m dead inventory — ≥3 yrs old, depreciating as diamonds fall −32%
- Gold surged +154% while diamonds fell −32% — dual squeeze
- Governance: AI explains → CFO decides (双层风控 dual-layer control)
Data updated: June 24, 2026 · Sources: LBMA, World Bank, gold-api.com, floatrates.com
Market Intelligence
Gold vs Diamond — Rebased % Change
Click any point to rebase both indices to 0%.
Customer Currency Strength vs USD
Line UP = currency stronger / more expensive to buy vs USD (appreciation); DOWN = weaker. When a customer currency weakens, buyers pay more for UJDC's USD-invoiced products.
CFO Decision Engine
Control Panel — Adjust Levers, See Impact in Real Time
Move any slider to recompute CAPM → WACC → risk-adjusted NPV. Or let the ML optimiser find the best combination.
How the levers affect NPV
- ↑ Volatility → more unhedged risk → reduces NPV
- ↑ Hedge ratio → less commodity risk, adds hedge cost
- ↓ Inventory days → better discipline → improves NPV
- ↑ Beta → higher WACC → heavier discounting · ↑ Confidence → higher benefit
Explainable AI Risk Drivers
SHAP Local Contribution
Each bar = how this slider helps/hurts NPV vs neutral.
Global Feature Importance
Which levers matter most (mean |SHAP|).
Risk Matrix
Live traffic-light status from current sliders.
ML Model Lab
Predict Gross-Margin Deviation (bps) from Operational Drivers
Choose a model, set hyperparameters, and train on the server in real time (scikit-learn · XGBoost · LightGBM). Target: GM deviation from 6 grounded drivers (gem/gold price, lead-time, design mix, inventory age, AUD/USD). Real fit + k-fold cross-validation — not a mock.
Scenario & Sensitivity
NPV Heat Map — Hedge × Inventory Days
Green = positive NPV, Red = negative. Find the optimal zone.
NPV Waterfall Bridge
Tornado Sensitivity
Methodology & Academic Evidence
Financial Model Equations
The valuation framework connecting CFO sliders to NPV output. Each equation is computed in real time.
1. Cost of Equity (CAPM):
\( R_e = R_f + \beta \cdot (R_m - R_f) \)
Where \(R_f\) = 3.5% (HK risk-free), \(\beta\) = equity beta from slider (peer median 1.15), \(R_m - R_f\) = 6.5% (HK equity risk premium). Example: \(R_e = 3.5\% + 1.15 \times 6.5\% = 10.97\%\)
2. Weighted Average Cost of Capital:
\( \text{WACC} = w_e \cdot R_e + w_d \cdot R_d \cdot (1 - T_c) \)
Where \(w_e\) = 70% equity weight, \(w_d\) = 30% debt, \(R_d\) = 5.5% (bank lending rate), \(T_c\) = 16.5% (HK profits tax). Example: WACC = 70%×10.97% + 30%×5.5%×(1−16.5%) = 9.06%
3. Unhedged Commodity Risk:
\( \text{Unhedged Risk} = \sigma_{\text{gold/gem}} \times (1 - h) \)
Where \(\sigma\) = gold/gem price volatility from slider, \(h\) = hedge ratio. Higher vol with low hedge = more exposed. Example: 18%×(1−0.91) = 1.6%
4. Inventory Improvement Effect:
\( \text{Inv. Effect} = \text{Prov.Avoided} \times \frac{\max(0,\; D_{\text{current}} - D_{\text{target}})}{300} \)
Where \(D_{\text{current}}\) = 520 days (UJDC gross aged-stock basis; audited net FY2025: ~322 days), \(D_{\text{target}}\) from slider. Reducing inventory days frees dead stock. Example: 1.2 × (520−300)/300 = 0.88 HK$m
5. Risk-Adjusted Benefit:
\( \text{RA Benefit} = \text{Inv.Effect} \times \text{Confidence} \times (1 - 1.5 \times \text{Unhedged Risk}) \)
Management confidence discounts the AI's estimated benefit. Commodity penalty further reduces it if unhedged. Example: 0.88 × 0.60 × (1−1.5×0.016) = 0.515 HK$m
6. Net Present Value:
\( \text{NPV} = -C_0 + \sum_{t=1}^{5} \frac{(\text{RA Benefit} - \text{Opex} - h \times 0.12) \cdot \rho_t}{(1+\text{WACC})^t} \)
Where \(C_0\) = AI implementation cost, \(\rho_t\) = ramp-up [30%, 60%, 85%, 100%, 100%], Opex = annual AI operating cost, \(h \times 0.12\) = hedging programme cost. Positive NPV + payback < 12mo → pilot approved.
7. SHAP Attribution (Shapley Value):
\( \varphi_i = \sum_{S \subseteq N \setminus \{i\}} \frac{|S|!(M-|S|-1)!}{M!} [f(S \cup \{i\}) - f(S)] \)
Fair attribution of feature \(i\)'s contribution to the prediction. Each feature's SHAP value sums to the difference between the model output and the baseline. Used above in the local contribution chart.
ML Code Excerpts
import shap
from sklearn.ensemble import GradientBoostingRegressor
model = GradientBoostingRegressor(n_estimators=400, max_depth=3,
learning_rate=0.04).fit(X_train, margin_dev)
explainer = shap.TreeExplainer(model)
shap_values = explainer.shap_values(X_test)
shap.summary_plot(shap_values, X_test, feature_names=FEATURE_NAMES)
from sklearn.linear_model import LinearRegression
import numpy as np
naive = LinearRegression().fit(M.reshape(-1,1), margin).coef_[0]
causal = LinearRegression().fit(np.c_[M, age], margin).coef_[0] # do(Markdown)
# Pearl's back-door: naive=134 bps, causal=140 bps (actionable)
from scipy.optimize import differential_evolution
BOUNDS = [(0.8,1.5), (0.08,0.35), (220,400), (0.50,1.00),
(0.05,0.80), (0.20,3.00), (0.20,0.90), (0.02,0.30)]
def neg_ra_npv(x):
beta, vol, days, hedge, capex, prov, conf, opex = x
ra = prov * conf * (1 - vol*(1-hedge)*1.5)
annual_net = ra - opex - hedge*0.12
cfs = [-capex] + [annual_net*r for r in [0.3,0.6,0.85,1.0,1.0]]
wacc = 0.70*(0.035+beta*0.065) + 0.30*0.055*(1-0.165)
return -sum(cf/(1+wacc)**t for t,cf in enumerate(cfs))
best = differential_evolution(neg_ra_npv, BOUNDS, seed=7)
References
Bank for International Settlements. (2022). Triennial central bank survey. https://www.bis.org/statistics/rpfx22.htm
Brealey, R. A., Myers, S. C., & Allen, F. (2020). Principles of corporate finance (13th ed.). McGraw-Hill.
Federal Reserve Bank of St. Louis. (2025). Foreign exchange rates: H.10. https://fred.stlouisfed.org/categories/94
Hillier, D., Ross, S., Westerfield, R., Jaffe, J., & Jordan, B. (2016). Corporate finance (3rd European ed.). McGraw-Hill.
Ito, T., Koibuchi, S., Sato, K., & Shimizu, J. (2012). The choice of an invoicing currency. Int. J. Finance & Economics, 17(4), 305–320.
Ke, G., et al. (2017). LightGBM. NeurIPS 30, 3146–3154.
London Bullion Market Association. (2025). LBMA gold price PM fixing. https://www.lbma.org.uk/prices-and-data
Lundberg, S. M., & Lee, S.-I. (2017). A unified approach to interpreting model predictions. NeurIPS 30, 4765–4774.
O'Connor, F. A., Lucey, B. M., Batten, J. A., & Baur, D. G. (2015). The financial economics of gold. Int. Review of Financial Analysis, 41, 186–205.
Pearl, J. (2009). Causality (2nd ed.). Cambridge University Press.
Renneboog, L., & Spaenjers, C. (2012). Hard assets: Returns on rare diamonds and gems. Finance Research Letters, 9(4), 220–230.
Saltelli, A., et al. (2008). Global sensitivity analysis: The primer. Wiley.
Sharpe, W. F. (1964). Capital asset prices. The Journal of Finance, 19(3), 425–442.
Storn, R., & Price, K. (1997). Differential evolution. J. Global Optimization, 11(4), 341–359.
World Bank. (2025). Commodity markets: Pink Sheet. https://www.worldbank.org/en/research/commodity-markets
AI Tools Acknowledgment:
Anthropic. (2024–2026). Claude Code (CLI) & Claude Opus 4 [LLM]. https://claude.ai/ — Dashboard development, data visualisation, Python chart generation.
OpenAI. (2024–2026). ChatGPT (GPT-4o) [LLM]. https://chatgpt.com/ — Assignment structure design, financial logic peer review, UI/UX advisory. Conversation: thetawave.ai.
Google. (2026). Gemini 3.5 Flash [LLM], via CometAPI. — Grounded RAG CFO co-pilot (anti-hallucination decision support).