{"$schema":"https://raw.githubusercontent.com/jsonresume/resume-schema/v1.0.0/schema.json","basics":{"name":"Keith So","label":"Quantitative Trading Analyst, Crude Oil","image":"https://saywise-production-profilepicturestoragebucket-kbfooccc.s3.amazonaws.com/profile-pictures/c8612a3d-d206-40f8-9e46-2377cc2b5b28/linkedin-1791241010716.png","summary":"Quantitative trader and engineer building data platforms and ML-driven trading systems across commodities, credit, and energy markets.","location":{"city":"London, United Kingdom"},"profiles":[{"network":"LinkedIn","username":"keith-so2727","url":"https://linkedin.com/in/keith-so2727"},{"network":"GitHub","username":"kitfunso","url":"https://github.com/kitfunso"}]},"meta":{"canonical":"https://saywise.com/member6900","version":"v1.0.0","lastModified":"2026-10-05T22:57:21.831Z"},"x_saywise":{"handle":"member6900","pronouns":null,"availability":null,"oneLiner":"Quantitative trader and engineer building data platforms and ML-driven trading systems across commodities, credit, and energy markets.","profileUrl":"https://saywise.com/member6900","markdownUrl":"https://saywise.com/member6900/profile.md","pdfUrl":"https://saywise.com/member6900/resume.pdf","archetype":{"code":"HS-DX","name":"Launchpad Summiteer","url":"https://saywise.com/sca/63e1b2243a1a","rarity":"One of the first Launchpad Summiteers on Saywise"}},"work":[{"name":"Unipec (trading arm of Sinopec)","position":"Quantitative Trading Analyst, Crude Oil","location":"London Area, United Kingdom","url":"https://sinopec.com","startDate":"2026-07-01","summary":"Designed and deployed the desk's crude data platform ingesting 41 datasets into a versioned DuckDB database served by a 32-page Streamlit application. Developed the landed-cost arbitrage engine and refinery netback layer covering 39 physical crude routes with 78-84% entry signal hit rate. Delivered a live Brent-Dubai spread forecast using machine learning with 0.44 walk-forward IC. Implemented physical market and positioning monitors including Platts North Sea window, forward curves, and CTA replica tracking."},{"name":"M&G Investments","position":"Quantitative Analyst, Insurance Solutions","location":"London Area, United Kingdom","url":"https://mandginvestments.com","startDate":"2024-11-01","endDate":"2026-07-01","summary":"Designed and priced levered proceeds asset swaps with a Streamlit dashboard for UK gilts/linkers analysis. Delivered strategic asset allocation for multi-asset portfolios using Ortec Finance with multi-objective optimisation. Developed two dashboards: a real-time market analysis app in Shiny for Python and a Streamlit peer analysis app on SFCR data. Built a Solvency II Market Risk model in Python reducing computation time by 80%."},{"name":"Anglo American","position":"Quantitative Trader, Quant Trading Team","location":"Greater London, England, United Kingdom","url":"https://angloamerican.com","startDate":"2022-01-01","endDate":"2024-10-01","summary":"Identified and monetised short- and long-term derivatives trading opportunities across discretionary, systematic and option books while managing risk and delta/gamma hedging. Generated +260k PnL on 50k VaR in 2023 and +600k on 150k VaR in H1 2024. Researched, developed, and executed low-frequency quantamental models across 13 commodities using Bloomberg, SMM, Fastmarkets, and Oceanbolt data. Developed ML models achieving backtest portfolio Sharpe ratios of 1.5-2."},{"name":"Brady Technologies","position":"Quantitative Analyst Intern, Quantitative Analytics","location":"Greater London, England, United Kingdom","url":"https://bradytechnologies.com","startDate":"2021-10-01","endDate":"2021-12-01","summary":"Developed volume and price-direction ML models to beat VWAP pricing in half-hourly energy markets achieving over 80% accuracy with Ridge regression. Built a Python backtest engine that supported a new product launch."},{"name":"Allstate Northern Ireland","position":"Investment Financial Analyst, FP&A","location":"Belfast Metropolitan Area","url":"https://allstateni.com","startDate":"2019-10-01","endDate":"2020-09-01","summary":"Performed financial analysis on Allstate's $89B investment portfolio including P&L and NII trending, yield roll-forwards, dividend reports, and SOX controls. Automated monthly, quarterly and annual reporting in Excel."},{"name":"Cigna","position":"Actuarial Intern","location":"Hong Kong","startDate":"2018-06-01","endDate":"2018-08-01"},{"name":"AIA","position":"Summer Intern","location":"Hong Kong","url":"https://aia.com","startDate":"2017-08-01","endDate":"2017-08-01"}],"education":[{"institution":"University of Strathclyde","studyType":"MSc Quantitative Finance","startDate":"2020-09-01","endDate":"2021-09-01"},{"institution":"Udacity","studyType":"AI in Trading in Quantitative Finance","startDate":"2020-01-01","endDate":"2020-01-01"},{"institution":"Heriot-Watt University","studyType":"BSc Actuarial Science","startDate":"2015-09-01","endDate":"2019-06-01"},{"institution":"Hillhead High school","url":"https://hillheadhigh.glasgow.sch.uk","startDate":"2009-01-01","endDate":"2014-01-01"}],"projects":[{"name":"Hippo (npm: hippo-memory)","description":"Memory system for AI agents built with SQLite and zero dependencies. Features decay by default, strengthening through retrieval, and full provenance tracking. Exposed as an MCP server for use across agent frameworks."},{"name":"Luminus (npm: luminus-mcp, PyPI: luminus-py)","description":"Grid data provider for AI agents with 69 tools covering ENTSO-E and BMRS, including generation mix, day-ahead and intraday prices, balancing, and carbon intensity."},{"name":"Resona","description":"In-browser health assessment tool measuring FEV1, FVC, PEF via acoustic spirometry and tremor/gait via motion sensors. Built as part of AI and agent hackathons."},{"name":"2chain","description":"Tool registry and discovery system for AI agents featuring hybrid retrieval, reliability gating, and JSON Schema contract enforcement. Initially built in MongoDB Agentic Evolution Hackathon, later rebuilt self-hosted."},{"name":"HarnessArena","description":"Testing framework and leaderboard for comparing AI agent harnesses against the same task and hidden test suite. Tracks real recorded runs with full traces for debugging and evaluation."},{"name":"Floater","description":"Agentic system for automated invoice payment with cash-floor and counterparty-distress guardrails. Built for Cursor x Briefcase Money Movement track."},{"name":"Ask the Market","description":"RAG system for querying Lloyd's of London syndicate annual reports with source attribution. Built on Aurora PostgreSQL with pgvector and AWS Bedrock."},{"name":"flightrec-slack","description":"Slack agent built on flightrec, a zero-dependency hash-chained flight recorder replaying every tool call and decision for audit. Exposed as both Slack agent and MCP server."},{"name":"Engram","description":"Memory system for AI agents built natively on CockroachDB with half-life decay, scoped vector recall, and time-travel audit capabilities for compliance and debugging."},{"name":"armsmith","description":"Performance tuning system for Arm Graviton inference reading low-level Performix counters. Autonomously optimises inference speed while maintaining quality guardrails."},{"name":"Model to Market: The Quantitative Hack (AI Engine)","description":"Developed a multi-strategy trading system across FX, metals and crypto using $1M virtual credits. Built 30 strategies and executed a medium-frequency systematic approach through blind-trading final."},{"name":"Shell.ai / HackerEarth Hackathon 2025","description":"Hybrid Lasso and CatBoost pipeline for predicting sustainable fuel blend properties. Solo entry achieving top-ranked individual submission among 7,000 participants."},{"name":"Alphien Copper Challenge 2021","description":"Systematic long-short copper trading strategy using momentum and volatility thresholds without leverage. Achieved consistent Sharpe ratios across training and unseen periods."},{"name":"UBS Quant Hackathon 2020","description":"Two-stage competition entry combining trend-following strategies on the S&P 500 with machine learning models for structured product pricing. Advanced to finals with FX carry strategy."},{"name":"Global Precious Metal Allocation Competition 2020","description":"Multi-asset allocation strategy across precious metals using momentum signals. Exploited timing differences between metal price movements to outperform a gold-only benchmark."}],"skills":[{"name":"Commodities"},{"name":"Leadership"},{"name":"Problem Solving"},{"name":"Actuarial Science"},{"name":"Data Analysis"},{"name":"Financial Modeling"},{"name":"Derivatives"},{"name":"Financial Analysis"},{"name":"Portfolio Management"},{"name":"Machine Learning"},{"name":"Microsoft Excel"},{"name":"Microsoft Office"},{"name":"Microsoft Word"},{"name":"PowerPoint"},{"name":"Visual Basic for Applications (VBA)"},{"name":"R"},{"name":"SPSS"},{"name":"Claude Code"},{"name":"Codex"},{"name":"OpenClaw"},{"name":"Python"},{"name":"TypeScript"},{"name":"Node.js"},{"name":"MCP"},{"name":"DuckDB"},{"name":"Airflow"},{"name":"Streamlit"},{"name":"Databricks"},{"name":"Refinitiv RDP"},{"name":"Refinitiv API"},{"name":"Bloomberg Terminal"},{"name":"Bloomberg API"},{"name":"AI Agents"},{"name":"Probability & Statistics"},{"name":"Portfolio Optimisation"},{"name":"Risk Management"},{"name":"VaR"},{"name":"CVaR"},{"name":"Derivative Pricing"},{"name":"Numerical Methods"},{"name":"Econometrics"},{"name":"Commodities Trading"},{"name":"Futures Trading"},{"name":"Spreads Trading"},{"name":"Options Trading"},{"name":"Systematic Trading"},{"name":"SQLite"},{"name":"PostgreSQL"},{"name":"CockroachDB"},{"name":"Vector Search"}],"certificates":[{"name":"Market Microstructure","date":"2025-06-01","issuer":"Coursera"},{"name":"Bloomberg Market Concepts","date":"2021-05-01","issuer":"Bloomberg LP"},{"name":"Neural Networks and Deep Learning","date":"2021-01-01","issuer":"Coursera"},{"name":"Introduction to Trading, Machine Learning & GCP","date":"2020-09-01","issuer":"Coursera"},{"name":"C++ for Programmers","date":"2020-08-01","issuer":"Udacity"},{"name":"Intro to Artificial Intelligence","date":"2020-06-01","issuer":"Udacity"}]}