We have opinions about how AI should work in markets.
They are not popular with the people selling AI to markets.
- 01
Most 'AI trading' is a ChatGPT screenshot on Twitter.
The model has no position. It has no risk. It has never been woken up by a margin call. We are not building models that talk about markets. We are building models that operate inside them.
- 02
The industry confused fluency with competence.
Writing a macro outlook is a language problem. Computing your net delta across four venues when ETH gaps 6% and your Hyperliquid positions are 400ms stale is an engineering problem. We work on the second one.
- 03
Big models are a terrible idea for trading.
70B parameters, 3 seconds per response, confident hallucinations. Now imagine that managing your stop-loss. Our models are 1B-7B. Single GPU. Under 100ms. Boring, deterministic, correct.
- 04
Your trading data is none of our business.
Karma runs locally. Your data stays on your machine. If you do not trust our training, retrain on your own fills. The architecture assumes you should not have to trust us.
- 05
Open source is not charity. It is a competitive strategy.
Linux won. Kubernetes won. PyTorch won. None of them won by being closed. We want Karma's SLMs on OpenRouter with open weights so they become the standard everyone builds on.
- 06
The model is 10% of the system.
Execution infrastructure is the other 90%. Order routing, fill tracking, position reconciliation, risk enforcement. The Optiver people know this because they spent years building the 90% for one of the largest market makers in the world.
- 07
Markets do not care about your pitch deck.
Your system works or it loses money. No narrative spin on a blown stop. Every component of Karma has to survive contact with a live order book. That bar attracts a specific type of person.
Four layers. The model is one of them.
SLMs (1B–7B) for order generation, risk, and position management. Trained on real execution data. Published on OpenRouter.
JLabs Digital market data. Tick-level normalization, feature computation, signal pipelines. What the models train on and see during inference.
Unified OMS across Public.com, Hyperliquid, and Lighter. Venue-aware routing, fill tracking, state reconciliation.
Pre-trade validation, exposure monitoring, correlation-aware sizing, drawdown enforcement. No exceptions.
// simplified inference loop
context = portfolio + tick + risk_params
model.infer(context) → action
{
action: "adjust_position",
venue: "hyperliquid",
instrument: "ETH-PERP",
side: "reduce_long",
size_pct: 0.35,
reason: "correlation_breach_btc_eth",
urgency: 0.82
} → risk_validator → execution_engine
// no natural language. just a valid trade instruction.Models for everyone, not just us.
Every model ships on OpenRouter with open weights. Run them through the API, self-host, fine-tune on your own fills. These models understand trade grammar, not general-purpose language. That is why they work.