# Vigo Trading Community > A bilingual (Spanish/English) platform for learning stock and options trading: > a structured academy, a 0DTE SPX research and backtesting environment, and a > practice sandbox over real historical sessions. Everything is simulated. No > real orders are placed and no real money is at risk. Nothing here is > investment advice. ## What is real and what is modelled Read this before drawing conclusions from any number this API returns. - The **live option chain** and equity quotes are real market data, served on a 15-minute delay. - The **underlying path** used by Research and Practice is real: 5-minute S&P 500 index bars, roughly two years of history. - The **option prices** in Research and Practice are **MODELLED** from that path plus the session's VIX. They are not historical option quotes. Every payload that contains one carries `"modeled": true`. Treat backtest results as a laboratory for comparing rules and measuring the effect of costs — not as evidence that a strategy has a market edge. ## Authentication Create a personal token from Settings → API in the web app, then send it as a bearer credential. Tokens begin with `vgo_`. curl https://vigo.trade/api/v2/tokens/whoami \ -H "Authorization: Bearer $VIGO_TOKEN" ## Rate limits A credit budget per token, refilled continuously. Cheap calls cost 1 credit; an uncached backtest costs 250, because it replays every session in the window. Capacity is 10000 credits, refilling at 20/second. Over budget returns HTTP 429 with a `Retry-After` header. ## Conventions - All money is in US dollars. Option prices are per unit; multiply by the contract multiplier (100) for the cash amount. - Times are `HH:MM` in US Eastern, the market's own clock. Dates are `YYYY-MM-DD`. - Strikes are on the SPX 5-point grid. - Errors are `{"detail": "a sentence written for a human"}` with a 4xx status. - Send a real `User-Agent`. The CDN in front of the site blocks a few default library signatures — notably Python's `urllib` — with an HTTP 403 that never reaches this API. `curl`, `requests`, `httpx`, `fetch` and Go's client all pass. ## OpenAPI The full machine-readable specification, generated from these routes: - https://vigo.trade/openapi.yaml - https://vigo.trade/api/openapi.json ## Endpoints ### /v1/learn - `GET /api/v1/learn/courses` - `GET /api/v1/learn/exams/{scope}/{ref}` - `GET /api/v1/learn/glossary` - `GET /api/v1/learn/lessons/{lesson_key:path}` - `GET /api/v1/learn/questions/{bank:path}` — Draw for an INLINE lesson quiz. Inline checks require all-correct (pass_pct 100). - `POST /api/v1/learn/grade` — Grade a draw. Body: {drawToken, answers: [{id, value}]}. Answer keys stay server-side. ### /v2/practice - `DELETE /api/v2/practice/sessions/{session_id}` - `GET /api/v2/practice/analyze` — How the user's practice is actually going, across every session they ran. - `GET /api/v2/practice/days` — Every session available to practice, newest first. - `GET /api/v2/practice/fees` - `GET /api/v2/practice/sessions/{session_id}` - `GET /api/v2/practice/sessions` - `POST /api/v2/practice/sessions/{session_id}/orders` - `POST /api/v2/practice/sessions/{session_id}/seek` — Move the clock. Forward advances; backward rewinds. - `POST /api/v2/practice/sessions` — Open a practice session. Omit `date` for a random day. - `PUT /api/v2/practice/fees` ### /v2/research - `DELETE /api/v2/research/portfolios/{portfolio_id}` - `DELETE /api/v2/research/strategies/{strategy_id}` - `GET /api/v2/research/backtest/{key}` — Poll a running backtest. Finished ones are served from the result store. - `GET /api/v2/research/portfolios/{portfolio_id}/result` - `GET /api/v2/research/portfolios` - `GET /api/v2/research/sessions/{date}` — The real 5-minute index path for one session. - `GET /api/v2/research/strategies` - `GET /api/v2/research/window` — How much history there is to test against. The UI states this up front. - `POST /api/v2/research/assistant` — Turn a sentence into a validated strategy spec — nothing is run. - `POST /api/v2/research/backtest` — Start (or return) a backtest. - `POST /api/v2/research/describe` — Validate a spec and echo its sentence — the builder's live preview. - `POST /api/v2/research/portfolios` - `POST /api/v2/research/strategies` ### /v2/tokens - `DELETE /api/v2/tokens/{token_id}` - `GET /api/v2/tokens/whoami` — The first call to make from a script: proves the token works. - `GET /api/v2/tokens` - `POST /api/v2/tokens` — Mint a token. The plaintext is in this response and nowhere else, ever. ## Getting started with an agent Read https://vigo.trade/llms.txt to learn the Vigo platform and its API. Then, using my token, backtest this idea: sell a 16-delta SPX iron condor at 09:35 ET with 10-point wings and a 50% take-profit, and compare it against 10-delta and 25-delta variants. Report expectancy, profit factor and maximum drawdown for each, and tell me which one survives — remembering that these option prices are modelled, not historical quotes.