Skip to content
View martex-dev's full-sized avatar
🧠
Locked in flow state
🧠
Locked in flow state

Block or report martex-dev

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Content in all repositories owned by your account will be closed.
Maximum 250 characters. Please don’t include any personal information such as legal names or email addresses. Markdown is supported. This note will only be visible to you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
martex-dev/README.md
Intro

Focus Domain Style

Followers Repos Profile views


πŸ‘¨β€πŸ’» About

I'm a self-taught, project-driven builder working toward becoming an AI & Machine Learning engineer β€” learning by shipping real, working tools rather than following a fixed curriculum. Currently a student, building outside of that on my own track.

I like applying ML and coding skills to finance, trading and quant concepts β€” creating tools that genuinely help investors and traders.

I like taking an idea from "does anyone actually need this" through to a live, tested product β€” not just a prototype.

Highlights

πŸš€ What I'm building

I build tools that solve one real problem well and are honest about their own limits β€” usually with an AI-assisted workflow (Claude Code) and a bias toward getting things correct before getting them polished.

Work is grouped below by the problem it belongs to. A category appears here once something is shipped in it.


β—† Flagship

Long-running systems built to production standards rather than demo standards β€” the ones worth reading the source of.

martex-quant β€” quantitative research platform for crypto Β stars

125 pre-registered trials across 120 hypotheses, walk-forward backtesting with realistic fees, deflated-Sharpe validation, Monte Carlo against prop-firm rule sets, paper trading, and an operations dashboard. It says plainly on the tin that it is not a profitable trading bot β€” the permanent ledger of every hypothesis that failed is the product, and the tooling exists to produce more of it.

Python Β· Polars Β· ccxt Β· pydantic β€” 184 commits Β· MIT Β· CI green


πŸ“ˆ Quantitative Finance & Trading

Market structure, options pricing, and the calendar of things that actually move prices.

Project What it does Stack
factor-exposure Regresses a portfolio's monthly excess returns on the five Fama-French factors plus momentum, to answer whether performance is alpha or just cheaply-bought beta. Every loading carries its standard error, t-statistic and 95% interval β€” a tilt that can't be told apart from zero is drawn hatched rather than reported as a small one, and a low RΒ² is presented as a finding rather than hidden Python Β· FastAPI Β· statsmodels Β· React
implied-move Β· live β†— Options-implied expected move before earnings. Separates the mean absolute move from a true 1Οƒ, which most calculators quietly conflate β€” a ~20% understatement of the real band Next.js Β· TypeScript
market-calendar Β· live β†— Day-by-day calendar of everything that could move US stocks β€” FRED macro releases and S&P 500 / Nasdaq-100 earnings, merged into one list ranked by impact Next.js Β· TypeScript Β· Turso

🧠 Machine Learning & Data Science

Making models fail honestly in testing instead of expensively in production. These five compose: find leaks statically, catch what static analysis can't at runtime, split correctly, see the split, then trust what comes out.

Project What it does Stack
timeleak β€” pip install timeleak Static linter for data leakage in time-series ML code: scalers fitted before the split, centred windows, backward fill, shuffled splits. Seven rules, zero dependencies, runs as a pre-commit hook Python Β· ast
leakguard The runtime half β€” raises at fit() when a transformer was fitted on rows outside the current fold, a leak class no static analysis can see. Its demo scores 0.731 on 2000 columns of pure noise where the honest answer is 0.500 Python Β· scikit-learn Β· pandas
purged-cv Sklearn-compatible purged k-fold with an embargo, for labels whose outcome windows overlap. Shows that not shuffling is not enough: contiguous folds still score 0.781 on noise, purging brings it to 0.503 Python Β· scikit-learn Β· NumPy
cv-visualizer Renders train / test / purge / embargo boundaries as a diagram for any sklearn splitter β€” so leakage is something you can see rather than something a test asserts Python Β· Matplotlib
calibrate Reliability diagrams, ECE / MCE / Brier, Platt scaling and isotonic regression. Makes you state what a risk band promises rather than inferring one, because an uncalibrated "high" is worse than no score Python Β· scikit-learn Β· Matplotlib

πŸ›‘οΈ Consumer & Small-Business Tools

Putting an expert-level answer in the hands of someone who shouldn't have to be an expert.

Project What it does Stack
late-payment-chaser Β· live β†— Statutory late-payment interest UK and EU freelancers are legally owed on overdue invoices. Every rate cited to the central bank's own table, all money in integer minor units, and no model anywhere near the arithmetic Next.js Β· TypeScript
ScamLens Β· in development Scans a message and rates how likely it is to be a scam β€” reporting the specific signals behind the score rather than handing back a bare verdict β€”

Also: dev-journal β€” running notes on ML, quant research and engineering practice.


🧭 How I work

Principle In practice
🚒 Ship a small, honest v1 Scope is chosen by what's expensive to change later β€” data model, units, rounding
πŸ§ͺ Test what can't be wrong Money, dates and legal figures get tested harder than layout and copy
πŸ” Disclose over hide An assumption stated in the open beats one buried in the code
πŸ“š Learn the domain Well enough to know where a tool could quietly be wrong

πŸ› οΈ Tech

LANGUAGES

Python TypeScript JavaScript SQL

MACHINE LEARNING & DATA

scikit-learn NumPy pandas Polars Matplotlib Apache Arrow Pydantic statsmodels PyTorch TensorFlow SciPy

WEB

Next.js React Node.js FastAPI Vite Zod Tailwind CSS Turso

TESTING, CI & TOOLING

pytest Vitest ESLint Ruff GitHub Actions Git pre-commit

SHIP

Vercel PyPI Claude Code


πŸ“Š GitHub Stats

GitHub stats Most used languages



Streak



Contribution activity



Contribution snake

Stat cards above are generated from live GitHub data by a scheduled workflow in this repo β€” no third-party image services, so nothing here can break when someone else's server goes down.


πŸŽ“ Currently learning

AI engineering fundamentals Β· advanced machine learning (neural network architectures, fine-tuning, RAG) Β· applied trading and quant concepts Β· and how to take a tool from "it works on my machine" to "someone I've never met trusts it with their invoice."


πŸ“« Find my latest work pinned above, or browse my repos β€” most are small, scoped, and built to actually be used.

Pinned Loading

  1. late-payment-chaser late-payment-chaser Public

    Free calculator for statutory late-payment interest owed on overdue UK and EU commercial invoices, with the legislation and official rate source cited.

    TypeScript 3

  2. martex-quant martex-quant Public

    Quantitative research platform for crypto: 120 pre-registered hypotheses, deflated-Sharpe validation, and a permanent ledger of everything that failed. Currently paper trading.

    Python 17

  3. market-calendar market-calendar Public

    One day-by-day calendar merging US macro releases (FRED) and S&P 500 / Nasdaq-100 earnings (NASDAQ), ranked by impact.

    TypeScript 3

  4. implied-move implied-move Public

    Options-implied expected move calculator. Separates the mean absolute move from a true one sigma, which most calculators conflate.

    TypeScript 3

  5. timeleak timeleak Public

    Static linter that finds data-leakage patterns in time-series machine learning code. Zero dependencies.

    Python 2

  6. Nobu-sol/timeseries-ml-pitfalls Nobu-sol/timeseries-ml-pitfalls Public

    A catalogue of data-leakage and validation mistakes in time-series ML, each with reproducible broken code and the fix.

    2