OUTRIDER docs
v1.1.0
Live demo Get help
● Use · Every backtest in one pass

Research & analytics
what worked, on which data.

One command (or the running desk, on a schedule) runs every backtest and wallet measurement the desk has and saves them for the dashboard's Research pane: the liquidation-map strategies against random entries, the wallet book, a copy-trade test, a scorecard for every wallet list, the FOMO traders, a replay of every memecoin lane, and with the perps module TREND against BTC. Every number sits next to the data it came from.

outrider researchDashboard · Research

01Run it

node src/cli.mjs research                 # everything (about a minute plus the lane replay)
node src/cli.mjs research --quick         # 4 coins for the liquidation test, no lane replay
node src/cli.mjs research --skip lanes    # skip sections: trend, liq, wallets, lanes
node src/cli.mjs research --data /path    # another data folder

The result is saved to data/research.json. A run with --skip keeps the other sections from the previous file, so you can refresh the wallets every hour and the slow backtests once a day. The dashboard's Research pane reads the file on its next refresh; nothing has to restart.

Trend research runs while the perps module is on. Trend and liquidation research download Hyperliquid candles (public API, no key). Wallets use what the collectors saved (Smart wallets); lanes use your recordings (record).

02AI analyst

With an Anthropic API key (console → Integrations), Claude reads a compact snapshot of the desk every few hours — mode, open positions, lane results, liquidation magnets, smart-wallet consensus, these research verdicts and the top news — and writes a briefing: a one-line headline, the market read, the main risks, a stance per book (keep, watch, reduce, pause) and assets to watch. It appears first in the Research pane and on Telegram with /brief.

SettingDefaultWhat it does
analyst.enabledonRuns only when ANTHROPIC_API_KEY is set.
analyst.modelclaude-opus-5-5The Claude model.
analyst.effortlowThinking effort; low keeps each run short and cheap.
analyst.everyHours6How often the desk asks for a new briefing.
Your key, your data, your bill

Each briefing sends the snapshot described above to Anthropic's API and is billed to your Anthropic key (one short request per run at low effort). Setting the key also turns on Claude news scoring. Switch the analyst off with analyst.enabled: false.

Advice only

The analyst changes no setting and places no order. Its stances are opinions from the snapshot it was given; the caps, gates and stops in code decide what trades.

03Trend vs BTC

This tab is part of the perps module and is shown only while that module is on.

The volatility-targeted trend book with each leverage profile (safe, growth, aggressive) against buying and holding BTC over the same days, on Hyperliquid daily candles. The pane draws the equity curves on a log scale and lists total return, CAGR, Sharpe, maximum drawdown and the return of every calendar year. A profile whose liquidation price is touched by an intraday wick is marked liquidated.

Backtest results are hypothetical, on past data, paper only and before taxes; not a forecast and not investment advice. Real fills, funding and outages would change them.

How to read it: a trend book tends to lose little in a falling year and lag in a strong bull year. Leverage raises return and drawdown together. It is a hedge against crashes, not a way to beat holding in every year.

04Liquidation-map strategies

Two entry ideas built on the liquidation levels, each with three exit rules fixed before looking, pooled over up to eight coins on hourly candles, with 0.13 % round-trip costs:

  • Magnet: trade toward the larger liquidation cluster, expecting price to be pulled there.
  • Cascade: trade in the direction of a cluster that was just run through.

Each row is compared with the same exits entered at random hours. The pane marks a rule edge only when its average is positive, above random and t ≥ 2.

What the map is for

Use the liquidation map for risk: where a stop would sit inside a crowd of liquidations, how much leverage is stacked near the price. As an entry signal it did not survive costs.

05Wallets

