How justfixcode/asai works
ASAI is an explicitly unfinished, offline-first trading and research foundation—not a deployable trading system. Its main user workflow is supplying local evidence to the paper-control app, which loads a constrained manifest and produces an offline diagnostic; the separate research CLI validates local historical input, captures optional untrusted research text, and runs an SMA backtest. Risk and reconciliation are diagnostic components, not a verified broker execution boundary. Broker and quote adapters are independent, read-only integrations. The README documents additional SQL state and audit-history capabilities; unsampled wiring is omitted rather than inferred.
Main entry points: main.py Paper orchestration · research_cli.py Research CLI · preflight.py Control preflight · alpaca_paper.py Alpaca paper adapter
Components 19
Offline paper app
- Paper orchestration
app/main.py - Manifest loader
config/manifest.py
Offline research
- Research CLI
app/research_cli.py - Evidence capture
research/ingestion.py - SMA backtest
strategy/backtest.py - Walk-forward analysis
research/walk_forward.py - Offline role analysis
research/offline_role_analysis.py
Safety diagnostics
- Control preflight
control/preflight.py - Risk evaluator
risk/policy.py - Snapshot reconciliation
reconciliation/checker.py - Paper order boundary
control/paper_order_boundary.py
External evidence
- Alpaca paper adapter
broker/alpaca_paper.py - Latest quote adapter
market_data/alpaca_latest_quote.py
Local state
- Local order journal
app/main.py - Review history
memory/audit_store.py - PostgreSQL research state
db
Other components
- Operator
- Alpaca paper API
- Alpaca market data
Connections 10
- Operator → Paper orchestration: supplies evidence
app/main.py - Paper orchestration → Manifest loader: loads settings
app/main.py - Paper orchestration → Local order journal: records locally
app/main.py - Operator → Research CLI: supplies fixture
app/research_cli.py - Research CLI → Evidence capture: captures text
app/research_cli.py - Research CLI → SMA backtest: runs simulation
app/research_cli.py - Control preflight → Snapshot reconciliation: reconciles snapshots
control/preflight.py - Control preflight → Risk evaluator: evaluates risk
control/preflight.py - Alpaca paper adapter → Alpaca paper API: reads evidence
broker/alpaca_paper.py - Latest quote adapter → Alpaca market data: fetches quote
market_data/alpaca_latest_quote.py