VantageGrid Help Center

Your first review, and everything after it.

How VantageGrid works: importing your platform's export, your rules, the daily Review, Stats, firm limits, your account and the Pro API, with the most common fixes. Search or deep-link any section.

MetaTrader is the registered trademark of MetaQuotes Ltd. NinjaTrader is a trademark of its respective owner. TradingView is a trademark of its respective owner. VantageGrid is independent and is not affiliated with, endorsed by, or sponsored by these trademark owners.

No matching article found

Try a broader term such as "import", "rules", "Review", "API" or "billing".

Start here

Your first review in four steps

VantageGrid checks every closed trade against the rules you trade by and shows what breaking them cost you. This is the shortest way from last week's export to your first review.

1. Check last week, free

Drop last week's export on the Trade Check: no account, and the file is never uploaded. Tick "Remember these rules on this device" to keep the rules you set in this browser.

2. Import the same export

In your journal, open Import and drop the file. It is read in your browser, asks only what the file doesn't say, and saves nothing until you press Save.

3. Save your rules

On Your rules, enter the rules you trade by, or fill the form from the ones you remembered in the Trade Check. Every trade is checked against them.

4. Open your review

Your journal opens on the last day you traded: the Rule Cost, each rule, the room left under your firm's daily loss limit, and one commitment for the next session.

The VantageGrid Review of one trading day: five closed trades checked against seven saved rules, the net of the trades that broke a rule, and a simulation account named outside the totals, using synthetic sample data
The Review of one trading day, with a synthetic sample account.
Free Trade Check

The Trade Check: last week against your own rules

The Trade Check reads a trade export in your browser and checks every trade against the rules you set. There is no account, and the file never leaves your browser.

The Rule Cost

What the trades that broke a rule netted, beside the trades that followed every rule, with a running total of each. It is called a cost only when the rule breaks lost money.

Every rule on its own

How often each rule broke, on how many days, and what those trades netted. A winning trade that broke a rule still counts as a rule break.

Habits and one focus

How long you held winners and losers, how your trades after a loss did, how your later trades of each day did, and one thing to work on next session.

A result card

An image of the result, drawn in your browser from the numbers you tick. Money is left off unless you tick it.

No file at hand? Run it on the synthetic sample week. Its plan-only curve is hindsight on the file, not a forecast: skipping a trade could have changed the ones after it.

Import

Importing your platform's export

Open Import in your journal and drop your platform's CSV export. The same engine as the free Trade Check reads it in your browser and shows you every trade before anything is saved.

