Projects

Selected work

Three quantitative research projects from the MSc, followed by shipped engineering work. Each research project states the question, the method and the result — including where the result was negative.

Quantitative research

MSc group project
WorldQuant University
~20 years of daily data Python
Statsmodels
Scikit-learn
Pandas

Volatility Regime Asset Allocation Strategy

Can a portfolio do better by switching between assets depending on market conditions, rather than holding a fixed mix?

  • Sourced and cleaned two decades of daily prices for a US equity fund, a long-bond fund and gold, alongside the VIX volatility index, then converted prices to returns.
  • Used a Hidden Markov Model to sort the market into three conditions — calm, neutral and high-stress — chosen because market conditions cannot be observed directly, only inferred from how volatility behaves.
  • Mapped each condition to the asset that had historically performed best in it, then backtested the switching strategy against an equal-weight portfolio and simple buy-and-hold.
ResultThe strategy returned 2.3% a year against 8.0% for equal-weight and 8.7% for buy-and-hold. The practical lesson: acting on a signal that arrives after the market has already moved, and concentrating into a single asset, cost more than the switching gained.
MSc group project
WorldQuant University
Daily data, 2005–2022 Python
TensorFlow
Pandas

Multi-Asset Return Analysis and Forecasting

How do different asset classes move in relation to each other, and can short-term returns be predicted from past prices?

  • Prepared daily data for equities, long and short government bonds, gold and oil; tested each series for stationarity, converted to log returns, and produced full correlation and covariance analysis.
  • Found that equities and long bonds moved in opposite directions on average, that gold showed little relationship with anything else and was therefore the most useful diversifier, and that the equity–bond relationship broke down in 2022.
  • Compared three forecasting models — a feedforward network, an LSTM for sequential data, and a CNN using image representations of price windows — plus a joint model predicting several assets at once.
ResultNone of the models beat a simple benchmark out of sample. The honest conclusion is that short-horizon returns are not reliably predictable from price history alone, and the durable value of the work sits in the correlation structure rather than the forecasts.
MSc group project
WorldQuant University
Simulated & real datasets Python
Statsmodels
Scikit-learn

Regression Modelling and Model Selection Study

How do you decide which variables belong in a model, and what goes wrong when you get it wrong?

  • Ran simulations showing that leaving out a relevant variable biases the results, and that collecting more data improves precision but does not remove the bias — a common and costly mistake in applied analysis.
  • Compared model selection using AIC, BIC and adjusted R², and benchmarked ordinary least squares against weighted least squares and LASSO.
  • Confirmed that price series behave like a random walk while returns do not — the reason financial analysis is done on returns rather than price levels — and tested for a structural break to detect where a relationship changes.
ResultThe final model explained 63% of variation, improving to 73% once unequal variance was accounted for.

Data engineering

Streaming analytics & NLP pipeline

Large-scale analytics pipeline on Apache Spark using Word2Vec embeddings and K-Means clustering for text analysis and pattern discovery.

Python · Spark · NLP · Word2Vec · K-Means

Big data analytics project

Processed and analysed large-scale datasets across a distributed stack to extract insight supporting decision-making, with reporting output in Matplotlib.

Python · Hive · Hadoop · Spark

Software

M-Pesa STK Push integration

Web application integrating M-Pesa STK Push for mobile payments, with backend logic to trigger payment requests and handle transaction callbacks.

React · Node · Daraja API

Afyalytics health platform

Interface design for a health analytics platform, delivered as a client engagement.

Figma · UI/UX

Scorptech Enterprise site

Responsive company website designed, built and deployed for a paying client.

JavaScript · HTML · CSS · Vercel

E-health management system

Full-stack records and scheduling system built during software engineering training.

Ruby on Rails · JavaScript · MongoDB

Mobile banking app

Hybrid mobile banking application covering account views and transfers.

React · Node · Cordova

Weather forecast dashboard

Dashboard consuming a live forecast API, with responsive layout and data presentation.

JavaScript · APIs

© 2026 Jackline Jebet Nairobi, Kenya · Open to remote