Paper firstReal funds only when you're sure

A trading engine built from swappable parts.

Jeeva runs one loop per market: read the data, ask a strategy for a direction, move the position to match. What decides, where it trades, and what it gets to see are all interfaces — so the engine stays the same while the parts change.

Easily extendable interfaces
Modular
Evaluate before risking funds
Paper-first
read it, fork it, extend it
Open source
BTC-PERPSample
Hyperliquid
FLATLONGSHORTLONG
Direction
long
Confidence
0.72
Interval
5m
Jeeva works with any Hyperliquid perpetual futures market.
What it does

An operator's trading loop, not a black box

Everything the engine does is visible on the dashboard — and every part of it is yours to replace or switch off.

Bring your own strategy

A decision maker is anything that can look at a market and answer long, short or flat. Jev ships in the box; your own rules or model drop into the same slot.

Bring your own venue

Execution sits behind its own interface. Hyperliquid and a paper wallet are the adapters included — another exchange is another implementation, not a rewrite.

Control what it sees

Choose which markets get recorded and how far back the history runs. A strategy is only ever as good as the window it reads, so that window is yours to set.

Evaluate before you commit

Point anything new at the paper wallet and let it trade live conditions for as long as you like. Judge it on its own decision log, not on a backtest you have to trust.

Tuned market by market

How often it trades, how much size it takes, what decides it, whether it trades at all — every market carries its own settings.

Nothing happens off the record

Every cycle stores what the strategy saw, what it chose and what came of it — failures included. Any position can be traced back to its cause.

The loop

One tick, six steps, every time

Every enabled market runs its own loop at its own pace. Nothing is shared between them but the wallet.

  1. Read the market

    Recent history for that market — price, liquidity, volume, spread.

  2. Read the position

    Where this market currently stands: flat, long or short.

  3. Ask the decision maker

    Whatever strategy you've plugged in answers with a direction.

  4. Compare

    Target against current — open, close, flip, or do nothing at all.

  5. Hand it to the wallet

    A simulated fill while you're evaluating, a real order once you're not.

  6. Write it down

    What it saw, what it chose, what happened — including the cycles that fail.

Architecture

Three seams, and what fills them is up to you

The loop is fixed. Everything it touches is an interface — which is where a new strategy, a new exchange, or an evaluation harness of your own plugs in.

Where the numbers come from

MarketDataSource

fetch(market) → price · liquidity · spread

Feeds the recorded history every decision is made against. Point it at an exchange feed, your own store, or a recorded window you want to replay.

Ships withHyperliquid
Who picks a side

DecisionMaker

decide(state) → long · short · flat

Anything that can look at a market and answer with a direction: a model, a set of rules, an indicator, a service of your own. It only has to answer the question.

Ships withJev
Where the answer lands

WalletAdapter

position() · open() · close()

Carries out the decision. Simulated fills for evaluation, a real exchange wallet for live trading, or a venue you add yourself.

Ships withPaper walletHyperliquid

Implement one of these, register it, and pick it per market from the dashboard. The loop around them doesn't change — which is what makes a new strategy or a new exchange an addition rather than a rewrite.

Two independent axes

Pick who decides. Pick where it lands.

Strategy and venue are separate choices, so every combination is reachable — including a serious strategy trading a wallet that cannot lose anything.

Decides ↓ / Executes →
Paper wallet
Simulated fills. No funds involved.
Hyperliquid
Real orders on a connected wallet.
Your exchange
An adapter you write against the same interface.
Jev
The decision model included in the box.
Start here

Try the bundled model with nothing at stake.

The setup Jeeva ships with, running live.

The same decisions, on a venue you add.

Your rules
Indicators, thresholds, anything deterministic.

Prove your rules out on live market data, risk-free.

Your logic, placing real orders.

Your logic, your venue.

Your model
A service you call, or code you run yourself.

Benchmark something new against the decision log.

Promote it to live with one setting.

Every part replaced — the loop around them is unchanged.

Safety

The boring guarantees

An always-on trading process should be dull in exactly three ways.

Paper until you say otherwise

A fresh install and every new market start on the paper wallet. Trading real funds takes a connected wallet and a deliberate switch — both, not either.

Fails flat, not open

If a market's cycle keeps erroring — bad data, an unreachable strategy, a rejected order — Jeeva closes that position rather than leaving it unmanaged.

No accidental size

Repeating a direction does nothing at all. Positions never quietly stack up because a strategy said the same thing twice.

Start on the paper wallet.

Enable a market, pick a strategy, and watch the log fill up. Nothing touches a real orderbook until you say so.