PlatformWhat to export
NinjaTrader 8Trade Performance: the Trades grid or the Executions tab, exported as CSV (step by step)
NinjaTrader Web / TradovateThe Orders report: ≡ menu → Reports, Report Type Orders, your account and last week's dates, GO, then download it as CSV. The Performance report, exported as CSV, is read too. Neither has a commission column, so their results are before costs; the Fills report, exported the same way, has each fill's commission. Or automatically: NinjaTrader Desktop 8 signed in to the account with the connection type NinjaTrader (NinjaTrader's support article “Using NinjaTrader Desktop with a Tradovate Account”), with the VantageGrid add-on from Settings → Integrations
TradingView (trading panel connected to your broker)The Order History tab of the Trading panel, saved as CSV with its download icon. Not Position History, and not a strategy's List of trades
Rithmic / R|Trader ProOrder History, Completed Orders, with the columns Symbol, Buy/Sell, Qty Filled, Avg Fill Price, Status and Update Time, exported as CSV. It exports one day at a time: one file per trading day
TopstepXThe Trades export
Match-TraderThe trade history, exported as CSV
MetaTrader 4The account history report (Save as Report), opened in a spreadsheet and saved as CSV
MetaTrader 5The Deals table of the history report, opened in a spreadsheet and saved as CSV
Sierra ChartThe Trade Activity Log, Trades view, saved with File >> Save Log As
QuantowerThe Trades panel, exported
Prop firm (Apex, Topstep, …)The export of the platform your firm gave you (NinjaTrader Web / Tradovate, Rithmic R|Trader Pro or NinjaTrader 8), as listed above
Other platformsA CSV with one closed trade, one fill or one order per row; you choose any column the import doesn't recognise

MetaTrader is the registered trademark of MetaQuotes Ltd. NinjaTrader is a trademark of its respective owner. TradingView is a trademark of its respective owner. Tradovate is a trademark of its respective owner. TopstepX is a trademark of its respective owner. Sierra Chart is a trademark of its respective owner. Quantower is a trademark of its respective owner. Rithmic and R|Trader Pro are trademarks of their respective owner. Match-Trader is a trademark of its respective owner. Apex Trader Funding and Topstep are trademarks of their respective owners. VantageGrid is independent and is not affiliated with, endorsed by, or sponsored by these trademark owners.

It asks only what the file doesn't say

The time zone of times written without one, and a trade's side when the file has no side column and its prices can't tell. Any other value the file does not state is worked out from the file's own numbers or shown as unknown, never guessed.

Fees from the file

Whether the P&L already includes fees is read from the file's own running net total, or from its prices with the contract's verified point value. When the file can't tell, you choose whether to subtract its fee columns; without fee columns, it says costs are unknown.

Order reports

In an orders report only filled orders are trades. Cancelled, rejected, working and expired orders are counted and left out; an order that filled in part counts for what filled.

No double counting

A trade already in your journal is skipped, so importing the same export again adds nothing. Rows it can't read are counted, with the reason.

What leaves your browser

Only the trades you confirm, when you press Save. Only the column matcher, for a layout the import does not recognise, uploads the file itself.

Practice accounts named

Simulation and replay accounts are labelled and reviewed on their own, never added to your live totals or firm limits.

Every trade you confirm is kept, with no monthly limit. A file that is not a record of your own trades, such as a strategy report of simulated trades, is refused with the reason. For any other layout, the column matcher lets you say which column holds what.

Ways in

Three ways to bring trades in

Most traders only need the first.

WayBest forWhat to check
Your platform's export (Import)Last week, last month or your whole history, from the file your platform already makesThe time zone the import asks for, and each account's totals against your platform
By hand (Add Trade)A trade that isn't in an export yetEntry and exit, on your account's clock
The Pro API (docs)Your own scripts and toolsYour API key's safety and the rate limits
Manual Entry

Logging a trade by hand (and what the form calculates for you)

Add Trade is the fastest route for discretionary traders and backfills, with no monthly limit. Times are typed on your account's clock, which the form names.

Core fields

Instrument, buy/sell, entry price, exit price, quantity, commission and account name. Add setup, technical confluence, SMC/ICT tags, sentiment and execution emotion in the same form so the trade lands fully tagged instead of needing a second pass later.

Wellness context

Optional sleep, hydration and focus self-ratings are stored with the trade and feed the Trade Permission readiness score — the same three fields external bots can pass through the Pro API.

Position size calculator

Enter account size, entry, stop and risk percentage and the built-in calculator returns the dollar risk and the position size that matches it — before you commit the numbers to the journal.

Permission Gate chip

The form shows your live Trade Permission verdict (go / conditional / reduce, with score and suggested size multiplier) while you fill it in. It needs closed trade history first; a brand-new account sees "SETUP NEEDED" until trades exist.

Your rules

The rules you trade by, checked on every trade

Save your rules once on Your rules. Every closed trade is then checked against them per account and trading day, exactly as the Trade Check checks a file.

  • Enter only inside your trading window
  • Maximum trades per day
  • Maximum loss per trade
  • Stop for the day after this loss
  • Stop after losses in a row
  • Wait after a losing trade
  • Maximum contracts per trade

Your trading day

Choose when your trading day starts: midnight, or 17:00 or 18:00 the evening before. Evening trades then count toward the session they belong to.

From the Trade Check

If you ticked "Remember these rules on this device" in the Trade Check, the rules page can fill its form from them. Nothing is saved until you press Save.

One check everywhere

The Review, Stats and the rules page use the rules you have saved now, so a change applies to every day they show.

The daily Review

Every trading day, reviewed against your rules

Your journal opens on the last day you traded. The first card is that day's Rule Cost and today's room under each firm account's daily loss limit, with one action: close the day.

The day's Rule Cost

What the trades that broke a rule netted, beside the trades that followed every rule. A gain is never called a cost, and amounts in different currencies are never added together.

Today's room

The daily loss limit minus today's closed loss, per firm account, whatever day you are looking at. Your firm also counts open positions, so its own dashboard is authoritative.

Close the day

Write a reflection and one commitment for the next session; the next review shows it again. You can edit or delete it.

The last five trading days

Each day's trades, how many followed every rule, the net and what the rule breaks netted.

Practice accounts apart

Simulation and replay accounts are reviewed on their own and never added to your live totals or firm limits.

Nothing guessed

A trade without a recorded amount is counted and named, never estimated. Warnings about a stalled connection, an import or billing show above the day until you dismiss them.

The VantageGrid Review of one trading day for a synthetic evaluation account: its Rule Cost, minus USD 405.00 on one trade, and USD 1,000.00 of room left before the daily loss limit, counted from the day's closed trades
The Review's firm limits for a synthetic evaluation account.
Stats

Stats built around your rules

Pick an account and a period: all time, the last 12 months, 90 days or 30 days. Stats opens on that period's Rule Cost and the plan-only curve.

The plan-only curve

The running total of all your trades against only the trades that followed every rule, in closing order from zero. It is hindsight, not a forecast.

Results

Net, win rate, profit factor, average per trade, average win and loss, largest win and loss, trading days, and the best and worst day.

Equity and drawdown

Your running total from closed trades, starting at zero, and the deepest fall from a high point. Open positions and your broker balance are not in it.

Your rules, week by week

How many trades followed every rule each week, what the rule breaks and the rest netted, and each rule with its trades, days and net.

Calendar and time of day

Net per trading day for the latest twelve months with trades, and results by the hour you entered, in your account's time zone.

Instruments, sides and setups

Trades, net and win rate per instrument, long against short, and per setup you recorded.

Money is added only in your base currency. Trades in another currency, trades without a recorded amount and practice accounts are named at the top of the page and left out of every figure.

VantageGrid Reports for a synthetic sample account: the Rule Cost over all time, minus USD 1,620.00 on 4 trades, and the running totals of all trades and of only the trades that followed every rule, the gap between them shaded
Reports for a synthetic sample account.
Firm limits

Your firm's limits, beside every trading day

Enter each evaluation or funded account's limits once under Account → Risk Guard. The Review then shows the room left under the daily loss limit, from the day's closed trades.

Account Settings Risk Guard tab in Prop Firm mode with the FTMO 50k preset applied, showing account size, daily loss limit, max trailing drawdown, drawdown type and profit target.
Account → Risk Guard, switched to Prop Firm mode with the FTMO 50k preset applied: every field below the preset pickers is pre-filled and still editable.

The fields

The account name and size, the daily loss limit, the maximum drawdown and its type (static, end-of-day or intraday trailing), the profit target, the consistency rule and the minimum trading days.

Presets

Presets for FTMO, Topstep and Apex fill the fields in as a starting point. Firms change their programs, so check every field against your account's own rules.

The exact account name

Use the account name your imported trades carry, so the review counts the right trades. Each evaluation or funded account gets its own entry.

Free and Pro

Free keeps firm limits for one firm account; Pro covers every firm account. See Plans & limits.

A trailing drawdown moves with your balance through the session, open positions included, so the Review names your limit and your firm's dashboard keeps the live figure. Model the three types with the free drawdown calculator.

Firm limits

A review, not a risk system

VantageGrid reviews the trades you import or your connections send. It does not place or block trades, and data from a connection can arrive late or incomplete during fast markets or outages.

  • Treat your broker's, platform's and firm's own account state as the final source of truth.
  • Keep your configured limits current when your firm changes its rules.
  • If your own tools call the Pro API's pre-flight check, make them fail closed when it is unavailable.
  • Do not rely on VantageGrid as your only protection against a prop-firm rule breach.
Journal

The Journal page: reviewing, editing and enriching trades

The Journal is where imported and manual trades become reviewable records. Everything below happens on /journal.

Quick chips and filters

The chips above the list split trades into All, Wins, Losses, Mistakes and Missed. The Filter button opens the full filter modal: date range, account, instrument, setup, side, and a minimum/maximum P&L range. An active filter shows a badge count so you never silently review a subset by accident.

The trade modal

Click a trade to open its full record: narrative notes, three tag groups (Psychological Mistakes, Technical Confluence, SMC/ICT model tags), setup, sentiment, execution emotion, plan compliance, stop-loss/take-profit, and account name. Save writes everything at once.

Screenshots

Attach chart screenshots (PNG, JPEG or WebP, up to 5 a trade) to any trade from the same modal: paste one with Ctrl+V (⌘V on a Mac) while the trade is open, drop it on the box, or click to pick a file. Thumbnails show in a strip; click one for a full-screen lightbox. A counter on the button shows how many are attached. Screenshots stay private to you.

Sharing from the modal

The Share button in the trade modal creates the public read-only link described under Trade sharing.

Daily Journal, Mood and Notes Search

Notes and journal search work on every plan; Free keeps up to 5 daily notes a week and Pro has no limit. The Daily Journal panel gives every trading day its own free-writing space with autosave and one-tap mood chips (Focused, Calm, Confident, Anxious, Frustrated, Tired).

Missed Trades

Log a setup you saw but did not take via the Missed chip: instrument, setup, and a short note on what stopped you. Missed trades are tracked separately — they never touch your P&L.

Pivot Grid view

Next to the Trade List sits the Pivot Grid: an aggregate table that groups all your trades by Strategy Context, Asset, Day, Side or Quality, with win rate, average win/loss, net P&L and a Kelly % per group. Click any column header to sort. It is the fastest answer to "which bucket is actually carrying my results?".

Setups and tags

Setups and tags that make Stats useful

A setup name on each trade lets Stats compare your results setup by setup.

Setup names

Use stable names such as "Opening Range", "VWAP Reclaim" or "Trend Pullback". Renaming the same setup every week splits its results.

Mistake tags

Mark events such as FOMO, revenge, late entry, early exit, oversized risk, a moved stop or no plan, so each trade's record says what happened.

Process tags

Also tag what went right: patience, following the plan, a correct no-trade, reduced size, stopping after a rule was hit.

A useful minimum: one setup on every closed trade within a day of closing it. That is enough for Stats to compare your setups.

Playbooks

Turning a setup into a checklist

A playbook is a name, a description and an ordered list of plain-language rules, such as "Price is above the 200 EMA" or "Risk is 1% or less".

Create one

Open Playbooks, choose Create New Playbook, name it, describe the setup and add each rule as its own row. Once saved, it can be chosen when you log or edit a trade.

Mark a trade

When a trade uses a playbook, tick the rules you actually followed; the trade gets a compliance score.

Free and Pro

Free keeps up to 2 active playbooks and Pro has no limit.

Full dashboard

The full dashboard, widget by widget

Home has two views: the Review, and the full dashboard of widgets. Open the full dashboard from Home's tab bar. The “i” beside a widget opens its entry here. Widgets marked Pro show their figures on Pro only.

Win Rate

The share of your closed trades that ended with a profit.

Profit Factor

What your winning trades made divided by what your losing trades lost. Above 1, the winners outweigh the losers.

Expectancy

Your net P&L divided by your closed trades: the average result per trade.

Net PNL

Your net P&L after fees for this month, or for the date range you choose at the top of the page.

Total Trades

How many closed trades the figures are built from, with this week's count beside it.

Net P&L after tax

Your net P&L minus the share your expected tax rate sets aside, all time or for the date range you choose. Nothing is set aside from a loss. Set the rate under Settings → Financials; it is an estimate, not tax advice.

Sharpe Ratio

Your average trade result divided by how much trade results vary, per trade and not annualized. From 1 it reads Good, from 1.5 Excellent. Pro.

Z-Score (Runs)

A runs test on the order of your wins and losses. Beyond ±1.96 they come in streaks, or alternate, more than chance would explain; in between, no pattern stands out. Pro.

Grid Performance Score

A score from 0 to 100 in four parts: 30% the share of trades without a mistake over 30 days, 30% the share of trades that reached 1R or more, 20% your win rate (50% or more scores in full) and 20% today's P&L against your daily loss limit. Pro.

Fix This First

The one issue that would help most, picked from seven checks of your trades: behaviour tags, tilt, a setup whose results are slipping, missed trades you logged, sleep, hydration and focus, how your results vary by day, and the Grid Performance Score. It says why it matters and what to do, and names the next two. Pro.

Weekly Mission Plan

This week's plan, built from the issue in Fix This First: a target, rules for your trading, when to stop for the day and questions for your end-of-day review, with this week's trades and clean rate so far. Pro.

Strategy Context Intelligence

Each setup scored from 0 to 100 on its sample size, win rate, profit factor, average R, rule breaks, recent trend and trade quality, and marked Scale Candidate, Stable Edge, Watchlist or Avoid / Rebuild, with its best session. Pro.

Context Intelligence

Your results grouped by trading session, in New York time, and by whether a day's trades had consistent or mixed outcomes: the best environment and the riskiest, with average P&L, win rate and trades. Pro.

Proactive Insights

Short notes on your trades: a setup whose win rate over the last 30 days is 20 points or more below its overall rate, the behaviour tag that cost you most in 30 days. Pro.

Trade Permission

Before new risk: Go, Conditional, Reduce or No trade, with a score, a suggested size and the reasons, from the Circuit Breaker, your focus setup's edge and this week's mission. It is guidance: VantageGrid does not place or block trades. Pro.

Session Debrief

Today's closed trades, graded: the number of trades, the total R and the clean rate (the share of reviewed trades without a mistake), with what to repeat and what to fix. Pro.

Live Session Coach

During today's session, an alert when you near your daily loss limit, lose several trades in a row, show signs of tilt, trade fast (five trades in two hours or eight in a day) or give back profit. Pro.

Circuit Breaker

Your stops for today: the share of your daily loss limit used, trades taken against your maximum, your losing streak, tilt and whether live imports are paused. It warns from 60% of the limit and locks at the limit. Pro.

Psychological State

A tilt score from 0 to 100, read as Calm, Caution or Tilt, from your emotion tags, your losing streak, how fast you are trading and your discipline over the last 7 days. High means step away. Pro.

Performance Heatmap

Your P&L by weekday and hour of entry, in your time zone.

Daily P&L Calendar

Your net P&L per day, a month at a time. The full calendar is under Journal → Calendar.

Time of Day Zone

Your P&L and win rate by the hour you entered, in your time zone.

Market Sessions

Which of the New York, London and Tokyo sessions are open right now.

Health vs P&L

Your results by the sleep, hydration and focus you recorded in the Pre-Trade Sequence when you added a trade. Pro.

Accounts

Each account's closed trades, net P&L, win rate and profit factor.

Prop Fleet View

Each firm account you set up under Settings → Risk Guard, with its P&L against the profit target and the drawdown used. Only trades carrying that account's name count. Pro.

Correlation & Exposure

Your open positions by asset, and a warning when several tend to move together. Which assets move together is a fixed estimate, not measured from market data. Pro.

On a computer, open View options and choose Customize Layout to move or hide widgets; Add Widgets brings hidden ones back.

Trade Sharing

Sharing a single trade publicly without exposing your account

Create a link

From any trade, choose Share to generate a public, read-only link. Calling Share again on the same trade reuses that link rather than creating a duplicate.

What it shows

Instrument, long/short, net P&L, R-multiple, entry/exit, size, quality grade, whether the plan was followed, setup/sentiment/execution tags, and your notes.

What it never shows

Account name, broker identity, and fee breakdown are deliberately left out of the shared page, by design, regardless of what is visible to you privately.

Revoking

Revoke a link any time from the same trade. A revoked or unknown link shows the same generic "no longer available" message either way, so a dead link cannot be used to confirm whether a trade ever existed.

Shared trade pages are hidden from search engines by design and will not appear in Google or other search results.

Account Settings

The 12-tab map of Account Settings

Everything account-level lives in one place. Settings are organized by purpose: Account, Trading, and Data & business. All three groups stay visible in the desktop sidebar, with the same groups and names in the mobile Settings section menu. Security & 2FA is directly accessible under Account.

GroupTabWhat it's for
AccountProfileRead-only name/email (contact support to change either) and your membership plan card linking to Billing.
AccountSecurity & 2FA2FA setup/removal, backup recovery codes, and password change. See the Account Security section above for the full walkthrough.
AccountNotificationsDesktop, Telegram, email and sound alert preferences. See the Notifications section below.
AccountPrivacy ModeA browser-only toggle that blurs financial figures on screen.
TradingIntegrationsEvery broker, exchange, platform bridge and CSV import route lives here, including connect/disconnect controls and copy-paste webhook URLs.
TradingRisk GuardPersonal risk limits or your firm limits (drawdown type, consistency rule, profit target and more).
TradingJournal TagsCustomize the five tag sets used across the journal, with a one-click reset to defaults.
TradingAPI KeysCreate/revoke your VantageGrid API key (used for both platform webhooks and the Pro API) and manage outbound AI webhooks.
Data & businessFinancialsOne field: your expected tax rate (%).
Data & businessExportsCSV, Excel and JSON exports of every trade, on any plan.
Data & businessPartner ProgramA compact view of your referral link, referrals, conversions and credit days, linking to the full Partner Program page.
Account Security

Email verification, 2FA and recovery codes

Before upgrading or connecting external tools, confirm that account recovery and authentication are clean. A trading journal can become operational infrastructure, so treat access seriously.

Email verification

  1. Register with an address you control.
  2. Open the confirmation email and click the verification link within 48 hours.
  3. If the email is missing, sign in and use the resend confirmation link in the banner.
  4. Verified email is required before starting the free Pro trial.

Two-factor authentication

  1. Open Account Settings, then Security.
  2. Start 2FA setup and scan the QR code with an authenticator app.
  3. Enter the current authenticator code to enable 2FA.
  4. Store recovery codes in a password manager, not in screenshots or trade notes.

Backup codes

Backup codes are single-use recovery codes for losing access to your authenticator. VantageGrid stores them encrypted at rest and only shows them after password confirmation.

Password hygiene

Use a unique password, avoid shared team logins, and rotate the password immediately if you suspect browser, email or machine compromise.

API keys are not login passwords. Revoking an API key does not log out a browser session; changing password or logging out bumps session token version so copied browser tokens stop working.

Notifications

Configuring alerts in Account → Notifications

Desktop browser

Always on. Your browser will ask for permission the first time; allow it if you want in-browser alerts while VantageGrid is open in a tab.

Telegram

Message @userinfobot on Telegram to get your numeric chat ID, then paste that ID into Notifications. VantageGrid cannot look this ID up for you; it only works once you have it from Telegram itself.

Loss limit and account alerts

Always on and cannot be switched off: an alert when you reach a loss limit you set in Risk Guard, and notices about your account's security.

Optional toggles

The weekly digest (Sundays: your week's Rule Cost, the rule you broke most and one next step), the Pre-Market Briefing (weekdays: your last commitment, the rule to focus on, your rules and today's room), Product Updates, Performance Milestones (email), Trade Execution Alerts, Review Reminders, Sound Notifications (a ping on new trade events), and Streak Milestones can each be switched on or off independently.

Newsletter vs. account emails: the marketing newsletter is a separate double-opt-in list — subscribing sends a confirmation link you must click before anything else arrives, and every newsletter contains a one-click unsubscribe that takes effect immediately. Unsubscribing from the newsletter never stops account, security or billing emails; those follow the toggles above (and the always-on safety alerts).

Privacy Mode & Journal Tags

Blurring numbers on screen and customizing your tag vocabulary

Privacy Mode

The "Blur all financial data" toggle in Account → Privacy Mode is saved in your browser only, not on the server. It is meant for screen-sharing or filming over your shoulder in public. Because it is per-browser, turning it on at home will not carry over to your phone or a different browser — toggle it separately wherever you need it.

Journal Tags

Account → Journal Tags lets you edit five tag sets: Playbooks/Strategy Context, Psychological Mistakes, Technical Confluence, Strategy Model Tags (SMC/ICT-style), and Sentiments/Emotions. "Reset Defaults" restores VantageGrid's original list for any set you have changed.

Renaming a tag going forward does not rewrite the tag text already stored on old trades. If you rename "FOMO" to "Chasing Price" mid-journal, the old and new names count as two separate tags unless you also change the tag on past trades.

Your Data

Exporting your data, deleting your account, and fixing timezone or currency

Exports

Account → Exports offers CSV, Excel (.xlsx) and JSON exports of every trade you have stored, on every plan.

Canceling vs. deleting

Canceling your subscription (Billing → Cancel) only stops future charges; your account then becomes Free to keep, which shows this week and last. It does not delete anything — your trades, tags, notes and screenshots stay exactly as they were.

Deleting your account

In the Android app, open Account → Delete account and data, confirm the store-billing notice, and enter your password. If you cannot access the app, use the public deletion request page. Deleting VantageGrid does not cancel a Google Play subscription; cancel that separately in Google Play first. Minimal legal, billing, security, suppression, or audit records may be retained as described in the Privacy Policy.

Timezone and currency

Your timezone is set automatically once, during onboarding, and is not yet user-editable from Account Settings. A display-currency setting is also not available today. If either is wrong for your account, contact support — it is a quick manual correction on our side.

When an imported fill reports a fee in the traded base asset, VantageGrid converts it using that execution's price. Other currency conversions use daily accounting reference rates, which can differ from your broker's execution rate. Fiat rates come from Frankfurter. Supported crypto rates use Binance market prices and observed Kraken USDT/USD or USDC/USD prices; stablecoins are not assumed to equal one dollar. Crypto conversions for the current day use the preceding completed UTC day. Missing or unsupported historical rates stop the import for review instead of producing estimated totals.

Billing

Trial, Pro access, cancellation and refund basics

Web billing state is synchronized from Stripe. Android subscription access is synchronized from Google Play through RevenueCat. Manage renewal and cancellation with the provider where you purchased.

VantageGrid billing page showing Pro subscription status and billing management.
Billing page: verify Pro status, subscription state and portal actions here before assuming a feature-gating issue.

21 days of Pro

Every new account gets Pro from the moment its email address is confirmed, through the 21st day after that, until midnight in your time zone. No card is asked. One per account; an account that subscribed before, or was made before new accounts got a trial, keeps its plan.

Cancellation

Cancel web purchases from Billing and Android purchases from Google Play subscriptions. During a trial, cancellation prevents renewal while access may continue until the trial end.

Refund guarantee

The first paid subscription has a voluntary 14-day money-back guarantee. Contact support from the account email with the Stripe receipt or Google Play order number; store purchases may also use Google Play's refund process.

Wrong status

If payment succeeded but Pro is missing, restore purchases in the app and sign out/in. If it still looks wrong, include account email, approximate payment time, provider and subscription status.

Plans & Limits

Pro and Free to keep: the exact numbers

This is the full comparison behind the Pricing page. Every new account starts with 21 days of Pro, with no card; Free to keep is what stays after them without a subscription. Accounts made before new accounts got a trial keep the terms they had. Desk is no longer sold; an existing Desk subscription keeps everything in the Pro column.

IncludedFree to keepPro
PriceNo card€24/month or €179/year, VAT included
TradesUnlimited (file import or by hand)Unlimited
History shown in the Review, Stats and TradesThis week and lastEvery week, over any period
Your rules checked on every trade, the daily Review and the five-day trend✓✓
Stats: results, equity and drawdown, calendar, time of day, instruments, sides and setupsThis week and lastAny period
Exports of every trade (CSV, Excel, JSON)✓✓
Firm limits and the room leftOne firm accountEvery firm account
Active playbooks2Unlimited
Daily notes5 a weekUnlimited
Pro API for your own tools—✓

21 days of Pro unlock everything in the Pro column the moment your email address is confirmed, including the Pro API. No card is asked.

Exports and Limits

Reports, AI credits, replay limits and fair use

VantageGrid has several operational limits so expensive features remain reliable. Most limits reset automatically; Pro removes the core journaling caps.

AreaWhere to find itWhat to know
TradesImport and Add TradeNo monthly limit, on Pro and on Free to keep, counted across file imports and trades added by hand alike.
Trade exportsAccount → ExportsCSV, Excel or JSON of every trade, on any plan. Use CSV for accountant or broker reconciliation.
Pro API rate limitExternal `/api/v1/...` clientsDesign agents for 60 requests per minute and back off on 429 responses.
Sync cleanup`DELETE /api/v1/trades/sync/imports`Removes a bad sync batch; limited to 20 requests per minute, more strictly than sync itself.

Before exporting for tax or prop-firm review, filter by the correct account and date range, then compare total P&L and trade count against your broker statement.

Pro-Tier Developer Hub

The Pro API for your own tools and agents

The Pro API lets your own assistant or script read your numbers: your rules, what breaking them cost you, the room left on each firm account and your trades. It reads what is in your journal. It gives no advice, sends no signals and places no orders.

Full API documentation is in this Help Center. The interactive Swagger UI is only available in development environments; on production it redirects here.

Endpoint overview

Every external endpoint lives under /api/v1, authenticates with the same vgai_ API key, and requires an active or trialing Pro subscription. Rate limits are per client IP, so keys behind a shared network address share a bucket while one key rotating IPs receives separate buckets.

Each key has an access level, chosen when you create it and changeable on the Account page. A read-only key (scope journal:read, the default) can call every read endpoint and the trade pre-check. Sending, importing or deleting trades and contributing import blueprints also need journal:write; without it the API answers 403 and names the missing scope. Every call is counted on its key and the latest are listed beside it on the Account page.

EndpointWhat it doesKeyLimit
GET /ai-contextCompact, LLM-ready summary: your saved rules, this week's Rule Cost rule by rule, the room left on each firm account, recent performance and tag patterns. Documented in full below.Read60/min
GET /tradesYour journal's trades, newest first, with the export's fields less your notes. Filter by date and account; page with a cursor. Documented below.Read60/min
POST /guardian-validatePre-check a proposed trade against your firm limits, your risk rules and the Permission score. Writes nothing. Documented below.Read60/min
GET /prop-risk/fleetOpen-exposure clusters across your active prop-firm accounts.Read60/min
POST /trades/syncThe Pro API bulk import: closed trades from your own scripts and tools, up to 250 per call. Deduplicates by trade shape; rows with impossible close times are skipped, not fatal.Write60/min
GET /trades/sync/latestInspect your most recent synced trades, each with its source (diagnostics after a sync).Read60/min
DELETE /trades/sync/importsDelete specific bulk-imported trades by ID (cleanup of a bad batch); can only ever touch your own trades that came in through POST /trades/sync.Write20/min
POST /trades/omni-syncUniversal Omni-Importer: import mapped rows collected from a broker's web table or export page.Write60/min
GET /import-blueprints/lookup / POST .../learnFetch or contribute a crowdsourced import "blueprint" (structure + column mapping only, no personal data). A blueprint stays a candidate until a second, different user confirms the same structure.Read / Write60 / 30 per min
POST /trades/pdf-uploadPDF import is not implemented. This reserved endpoint returns 501 and does not accept, store or queue files.Read20/min
Authentication

Generating and protecting API keys

Account API Keys page showing key generation, active masked keys and outbound AI webhook configuration.
Account → AI API: generate one key per workflow, copy the raw key once, then manage only the masked row and revoke action.
  1. Open Account Settings.
  2. Open the AI API section.
  3. Create a named key such as "Claude Research Agent", and choose its access: read-only (recommended) for an assistant that reads your numbers, read and write only for your own sync scripts.
  4. Copy the key once and store it in a password manager or secret manager.
  5. Send the key in one header: Authorization: Bearer or X-VantageGrid-API-Key (X-API-Key also works).
  6. Revoke keys immediately when an agent, machine, or teammate no longer needs access.
Authentication header (send one of these)
Authorization: Bearer vgai_your_api_key_here
Or the key header
X-VantageGrid-API-Key: vgai_your_api_key_here

VantageGrid stores Pro API keys using hash-based lookup and encrypted storage. You still must treat the visible key as a secret because anyone holding it can call your Pro API until it is revoked. A new key is read-only unless you choose read and write; keys created before access levels existed keep read and write. You can change a key's access on the Account page at any time. Platform webhooks accept a key of either access level.

Outbound Webhooks

Pushing trade.closed events to your own service

This is the opposite direction from everything else in this Pro API section. The API key and platform webhooks above are for VantageGrid receiving data. Outbound AI webhooks are for VantageGrid sending a notification to a URL you control the moment a trade fully closes.

  1. Open Account → API Keys → Outbound events.
  2. Add a name, an https:// URL you control, and an optional shared secret.
  3. Every time one of your trades closes, VantageGrid sends a signed POST to that URL.
Payload shape
{
  "event": "trade.closed",
  "schema": "vantagegrid.webhook.v1",
  "timestamp": "2026-07-04T14:32:00+00:00",
  "trade": {
    "id": 10321,
    "instrument": "ES",
    "action": "sell",
    "quantity": 1,
    "entry_price": 18500.25,
    "exit_price": 18512.75,
    "net_pnl": 250.0,
    "account_name": "Main Futures",
    "tags": "Opening Range,Following Plan",
    "sentiment": "Confident",
    "closed_at": "2026-07-04T14:31:58+00:00"
  }
}

If you set a shared secret, every request carries an X-VantageGrid-Signature: sha256=<hex> header — an HMAC-SHA256 of the raw request body using your secret. Recompute it on your end and compare before trusting the payload.

Each webhook row shows a Last Status (ok, or error: HTTP 4xx/5xx, or a connection error) after its most recent delivery attempt, so you can debug a silent integration without needing server-side logs. Deliveries time out after 8 seconds.

Endpoint Reference

GET /api/v1/ai-context

Returns a compact account context for your own assistant (GPT, Claude, Gemini or a script), with schema vantagegrid.ai_context.v2. Every figure comes from your own journal and settings; a value that is not recorded is null, never guessed. When realized amounts are incomplete, or trades in two currencies would have to be added, the endpoint answers 409 with the reason instead of a total.

FieldDescription
rulesYour saved rules: configured, day_start_minutes, time_zone and the inputs you set (trading window, trades per day, loss per trade, daily loss stop, losses in a row, wait after a loss, contracts). Empty inputs are left out.
rule_costThis calendar week's Rule Cost on your live accounts, checked like the Review (window is week, or 30d when this week has no closed trade). kind is cost, gain, clean, mixed (several currencies: no single value) or unknown (with a reason, for example no rules saved). Also trades, followed, broke, followed_net and broken: each rule broken, its setting, how many trades and days broke it and what they netted.
accountsOne entry per live account: name, firm, firm_limit (the daily loss limit you entered for its firm account), room_left today from closed trades, daily_loss_progress and drawdown_progress in percent. Each is null when no firm limit is set for that account.
playbooksActive playbooks with at least one checked trade: name, average discipline_score and checked_trades. Left out when there are none.
recent_performanceThe last 30 days of closed trades: trade count, net P&L, average, win rate, profit factor, wins and losses, and how many trades have incomplete fees or uncertain times.
emotional_patternsYour own tags (FOMO, Revenge, Patience, Following Plan and so on) with net P&L, win rate and trade count per tag.
prop_firm_guardianThe firm-limit state the full dashboard shows for all accounts together.
behavioral_bias_summaryThe tag with the lowest net P&L and the counts behind it, in one sentence.
Request
curl -s https://vantagegrid.pro/api/v1/ai-context \
  -H "Authorization: Bearer vgai_your_api_key_here"
Part of a response, on the sample week (synthetic data, not a customer result)
{
  "schema": "vantagegrid.ai_context.v2",
  "rules": {"configured": true, "day_start_minutes": 0,
            "inputs": {"windowStart": "00:00", "windowEnd": "15:30",
                       "maxTradesPerDay": 3, "maxConsecutiveLosses": 2}},
  "rule_cost": {"window": "week", "currency": "USD", "kind": "cost", "value": -1620.0,
                "trades": 18, "followed": 14, "broke": 4, "followed_net": 2450.0,
                "broken": [
                  {"id": "window", "setting": "00:00 to 15:30", "breaks": 2, "days": 1, "net": -850.0},
                  {"id": "maxTradesPerDay", "setting": "3", "breaks": 1, "days": 1, "net": -405.0},
                  {"id": "maxConsecutiveLosses", "setting": "2", "breaks": 1, "days": 1, "net": -365.0}]}
}
Endpoint Reference

GET /api/v1/trades

Your own trades, newest entry first, with schema vantagegrid.trades.v1. Each trade has the fields of the journal export (prices, size, result, fees, account, tags and where it came from) without your notes. Read-only: a read-only key is enough.

Query parameterPurpose
since, untilOptional. Entry dates, YYYY-MM-DD in UTC, both inclusive.
accountOptional. An account name as it appears on your trades.
limitOptional. Trades per page, 50 by default, at most 200.
cursorOptional. The next_cursor of the previous page; null means there is no further page.
Request
curl -s "https://vantagegrid.pro/api/v1/trades?since=2026-10-26&limit=100" \
  -H "Authorization: Bearer vgai_your_api_key_here"
Endpoint Reference

POST /api/v1/guardian-validate

Accepts a proposed trade and returns whether it fits your current drawdown, your firm limits, your own risk rules and the Trade Permission score. It writes nothing and places nothing: a read-only key is enough. It checks your own limits; it is not advice about the trade.

Request fieldPurpose
instrumentRequired. Symbol such as ES, EUR/USD, XAU/USD, BTC/USD, AAPL, US30, or a broker-specific symbol.
actionRequired. One of buy, sell, long, or short (case-insensitive).
quantityRequired. Proposed size in contracts/lots/units; must be greater than 0.
priceOptional. Expected entry price if known.
stop_lossOptional but strongly recommended. Stop price used to estimate potential loss; without it a bot may be denied because downside cannot be estimated.
take_profitOptional. Target price, used for risk/reward context.
risk_amountOptional. Dollar risk you intend to take, if you already computed it yourself.
accountOptional. Account name as a string (matching the account names on your trades); defaults to "all". Use the exact prop account name when rules differ per account.
setupOptional. The setup/strategy-context name, so the Permission score can weigh your historical edge in that setup.
sleep, hydration, focusOptional wellness self-ratings; when supplied, they feed the Trade Permission readiness score just like the in-app pre-trade check.
Request and response
curl -s https://vantagegrid.pro/api/v1/guardian-validate \
  -H "Authorization: Bearer vgai_your_api_key_here" \
  -H "Content-Type: application/json" \
  -d '{
    "instrument": "ES",
    "action": "buy",
    "quantity": 1,
    "price": 18500.25,
    "stop_loss": 18480.25,
    "account": "Apex 50k",
    "setup": "Opening Range"
  }'

