Strategy stats
—Bots
0 bots| Status | Bot | Mode | P&L today | P&L total | Trades | Last seen |
|---|
Trades
0 closed| Date | Time (ET) | Bot | Sym | Side | Entry | Exit | Qty | P&L | Hold | Reason |
|---|
first time?
Pick "all my bots" or focus on one from the dropdown. Your bots emit signals → orders → fills → risk via the elevate-monitor SDK. Got a key someone shared with you? Sign in, open Account, and paste it there.
pip install elevate-monitor
from elevate import Monitor
mon = Monitor(api_key="em_live_…", bot="olivera_es")
mon.signal(sym="ES", side="long", reason="NR7", price=5100.25)
mon.fill(sym="ES", qty=3, price=5100.50, slip_ticks=1)
mon.risk(daily=-180.0, trailing_used=360.0)
Bot won't connect or nothing showing? Troubleshooting →
| Status | Bot | Mode | P&L today | P&L total | Trades | Last seen |
|---|
| Date | Time (ET) | Bot | Sym | Side | Entry | Exit | Qty | P&L | Hold | Reason |
|---|
| Date | Time (ET) | Bot | Sym | Side | Entry | Exit | Qty | P&L | Reason |
|---|
Logged in as —
Each key is a separate identity for one of your bots. Revoking a key stops new events from being accepted but preserves history.
Your own keys above auto-load — just hit Use. This box is for a key someone shared with you: paste it to stream that bot.
A short beep when a bot fires a signal, closes a trade, or halts. The visual row/card highlights stay on regardless.
Define def on_bar(bar, state) → returns (orders, state). Orders: {"type":"market_buy"|"market_sell"|"exit","qty":int}.
| Symbol | Status | Trades | Realized P&L | Events |
|---|
To view trades: go back to dashboard → set Mode = backtest → filter to your run name.
Every bot you've streamed, scored on the current timeframe window (change it in the topbar). Compare versions side-by-side — run olivera_es_v1, _v2, _v3 and see which earns its slot. Drawdown, Sharpe and profit factor feed the composite ElevateMind Score.
| # | Bot | Score | Confidence | Trades | Win% | P&L | Profit factor | Sharpe | Max DD |
|---|
No trades yet — connect and let your bots stream, then come back.
Paste your bot's Python code. Claude analyzes for security, correctness, risk management, and edge cases. Static analysis only — your code is never executed. Code is not stored after the review completes.
We're building a guided review flow. Instead of dumping your full strategy file, you'll answer a short set of questions (entry rules, risk model, market context) — the AI gives sharper, more actionable feedback that way. Open chat available to enterprise users only for now.
Claude is reading your code… (typically 10–30s)
mon.pnl(realized=…) or mon.risk(daily=…) (preferred — your bot is the source of truth). · calc = the dashboard summed it from closed-trade P&L (fallback when your bot doesn't report daily).mon.risk(trailing_used=…). Closer to your limit = closer to a blown account.mon.halt(reason) or mon.risk(halted=true)) — usually because a risk rule fired.Switch all time / 12m / 90d / 30d / 7d / today to recompute every metric over a different window. Useful for comparing recent performance vs lifetime, or zooming in on the last trading session. Selection persists between reloads.
X-axis = trade number (1, 2, 3…). Y-axis = running P&L in dollars. Green dots = winning trade, red dots = losing trade. The dashed line at $0 is your break-even baseline. Read the slope, not the noise — a steady up-slope means a real edge; flat means no edge; choppy down means broken strategy.