Project Charta

1 Context and Scope

Gold has been called a safe haven for centuries — when inflation rises, the advice is always the same: buy gold, protect your wealth. That narrative got louder in 2024–2025 when the gold price broke $3,000 per ounce for the first time, right after the 2022–2023 inflation wave. But most “gold is safe” analyses only look at price charts. What actually happens to physical gold trade flows when inflation rises? Do high-inflation countries import more gold? Does the mix between gold, silver, and platinum shift during economic stress?

Switzerland makes this particularly interesting: around 70% of the world’s refined gold passes through Swiss refineries, despite Switzerland having no gold mines of its own.

The project addresses these questions:

  1. Where does gold flow during high-inflation periods, and do those flows change direction?
  2. Do countries with higher inflation consistently import more gold — by weight and by value?
  3. Is gold special among precious metals, or do silver and platinum show the same patterns?
  4. What role does Switzerland play as a refining hub, and does it grow stronger during global economic stress?
  5. Which type of inflation — food, energy, or core CPI — has the strongest link to gold trade activity?

The final product will be an interactive scrollytelling website created with streamlit.

2 Project Objectives and Success Criteria

  • Enable users to explore how precious metals trade is distributed across countries, commodity types, and time periods.

  • Enable users to assess the relationship between a country’s inflation rate and its gold import activity.

  • Enable users to compare gold, silver, and platinum as traded commodities during inflationary periods.

  • Deliver a coherent data story with a clear narrative arc — not just a set of charts, but a guided journey with a beginning, rising tension, and a conclusion.

  • Ensure full reproducibility from the GitHub repository using Quarto.

2.1 Success Criteria

Criterion Minimum
Chart variety ≥ 4 chart types
Interactivity ≥ 2 interactive elements
Dataset size ≥ 500 rows combined
Variable balance ≥ 3 categorical + 3 numerical
Narrative chapters ≥ 3 chapters with transitions
Reproducibility Runs from repo following setup instructions
Presentation Within ±2 min of 10-minute limit

2.2 Out of Scope

Price prediction, investment advice, real-time data, and individual investor analysis are all out of scope. This is a historical, country-level analysis — not a forecasting or recommendation tool.

3 Stakeholder Analysis

The VDSS instructors are the primary client and assessor — they set the evaluation criteria, run coaching sessions, and assign the grade. The project team of three is responsible for all deliverables while running this alongside seven other modules. ZHAW peers attend the final presentation but have no influence on the grade. After publication, the website may attract a broader audience of finance-curious individuals and professionals, though they have no active role in the project.

In terms of influence and interest: the team sits highest on both axes since they do all the work and care most about the outcome. The instructors have high influence but are more distant from day-to-day decisions. Peers and the general public are low influence across the board.

4 User Analysis

4.1 Persona 1 — Lena Meier (24), Finance-Curious Student

Lena is a 3rd-semester Business Informatics student at ZHAW. She has CHF 5,000 to invest and keeps hearing from friends that gold is “the safest option” — but she’s not sure whether to trust that. She has no formal finance training, reads basic charts fine but struggles with scatter plots and correlations, and uses her iPhone 14 as her primary device. She’d visit the website once or twice, explore a bit, maybe share something.

Jobs: understand whether gold is a sensible investment for someone without much capital; be able to talk about it with friends using real data; feel confident she’s making an informed decision rather than just following social media.

Pains: financial articles are full of jargon; professional tools like Bloomberg feel overwhelming; she can’t tell neutral analysis from gold seller marketing; charts she finds online are static and don’t let her filter for her own country.

Gains: a clear visual answer written for non-experts; interactive features she can explore at her own pace; a concrete verdict at the end she can actually remember.

4.2 Persona 2 — Thomas Brunner (52), Independent Financial Advisor

Thomas runs his own wealth advisory practice in Zürich. He has 20+ years of experience and has recommended a 5–10% gold allocation to clients for years — but he wants neutral, data-backed evidence to support that, not ETF brochures. He reads NZZ and Bloomberg daily, is comfortable with complex charts, and works desktop-first with PowerPoint for client presentations.

Jobs: find country-level evidence that gold acts as an inflation hedge; extract specific numbers for client slides; show clients something credible and neutral.

Pains: ETF marketing material is too biased to use with clients; academic papers are full of regression tables clients can’t follow; most online visualizations are either too simple or too overwhelming; country-level trade flow data is hard to find.

Gains: well-designed neutral charts he can screenshot into PowerPoint; a country filter to highlight markets his clients care about; clear information about data sources so he can answer methodology questions on the spot.

5 Situation Assessment

5.1 Data

