Open beta · Paper trading free

Discord called it.
You read it too late.

EdgeProof reads the Discord signal channels you choose, extracts the trade with a local LLM, and places the order on Alpaca using your own account. It keeps a P&L ledger on every source, so the channels that lose money drop out of rotation.

$ npm install -g edgeproof
zsh · 80×24

How it works

Three commands. Then it runs itself.

Once your model is running, the wizard takes about five minutes. After that, four crash-isolated processes coordinate through a local SQLite file. No message queue, no daemon to babysit.

01 · INSTALL
Connect your channels

Run edgeproof init. The wizard probes Alpaca, verifies your Discord bot token, checks your local LLM, and writes a chmod 600 .env. It refuses to write anything if a check fails.

02 · PAPER
Run on paper for a month

edgeproof start fires four processes. Every extracted signal goes to Alpaca paper. The tournament tracks each source's realized P&L. After 30 days you have real data on which Discord channels are actually profitable.

03 · LIVE
Go live when you decide the data supports it

When you decide a source has earned real capital, you activate a live license. It's one env var change. The exit rules and guardrails you set don't change. The only difference is that fills now hit your live account, capped at the position sizes you configured.


The tournament

Every source earns its spot.

Each Alpaca order carries a clientOrderId tagged with the source that called it. When the position closes, the realized gain or loss lands on that source's ledger. No self-reported win rates. Just round-trip P&L on trades the system placed.

# Source Trades Realized State
01 alpha-desk #0dte-plays 41 +$3,284 live
02 theta-gang #swing-alerts 33 +$1,507 live
03 momentum-hq #breakouts 28 +$412 paper
04 hype-room #yolo-calls 52 −$2,190 benched

Illustrative table. Numbers are placeholders, not results from a real account.


What it does

No black boxes.

Typing edgeproof start launches four processes that coordinate through a SQLite file on your machine. You can read every table, every order, every score.

Tournament scoring

Every Discord source gets a running ledger of realized P&L. Wins and losses are attributed back to the channel that called the trade through a tagged clientOrderId on every Alpaca order. After 30 days, the tournament table tells you which Discord admins actually make money. Not who posts the most charts, not who sounds the most confident. Sources with a negative record stop getting executed automatically.

per-source P&L · round-trip attribution · 48h message retention
Local LLM, not a cloud API

Signal extraction runs in Ollama or LM Studio on your machine. The channels you watch, the tickers you trade, and the timing of every call stay on your network. None of it reaches a cloud API.

Paper trading, free forever

The full system runs against your Alpaca paper account at zero cost. All four roles, tournament scoring, the dashboard. Live trading requires a license key. Paper never does.

Your keys. Your account.

EdgeProof is non-custodial. It calls Alpaca directly using your API keys, stored in a chmod 600 .env on your machine. Your credentials never transit our infrastructure. We don't hold funds, hold positions, or move money.

Exits that run without you

Take profit, stop loss, trailing stop, max hold time. The positions role enforces them even with your laptop closed. It exits when the rule fires, not when you remember to check.

Dashboard on localhost

The ledger role serves a dashboard at 127.0.0.1:3030 with open positions, filled orders, daily P&L, and tournament scores. Bound to localhost only. There's no auth surface to expose.


How it differs

Not a copy-trading bot. Not a cloud platform.

Copy-trading services mirror a leader's crypto trades through their cloud, holding your keys. Algo platforms run backtested strategies you write yourself. EdgeProof turns the Discord signals you already follow into ranked, executed options trades, on your machine, with your keys.

Capability EdgeProof Copy-trading bots Algo platforms
Trades from Discord signals Yes No No
Ranks sources by realized P&L Yes Leader only N/A
Signal parsing stays local Local LLM Their cloud Their cloud
Where your API keys live Your disk Their servers Their servers
Options support Yes Mostly crypto Varies
Paper-first, free Free forever Limited Varies

Pricing

Paper is free. Go live when you're ready.

Run the full system on paper for as long as you need. When the tournament data says a source is worth real capital, activate a live license.

Paper
$0
Free forever
  • All four supervisor roles
  • Tournament scoring by realized P&L
  • Discord bot mode + Chrome CDP mode
  • Ollama, LM Studio, or OpenAI-compatible extraction
  • Rule-based exits (TP / SL / trailing / max hold)
  • Dashboard at 127.0.0.1:3030
Read the docs →
Live
$19
per month · launch price · cancel anytime
  • Everything in Paper
  • Live Alpaca trading enabled
  • Monthly license token, verified locally
  • Position sizing up to $25,000
Get live access →

Billed monthly through Stripe. Your subscription renews automatically until you cancel, which you can do anytime from your account portal. See Terms and the Risk Disclosure.


Questions

Straight answers.

Does EdgeProof store my trading data or signals?
No. Discord messages, signals, positions, and fills all live in SQLite files in your ./output/ directory. Nothing is uploaded. The only external calls are to Alpaca (your trades), Discord (reading messages), your local LLM, and a version-check endpoint that sends only your EdgeProof version number once per 24 hours.
What if the LLM extracts a bad signal?
The tournament deprioritizes sources with negative P&L records and eventually stops executing them. Guardrails cap each trade by position size, hard dollar limit, and max contracts per underlying. Rule-based exits close the position when conditions hit, whether or not you're watching. Bad signals happen. The system limits how much they cost.
Which Discord channels does this work with?
Any channel your bot has read access to (bot mode), or any channel you can open in Chrome (CDP mode). You set the channel IDs in edgeproof init. EdgeProof doesn't vet whether a channel is profitable. The tournament does that for you over time, using real P&L.
Why local LLM instead of GPT-4?
The Discord groups you're watching contain real trading discussions with tickers, sources, and timing. Routing that through a cloud API means someone else's servers know which channels you monitor and when. A local Ollama or LM Studio model keeps that on your machine. Parsing a ticker, strike, and expiry from informal Discord text doesn't need a frontier model. Llama 3 handles it fine.
Do I need a powerful computer to run it?
Running a local model is the one demanding part of setup, and it is honestly not one-click. A small 3B model runs on 8 GB of RAM; a 7B to 8B model is comfortable on 16 GB or Apple Silicon. Model files are a few GB to download once. If your machine can't run a model, or you'd rather not, point EdgeProof at any OpenAI-compatible API endpoint instead and skip the local requirement. The full hardware guidance is in the install docs.
What happens if EdgeProof crashes while a position is open?
The four roles are independent processes. If the Discord reader crashes, the positions role keeps managing open risk. The positions role restarts automatically with exponential backoff. Position metadata (entry time, high-water mark) is written to SQLite before every potential exit point, so a restart picks up where it left off. No duplicate exits, no missed stop losses.
Do I have to trust your servers with a live license?
The license token is verified locally against a public key. Your account portal at account.edgeproof.net issues the token; the CLI checks the signature offline. If our servers went down, an already-issued token keeps working until it expires. We can't see your trades, your positions, or your Alpaca balance, because none of that reaches us.
How risky is it to try?
Paper mode trades an Alpaca paper account with simulated fills. No real money is at risk while you're evaluating a source. You can run for weeks, watch the tournament table, and only enable live trading once a source has a record you trust. When you do go live, position sizing and per-underlying contract caps limit exposure on every order.

Start on paper. No credit card.

A local model, then a five-minute wizard. After that it runs itself.

$ npm install -g edgeproof