The merged wallet book (pump.fun stream, GeckoTerminal pool trades, FOMO's fee wallet): trades read, wallets seen, wallets in profit, the smart list, and how many wallets were excluded as bots, snipers, dust or token creators. The top 25 wallets by PnL show realised and open profit separately, with links to Solscan.

The out-of-sample line is the test that matters: smart wallets are chosen on the first half of the data and judged on the second. The line shows how many wallets were chosen and how many rounds they had; a handful of wallets is a small sample, and more collection hours make it firmer.

Search and wallet profiles

Above the list: a search box (part of an address, or a source name such as kolscan or fomo) and three lists — every wallet in profit (up to 500), the smart list, and FOMO's top traders. Tap a wallet with a › for its profile:

  • realised and open PnL, rounds, win rate, t-statistic, profit factor, coins traded, first and last trade;
  • the realised PnL curve, one step per closed round;
  • the latest 40 rounds (token, SOL in, SOL out, return, hold time) and what it holds now, valued at the last traded price;
  • flags (bot, sniper, dust, creator), the lists it appears on, and links to Solscan and GMGN.

Profiles are built for the top 40 wallets, the whole smart list and FOMO's top traders. Rounds are counted exactly like the wallet book: fees on both sides, a round closes when less than 1 % of the position is left, tokens that arrived by transfer are not judged.

Open PnL is a paper number

A large open profit is valued at the last traded price. Thin memecoins often cannot be sold at that price. Wallets with a few rounds are luck until the out-of-sample test says otherwise.

06Copy-trade test

The question behind every copy bot: if I had copied these wallets, what would I have made? The test answers it fairly:

  • smart wallets are chosen on the older 70 % of the data only;
  • they are copied on the rounds they opened in the newer 30 %: buy when the wallet buys, sell when it sells, after a delay of 0, 2, 5, 15 or 30 seconds;
  • the copier pays the price of the first trade anyone makes after the delay (never the wallet's own fill), plus the fee and 0.5 % slippage on each side; a round with no trade within 60 seconds is skipped;
  • the same copy of 400 random other wallets from the same days is the baseline.

The result is a table with one row per delay (the wallets' own fills, 0, 2, 5, 15 and 30 seconds): the smart list's average and median return per round, its t-statistic, and the random wallets' average as the baseline.

How to read it: compare each delay with the row above it and with the random baseline. If the average falls as the delay grows, the wallets' advantage is speed and first fills, which a copier cannot have. The per-wallet table shows the rare wallet that stays positive at every delay; that is a candidate to keep watching, not to trust yet. Each wallet profile also shows an in-sample copy line, marked as such.

07Wallet sources

Every list you import (KOL trackers, leaderboards, FOMO's top traders, a list from a post) gets a row: how many addresses it listed, how many could be judged on your recorded trades (copyable wallets with at least 3 rounds), their average return per round and the share that were profitable, next to everyone else. A source is marked beats crowd only when at least 5 of its wallets were judged and they did better than the rest. Import and pull commands: Smart wallets.

08Memecoin lanes

A replay of your recorded pump.fun stream through every lane as configured, fees and latency included: trades, win rate, average return, PnL, t-statistic, costs, and how much the price moved after the exit on average.

That is what the lanes are for: each is a hypothesis with a small ticket, measured on its own. Keep a lane that loses on paper, off; record more hours and sweep it (how) before trusting any setting.

09Liquidation history

Every map refresh appends one line per coin to data/liqmap-history.jsonl. The Liquidation history tab draws the last 14 days per coin: the mark price, the magnet above (shorts) and below (longs) with dot size by dollars at the magnet, and a bar chart of the longs and shorts that would be liquidated within ±5 % of the price. It shows whether the crowd keeps rebuilding the same levels as the price moves.

10Keep it fresh

The running desk (npm start) does it for you: ten minutes after start it runs the full research, then the wallet book every hour and everything once a day, each time in a separate process so the desk itself stays light (loading every recorded trade takes more memory than the desk itself). Change the cadence in the console under Research, or with research.* in config.json. The child process reads config.json, like every command-line tool.

Without the desk, use cron:

# crontab: wallets every hour, everything else once a day
15 * * * *  cd /opt/outrider && node src/cli.mjs research --skip trend,liq,lanes
40 4 * * *  cd /opt/outrider && node src/cli.mjs research

The numbers on this page are examples from one research run on data up to 2026-09-28. Yours depend on the dates, the coins and how long your collectors and recorder have run. None of them is a forecast.