Dataset 1 — UN Global Commodity Trade Statistics (Kaggle): ~8.2M rows total, filtered to precious metals (HS codes 7106–7112) gives roughly 10,000–50,000 rows. Period: 1988–2016. Key variables: country, commodity, flow direction (import/export), trade value in USD, weight in kg, year.

Dataset 2 — World Bank Global Inflation Database (Ha, Kose & Ohnsorge, 2023): ~50,000 rows after reshaping (209 countries × 6 inflation types × 55 years). Period: 1970–2025. Key variables: country, country code, inflation type (Headline CPI, Food CPI, Energy CPI, Core CPI, PPI, GDP Deflator), economy type (Advanced / Emerging / Low-Income), year, inflation rate.

The combined dataset joined on country and year will have 6 categorical and 4 numerical variables — well above the course minimums.

5.2 Team and Tools

Three team members, each contributing roughly 4–6 hours per week over ~10 weeks. Tools: Python (Pandas, NumPy) for data processing, Quarto for the website, Plotly and Streamlit for charts and GitHub for version control and deployment.

5.3 Constraints and Risks

The project runs alongside 7 other modules, so available time per person is limited. The UN trade data ends in 2016, which means the 2022–2023 inflation spike can’t be analyzed through trade flows. Any non-standard tools beyond what was introduced in lectures need justification.

Risk Likelihood Mitigation
UN dataset too large to process locally Medium Filter to precious metals HS codes immediately; use chunked Pandas reading if needed
Country name mismatches between datasets High Join on ISO-3166 codes, not names; build a manual mapping table early
Scrollytelling harder to implement than expected Medium Fallback: standard Quarto site with static Plotly charts — still meets all requirements
Time pressure from parallel modules High Buffer week at end of schedule; cut nice-to-haves before cutting core visualizations
Uneven work distribution Low Clear roles from week 1; transparent commit history on GitHub

6 Visualization Concept

The product is an interactive scrollytelling website, a long-form data story where visualizations appear as the user scrolls. We chose this format over a dashboard because it guides users through one insight at a time and creates a clear narrative arc.

Introduction
Three animated key metrics count up on scroll: the record gold price ($3,000/oz), the peak inflation rate from the 2022–23 wave, and total precious metals trade volume in the dataset. No chart yet, just numbers big enough to set the scale before the analysis begins.

Where Does Gold Flow?
A choropleth world map with a light-to-dark gold color scale shows trade volume by country. Most people assume gold moves from mines to banks. The map immediately reveals something stranger: Switzerland, with zero gold mines, lights up as one of the world’s dominant gold hubs. Users can filter by country and hover for exact trade values.

When Inflation Strikes
A scatter plot (x: inflation rate, y: gold imports on a log scale, color: economy type) tests the central hypothesis directly. The log scale prevents large economies from swamping the pattern; a trend line gives the at-a-glance answer. An annotated line chart of gold trade volume over time runs alongside it, with events like the 2008 financial crisis marked directly on the chart.

Gold vs. Silver vs. Platinum
A grouped bar chart compares trade volumes for all three metals across years. A toggle between absolute values and percentage shares lets users switch between scale and composition. The question: is gold special, or do all precious metals move together during economic stress?

The Swiss Connection
A Sankey flow diagram shows raw gold flowing into Switzerland from mining nations and refined gold flowing out to demand centers, with flow widths encoding trade volume. Around 70% of the world’s refined gold passes through Swiss refineries; the Sankey makes that number physical rather than abstract.

The Verdict
Three to four large summary metric cards answer the research questions directly. No new charts, just the clearest possible summary of what the data showed. Skimmers get their conclusion; the previous chapters back it up.

7 Project Plan

