Zack Meacham

Flagship · independent systems

Architecting an Autonomous Trading Platform with Research-First Risk Controls

2026 · Active build

A research-first autonomous trading platform where autonomy is earned, not assumed.

  • Python
  • Alpaca
  • Parquet
  • pytest
  • CLI

At a glance

Role
Solo build; owner of architecture, code, and tests
Year
2026 · active build
Stack
Python · pytest · Parquet · Alpaca
Scope
Personal project covering research, infrastructure, risk gating, and operator CLI
Links
GitHub

Why this mattered

Trading software is unusual in that its blast radius can be financial. Most hobby-grade systems collapse vendor logic, strategy, and execution into one tangle. Milodex inverts that: vendors sit behind internal models, the risk layer has veto power, and autonomy has to be earned instead of assumed. The interesting design question is how to keep the system researchable while making it operationally safe.

My role and ownership

Solo. I own the architecture, the code, the tests, and the operator surface. The discipline of the project is mine.

Core constraints

  • Financial blast radius. Defaults have to be refuse, not execute.
  • Broker-vendor risk: trading-API behavior is the kind of dependency that shouldn't leak into strategy code.
  • Market-data quality and consistency across paths the system can take.
  • Single-developer operability. The CLI and tests have to be the operator's source of truth.

Architecture and key decisions

Broker abstraction & market-data pipeline

Broker vendors are hidden behind an internal model so the rest of the system reasons in one vocabulary. Market data lands in Parquet with a consistent shape; execution paths share the same contract the data uses.

  • Python
  • Alpaca
  • Parquet

Risk-gated execution layer

A layer between strategy and broker that enforces risk rules per order. Every path an automated system can take runs through the gate. The default outcome is refuse, not execute.

  • Python
  • Gating rules
  • Reversibility

Operator CLI & test harness

A deliberate CLI-first operator surface: inspect state, replay sessions, run with simulated brokers. Tests cover the same paths the operator drives.

  • Python
  • CLI
  • pytest

Execution highlights

  • Broker abstraction in place; vendor swaps stay at the boundary.
  • Risk-gated execution layer with refuse-by-default semantics.
  • CLI-first operator surface; tests cover the same paths the operator drives.
  • Parquet-based market-data pipeline with shared contracts across paths.

Impact / current state

Active build. The risk layer and broker abstraction are settled; strategy research and operator-feedback hardening are the next focus.

What this demonstrates

Architectural discipline under high blast radius, risk-first system thinking, and operator-centered design.

← All work