{
  "authorized": true,
  "decision": "go",
  "score": 78,
  "size_multiplier": 1.0,
  "reasons": [],
  "rule_guard": { "...": "per-rule evaluation details" },
  "guardian": { "...": "current firm-limit drawdown state" },
  "permission": { "...": "full Trade Permission breakdown" },
  "proposed_trade": { "...": "echo of your request" }
}

authorized is the single boolean to act on. It is only true when no firm limit is breached, daily-loss and drawdown progress are both under 100%, every configured risk rule passes, and the Permission decision is go, conditional or reduce. When it is false, the reasons array lists every blocker in plain language. Honor size_multiplier (for example 0.5 = half size) when the decision is reduce.

SDK Example

Complete Python SDK example for AI integration

vantagegrid_client.py
from __future__ import annotations

from dataclasses import dataclass
from typing import Any, Dict, Optional

import requests


class VantageGridError(RuntimeError):
    pass


@dataclass
class ProposedTrade:
    instrument: str
    action: str                      # buy | sell | long | short
    quantity: float
    price: Optional[float] = None
    stop_loss: Optional[float] = None
    take_profit: Optional[float] = None
    risk_amount: Optional[float] = None
    account: str = "all"             # account NAME, e.g. "Apex 50k"
    setup: Optional[str] = None