Phase 1: Data Acquisition
09.04.–13.04.26
Task Who By
Download UN Trade Dataset from Kaggle (1.2 GB) and save locally Vale 10.04.26
Download World Bank Inflation Excel and push to repo Aisosa 10.04.26
Filter UN data to precious metals (HS codes containing "gold", "silver", "platinum"), save as CSV Vale 11.04.26
Reshape inflation data from wide to long with pd.melt(), save as CSV Aisosa 11.04.26
Background research: 2 articles on gold as investment + Switzerland as refining hub, note key facts Thivi 12.04.26
Background research: 2 articles on 2022–23 inflation wave + central banks and gold Vale 12.04.26
Background research: 2 articles on geopolitics + gold, BRICS vs. dollar Aisosa 12.04.26
Meeting: share research findings, identify top-10 gold trading countries, confirm chapter assignments All 13.04.26
Phase 2: Join Data and First Charts
14.04.–20.04.26
Task Who By
Build ISO-3166 country code mapping (which names match, which need manual fixes) Thivi 15.04.26
Join both datasets on country code + year, save combined CSV Vale 16.04.26
Data quality check: missing values, outliers, plausibility Aisosa 16.04.26
First exploratory chart: choropleth world map (gold trade per country) in Plotly Vale 18.04.26
First exploratory chart: bar chart (gold vs. silver vs. platinum total volume) in Plotly Aisosa 18.04.26
First exploratory chart: line chart (gold trade over time) in Plotly Thivi 18.04.26
Align on story arc: 5 chapters with core questions and transitions All 18.04.26
Start data report: document data sources and cleaning steps Thivi 20.04.26
Review meeting: discuss first charts, give feedback All 20.04.26
Phase 3: Build Core Visualizations
21.04.–27.04.26
Task Who By
Ch. 1 "Where Does Gold Flow?" — aggregate data, build choropleth, write context text + insight box Vale 24.04.26
Ch. 2 "When Inflation Strikes" — prep data, build scatter plot with trend line, write text + insight Vale 27.04.26
Ch. 3 "Gold vs. Silver vs. Platinum" — pivot data, build grouped bar chart, write text + insight Aisosa 24.04.26
Ch. 4 "The Swiss Connection" — extract Switzerland trade partners, build Sankey, write text + insight Aisosa 27.04.26
Intro — animated key metrics (gold price record, inflation peak, trade volume), write hero text Thivi 24.04.26
Ch. 5 "The Verdict" — calculate summary numbers, build metric cards, write conclusion text Thivi 27.04.26
Code review: each person reviews the other two's chapters, leave feedback on GitHub All 27.04.26
All chapters done (data + charts + text)
27.04.26
Phase 4: Assemble Streamlit App
28.04.–04.05.26
Task Who By
Set up app.py base structure (navigation, page layout, styling/theme) Aisosa 30.04.26
Integrate chapters 1 + 2 into Streamlit (embed charts, add filters/sliders) Vale 02.05.26
Integrate chapters 3 + 4 into Streamlit (embed charts, add toggles/filters) Aisosa 02.05.26
Integrate intro + chapter 5 into Streamlit (metric cards, conclusion section) Thivi 02.05.26
Write requirements.txt and README with setup instructions Vale 03.05.26
Deploy app to Streamlit Cloud and test together Aisosa 04.05.26
Proofread all texts and insight boxes in the app Thivi 04.05.26
Streamlit app live
04.05.26
Phase 5: Polish and Documentation
05.05.–11.05.26
Task Who By
Fix bugs in chapters 1 + 2, check colors and tooltips Vale 07.05.26
Fix bugs in chapters 3 + 4, test responsive design Aisosa 07.05.26
Fix bugs in intro + chapter 5, optimize load time Thivi 07.05.26
Comment and clean up code (own chapters) All 09.05.26
Finalize data report: Vale writes ch. 1+2, Aisosa ch. 3+4, Thivi ch. 5+intro All 09.05.26
Finalize project charter and check on GitHub Pages Thivi 09.05.26
Coaching session: get feedback from instructors All 11.05.26
Phase 6: Presentation
12.05.–18.05.26
Task Who By
Slides: intro + research questions + data sources (slides 1–5) Thivi 14.05.26
Slides: live demo prep chapters 1–2 (slides 6–8) Vale 14.05.26
Slides: live demo prep chapters 3–4 + conclusion (slides 9–12) Aisosa 14.05.26
Rehearsal 1: full run-through, time it All 16.05.26
Rehearsal 2: incorporate feedback, run again All 17.05.26
Prepare answers to likely instructor questions (each person covers their own chapters) All 18.05.26
Phase 7: Final Check and Submission
19.05.–20.05.26
Task Who By
Final app test: click through all chapters, check all filters Aisosa 19.05.26
Clean up GitHub repo (.gitignore, no tmp files, folder structure tidy) Vale 19.05.26
Checklist: app URL, repo link, GitHub Pages docs, slides — everything there? Thivi 20.05.26
Moodle submission: all three confirm All 20.05.26
Submission
20.05.26

8 Roles and Contact Details

Valentin Schwarz — Data Engineering
Owns the UN trade data pipeline: download, filter to precious metals HS codes, join with inflation data, and save combined CSV. Maintains pyproject.toml, README, and repo structure.
Contact: vschwarz@ik.me

Aisosa Omokaro — App Infrastructure
Owns the World Bank inflation data: download, reshape from wide to long, and run data quality checks. Sets up the Streamlit app base structure and handles deployment to Streamlit Cloud.
Contact: aisosashina@gmail.com

Thiveja Thirukumar — Documentation
Leads background research and builds the ISO-3166 country code mapping. Manages the data report, proofreads all narrative texts and insight boxes, finalizes the project charter, and coordinates the submission checklist.
Contact: thiveja.thirukumar@gmail.com