Skip to content
MrJev

Jev Trade

Hyperliquid trading bot based on jev-trader, where Jev decides buy, sell, or hold on every tick for five coins. Dry-runs without a private key.

View on GitHub →

Hands-on review

Asks Jev for direction, intent and leverage every two seconds across five assets, then trades it. There is no stop, no cap, and no kill switch.

Good for

  • Reading a careful state builder: what it deliberately refuses to send is the best part
  • Studying a tick loop where code owns size, price and order type
  • A live, watchable dashboard of what a model decided and when

Watch out for

  • No stop-loss, position cap, daily loss limit, cooldown or kill switch — none
  • An unrecognised direction silently becomes long, i.e. the opposite trade
  • The public dashboard exposes wallet addresses and positions with no auth

Tested Sep 20, 2026 at 2d5f002e3c77 · Bun in Docker, offline; 56 tests and replays of its own planner and trader with stand-ins. No exchange, wallet or key was involved

How we reviewed this: we ran its tests in Docker offline and replayed its planner and trader with stand-ins. We ran nothing that connects to an exchange, and no wallet, key or order was involved at any point.

What it does

jev-trade, by aowang-ai, runs five independent sleeves — BTC, ETH, SOL, DOGE, BNB — each with its own wallet and market feed. Every tick (two seconds by default) each sleeve sends one request with three Choice questions: long or short, open/close/hold, and what cross leverage to use.

Code owns the rest, and owns it well: size is fixed in quote terms and leverage does not scale it, closes are always the whole position, entries are post-only at one tick inside the book, exits cross with a slippage allowance. The criteria are deliberately written without nudges, and there is a test asserting that twenty-five leading phrases never appear in them.

The state it sends is the best-considered part of the project: order book, depth, returns, funding, open interest — and it refuses to send wallet address, equity, withdrawable balance, realised PnL, fees or fills, with a test that fails if any of those appear in the payload. Nothing is written to disk at all.

Its 56 tests pass offline in under a second, and none of them can reach an exchange.

What it doesn’t have

There is no stop-loss. No maximum position. No daily loss limit. No cooldown after a loss. No circuit breaker. No kill switch. We searched for every term; the example environment file says it outright: “No sleeve or position cap.”

The planner never reads the current position when it opens, so every open tick queues another full-size order. Replaying its own planner: sixty consecutive open fills is about 2,400 dollars of BTC; three hundred is about 12,000 — and the next plan is another buy of the same size. The only brake is the exchange’s own margin engine.

Meanwhile Jev can change the leverage of a live position every tick, clamped only to the venue maximum. Raising it doesn’t increase size, so there is no upside to it — it just moves the liquidation price closer.

The fallback that reverses your trade

Direction is parsed with an exact, case-sensitive membership test against ["long","short"], falling back to long. We checked: "SHORT", "Short" and " short" all become long — the opposite position — while the dashboard displays long at 100%. The intent axis uses the same shape with a safe fallback of “hold”, which is what direction should do.

Two other mismatches with the documentation: a “hold” tick is documented to pull a resting quote, but the stand-down path returns early when the local order map is empty, which is exactly the window after a fire-and-forget order; and the model deadline is longer than the tick interval, so overlapping ticks are skipped — in our replay, six of ten ticks produced no decision and no dashboard event, and the code path that would have flagged them as late is unreachable.

Finally, the dashboard is read-only but unauthenticated with permissive CORS, and it publishes the live wallet addresses along with positions and balances.

Verdict

The craft around the edges is real — the state builder, the fixed sizing, the tests that enforce a privacy boundary. The trading layer has no risk management whatsoever, and a parsing fallback that can invert a position.

Read it for the state builder. Do not run it with money.

For a demo that stays in simulation, see jev-trader, and for a live-funds project that fences the model into paper mode, Prism.

See how it compares with other tools in Best Jev tools, tested hands-on.

Review updated Sep 20, 2026. Numbers quoted from the project are its author's own; we don't publish our own measurements of Jev.

More in Finance

jev-trader

★ 3.1k▲ 31

jarrodwatts/jev-trader

Asks Jev buy or sell on every Monad block and places real post-only limit orders on the Kuru MON-USDC book. Not financial advice.

TypeScriptReviewed

beebots

★ 334▲ 6

imikerussell/beebots

Three trading bots race on OKX perpetual futures with every decision typed and a risk layer in plain code; paper trading is the default. Not financial advice.

TypeScript

brainstormity/Jev-X-Sentiment-Analysis

Crypto terminal that reads up to 1,000 posts about a ticker alongside market and funding data and turns them into a buy, sell, hold, or take-profit call. No license file at the time of writing. Not financial advice.

PythonReviewed

Get new Jev projects every week

New Jev releases, pricing changes, and the best new projects, once a week. No spam; unsubscribe anytime.

Powered by Buttondown. See our privacy policy.