class VantageGridClient:
    def __init__(self, api_key: str, base_url: str = "https://vantagegrid.pro", timeout: float = 10.0):
        self.base_url = base_url.rstrip("/")
        self.timeout = timeout
        self.session = requests.Session()
        self.session.headers.update({
            "Authorization": f"Bearer {api_key}",
            "Content-Type": "application/json",
            "User-Agent": "VantageGrid-AI-Client/1.0",
        })

    def _request(self, method: str, path: str, **kwargs: Any) -> Dict[str, Any]:
        url = f"{self.base_url}{path}"
        response = self.session.request(method, url, timeout=self.timeout, **kwargs)
        if response.status_code == 401:
            raise VantageGridError("API key is missing, invalid, or revoked.")
        if response.status_code == 403:
            # An inactive Pro subscription, or a read-only key on a write endpoint.
            raise VantageGridError(response.json().get("detail", "Access refused."))
        if response.status_code == 429:
            raise VantageGridError("Rate limit exceeded. Back off before retrying.")
        if response.status_code >= 400:
            raise VantageGridError(f"VantageGrid API error {response.status_code}: {response.text[:300]}")
        return response.json()

    def ai_context(self) -> Dict[str, Any]:
        return self._request("GET", "/api/v1/ai-context")

    def trades(self, since: Optional[str] = None, limit: int = 50, cursor: Optional[int] = None) -> Dict[str, Any]:
        params = {"since": since, "limit": limit, "cursor": cursor}
        return self._request("GET", "/api/v1/trades", params={k: v for k, v in params.items() if v is not None})

    def guardian_validate(self, trade: ProposedTrade) -> Dict[str, Any]:
        payload = {
            "instrument": trade.instrument,
            "action": trade.action,
            "quantity": trade.quantity,
            "price": trade.price,
            "stop_loss": trade.stop_loss,
            "take_profit": trade.take_profit,
            "risk_amount": trade.risk_amount,
            "account": trade.account,
            "setup": trade.setup,
        }
        payload = {key: value for key, value in payload.items() if value is not None}
        return self._request("POST", "/api/v1/guardian-validate", json=payload)


