Plain-language summary
- What it solves
- Global macroeconomic data is abundant but rarely related to itself.
- Who it can serve
- Anyone following the world economy, and anyone studying causal analysis and scenarios.
- What it produces
- A monthly indicator of the state of the economy, the links between variables, scenarios and forecasts.
To make a highly interconnected economic system readable without hiding data revisions, benchmarks, small OOS samples or the limits of causal claims.
3 · What it produces
Several complementary views rather than a single number.
The Global Economy Pulse combines cycle and stress through robust statistics; the graph exposes hypothesised channels among macro variables, sectors, commodities, currencies and bottlenecks. Forecasts and scenarios remain separate and auditable.
4 · How it works
From time-t data to a governed output.
Targets become available only after their release lag; robust z-scores use prior history. Graph propagation applies sign, elasticity, force, uncertainty/damping and a cap on incoming absolute weights to limit explosive amplification.
5 · Data used
| Source | Information | Use in calculation | Control |
|---|---|---|---|
| World Bank WDI | global targets and annual indicators | release lags, lags/differences/rolling and point-in-time targets | quarantine and anti-leakage audit |
| FRED | commodities, markets, stress and cycle | means, changes, volatility and Pulse components | network retry/budget and missing-data controls |
| OECD CLI | leading cycle signal | gap from 100 and three-month momentum | series availability and quality |
| Structural graph | nodes/edges with sign, lag, elasticity and uncertainty | propagated features and prudential counterfactual scenarios | versioning, provenance and ablation |
Point-in-time and robust
Lags 0/1/2, differences, moving averages, missingness, release lags and rolling median/MAD robust z-scores based on prior history.
Heterogeneous ensemble
Ridge, Elastic Net, Huber, PCA+Ridge, gradient boosting and random forest; robust median ensemble and prequential selection based only on past folds.
Causal three-state GMM
Gaussian Mixture over Pulse/macro groups trained only on prior history; scenario engine kept separate from forecasting and the graph treated as a hypothesis layer.
Benchmarks before complexity
Expanding backtest with purge gap, naive benchmark, bootstrap skill, conformal intervals, OOS R²/correlation and stability diagnostics.
Workflow technical dossier
Methods, validation and implementation stack.
Runtime and packages
- NumPy and pandas for panels, features and audits.
- scikit-learn for regressors/classifiers, PCA, GMM and pipelines.
- NetworkX for the graph; SciPy for statistical methods; Matplotlib for charts.
- SQLite for state/vintages; requests/PyYAML for sources and registries; ReportLab/openpyxl for reports.
Validation
- Prequential selection: each fold selects using errors from earlier folds only.
- Paired bootstrap against benchmarks and 90% conformal intervals.
- Graph ablation and target-information audit for leakage and incremental-value checks.
Governance
- Fail-fast preflight, contract checkpoints and sealed review bundle.
- Research ex-post skill is separated from operational policy.
- A fresh live full run of the current version remains distinct from governance replay validation.
RPA and persistence
- Weekly GitHub Actions, SQLite state restore/persistence and forecast reconciliation.
- Artifacts, digest, report and gates before publication.
This is an experimental system, not an official projection or financial advice. Graph weights are expert hypotheses until empirically calibrated/stabilised; revisable macro data and structural breaks can change results.
See recent outputs
The Publications page can show multiple images from the same post or preview, with gallery navigation.
Potential transferability
Have a problem similar to World Economy Engine?
A first discussion can start from the objective, available data and success criterion without sending confidential information. A result observed here is not assumed to transfer automatically to another context.