Paper Trading
Paper Trading (shown as Demo Mode on the dashboard) gives your account a set of paper wallets with a pretend balance. Trades are priced against the live market exactly as a real trade would be at that moment — same venue, same route, same slippage — and then filled on paper: nothing is signed, nothing goes on-chain, and no fees or tips are paid.
It is the right place to test a script before it touches real funds.
Availability: Paper Trading works through the API for Solana and Robinhood Chain. The dashboard and the Telegram bot don’t offer a switch for it yet, so you turn it on with POST /demo/mode. Once an account is in Paper Trading, the dashboard and the bot show a Paper Trading banner and a button to switch back to real.
How it works with the API
There are no separate paper-trading endpoints. Paper Trading is a mode on your account:
- Switch the account into Paper Trading with
POST /demo/mode. - Fetch your wallets again with
GET /wallets— you now get your paper wallets. - Trade with the ordinary
POST /tradings/buyandPOST /tradings/sell, naming a paper wallet. - Switch back with
POST /demo/modeand{"mode": "real"}when you are done.
The mode belongs to the account, not to your script. While it is on, the dashboard and the Telegram bot are in Paper Trading too, and when you switch back to real, everything — including a script that is still running — trades for real again. Check enabled in GET /demo/status before a script places a trade, and stop scripts before you switch modes.
Turning it on
curl -s -X POST "$NEURO_API/demo/mode" \
-H "Authorization: Bearer $NEURO_TOKEN" \
-H "Content-Type: application/json" \
-d '{"mode": "demo", "startingBalanceSol": 100}'| Field | Type | Notes |
|---|---|---|
mode | "demo" | "real" | Required. |
startingBalanceSol | number | Paper SOL balance, 1–10,000. The first time, it defaults to 50 SOL; after that, leaving it out keeps the balance you have. Ignored with "real". |
chainId | number | An EVM network to get a paper wallet on, such as 4663 for Robinhood Chain. Leave it out for Solana. |
startingBalance | number | Paper balance of that EVM network’s coin (for example ETH), 0.1–1,000. Defaults to 10 the first time. Needs chainId. |
Checking the mode
curl -s "$NEURO_API/demo/status" -H "Authorization: Bearer $NEURO_TOKEN"{
"code": 200,
"message": "Success",
"data": {
"mode": "demo",
"enabled": true,
"provisioned": true,
"provisionedAt": "2026-10-20T09:12:44.000Z",
"lastResetAt": null,
"canResetAt": null,
"startingBalanceSol": 100,
"startingBalances": { "4663": 10 }
}
}enabled is the one to check: true means trades are paper fills.
What a paper trade returns
A paper buy or sell answers in the same shape as a real one (Placing trades), with two differences:
- The transaction id starts with
demo_(for exampledemo_3f2a…). It is not an on-chain signature and will not be found on an explorer.GET /tradings/demo_…/statusanswerssuccessfor it straight away. - Fees, tips and gas are always zero.
Paper trades appear in GET /tradings and in your positions and PnL like real ones, but only while the account is in Paper Trading — real and paper history never mix. They never count toward points, volume or referral rewards.
Transfers, withdrawals and private-key export are refused for paper wallets.
Starting over
POST /demo/reset wipes every paper balance, holding, trade, sniper bot and copy-trade subscription, and reseeds the balances:
curl -s -X POST "$NEURO_API/demo/reset" \
-H "Authorization: Bearer $NEURO_TOKEN" \
-H "Content-Type: application/json" \
-d '{"confirm": true, "startingBalanceSol": 100}'| Field | Notes |
|---|---|
confirm | Required, and must be exactly true. |
startingBalanceSol | New paper SOL balance, 1–10,000. Leave it out to keep the current one. |
chainId, startingBalance | Reseed one EVM network’s paper wallet at a new balance. |
You can reset once an hour. A reset inside that hour answers 429, and canResetAt in GET /demo/status says when the next one is allowed. A reset sent while a paper trade is still being recorded answers 409; retry after a moment.