if __name__ == "__main__":
    client = VantageGridClient(api_key="vgai_your_api_key_here")

    context = client.ai_context()
    rule_cost = context["rule_cost"]
    print("Rule Cost this week:", rule_cost["kind"], rule_cost.get("value"), rule_cost["currency"])
    for rule in rule_cost.get("broken", []):
        print(f'  {rule["label"]}: broken {rule["breaks"]} times, net {rule["net"]}')

    decision = client.guardian_validate(ProposedTrade(
        instrument="ES",
        action="buy",
        quantity=1,
        price=18500.25,
        stop_loss=18480.25,
        account="Apex 50k",
        setup="Opening Range",
    ))

    if decision.get("authorized"):
        multiplier = decision.get("size_multiplier", 1.0)
        print(f"Trade within your limits (size multiplier: {multiplier}).")
    else:
        print("Trade blocked:", "; ".join(decision.get("reasons", [])))

Execution bots should fail closed. If VantageGrid is unreachable, the safest default is not to place the trade.

Security

API key best practices

  • Create one key per agent, device, or automation workflow.
  • Name keys clearly so you can revoke the correct key quickly.
  • Store keys in a secret manager, environment variable, or password manager. Never hardcode them into public repos.
  • Rotate keys after contractor changes, machine loss, prompt leaks, log leaks, or accidental paste into chat.
  • Use HTTPS only. Do not send keys to browser extensions or third-party agents you do not control.
  • Monitor rate-limit errors. Sudden 429 responses can indicate a runaway agent or accidental loop.
Zero-Support Troubleshooting

Common issues and exact fixes

My CSV will not upload or the mapping looks wrong

The import page reads most platform exports without any mapping and counts the rows it can't read, with the reason. For a layout it doesn't recognise, use the column matcher:

  1. Confirm the file is a CSV, not XLSX renamed as CSV.
  2. Open the file and verify the first row contains headers.
  3. Map required fields: instrument, side, quantity, entry, exit, open time, close time, and realized P&L.
  4. Check decimal format. Use `1234.56`, not mixed comma and dot formatting.
  5. Remove totals, notes-only rows, deposits, withdrawals, and broker summary rows.
  6. Save a broker template once the mapping works.

Common header fixes: map `Symbol`, `Market`, or `Instrument` to instrument; map `Realized P/L`, `Profit`, or `Net PnL` to P&L; map `Commission` or `Fees` to fees.

Login issues, Google OAuth, or password recovery
  1. Use the same login method you used when creating the account. Email/password and Google OAuth can create different sessions.
  2. If password login fails, use Forgot Password and check spam, promotions, and security filters.
  3. If Google OAuth fails, allow popups and cookies for VantageGrid and Google, then retry in a clean browser session.
  4. If 2FA is enabled, enter the current authenticator code. Codes expire quickly, so wait for the next code if one is near expiry.
  5. Clear only VantageGrid site cookies if the browser is stuck in a redirect loop.
Subscription status, upgrade, or Pro access is wrong
  1. Open Billing and confirm Stripe status is active or trialing.
  2. Refresh the app after payment or sign out and back in.
  3. Use the Billing Portal to update card, invoice, or subscription details.
  4. Pro API routes require an active Pro subscription. Referral credits may unlock browser features but external API access is stricter.
I lost or exposed an API key
  1. Open Account Settings, AI API.
  2. Revoke the exposed key immediately.
  3. Create a new named key.
  4. Update the agent, bot, or secret manager using that key.
  5. Restart the agent and verify calls to `/api/v1/ai-context` work.
Sync is offline

Check platform bridge status, API key, webhook URL, internet connection, and whether the trading platform is running. If the key was regenerated, update it in the bridge or Expert Advisor.

My outbound AI webhook shows an error status

Check the Last Status shown next to the webhook in Account → API Keys after your next trade closes. An HTTP error means your endpoint rejected or failed the request; a connection error usually means the URL is unreachable or too slow (deliveries time out after 8 seconds). If you verify signatures, make sure you are hashing the exact raw request body with the exact secret configured in VantageGrid.