Check a Pine Script written by an AI
A Pine script from ChatGPT, Claude or another AI can compile and still prove nothing. Paste it here: the Lab engine, running in your browser, replays it on real BTCUSDT candles and returns a verdict on a sealed period, or refuses with the exact reason. Free, no account, and your script is not sent.
- Paste the Pine v5 strategy your AI wrote.
- Choose the data: BTCUSDT, in 1 d (full history), 4 h (3 years) or 1 h (1 year).
- Read the verdict: holds, mirage, inconclusive or not enough trades. If the judge refuses, it says why.
- Copy the prepared request and paste it into your AI, with the verdict or the refusal, so it can correct the script.
To write or edit a Pine, you need TradingView. New accounts only: free account, and $15 off a first subscription through this link. TradingView →
This journal stays in your browser and is never sent to the server. You can erase it at any time. It informs and proves nothing: it does not change the verdict and does not replace the Lab’s trial counter. A script changed even by one space counts as a different script.
The copied text contains your script. Nothing is sent: you paste it yourself into your AI. Research on past data, not advice.
Trades on the sealed period
To search better, test variants and count your trials, use the desktop Lab, free for Windows and Linux.
What this check adds to your AI
- An AI can say a strategy looks good. The judge replays it on candles kept apart, the last 20% of the window, and compares it with buy and hold.
- Compiling is not holding: the judge separates a script that runs from a rule that survives.
- If your AI rewrites the script several times, the journal in your browser shows how many trials you have made. A script changed even by one space counts as a different script.
- A refusal is useful: it names the Pine construct the judge cannot replay, instead of testing an approximate strategy.
Measured on 2 November 2026: of 10 ordinary scripts written by Claude, on 1D, the judge accepted 6 and refused 4 (long/short reversal, ATR stop, Bollinger, SuperTrend). That is one small test with one AI, not a score for AIs in general.
Real example: why an EMA 9/21 crossover is not conclusive
Here is what the judge answers to this page’s example script, on BTCUSDT daily candles, with 0.10% fees per fill. Computed on 4 November 2026 by the same engine that runs in your browser. Data: Binance, up to 2026-10-16.
Verdict: not conclusive. The script beats holding BTC on the period it never saw (+2.9% against −23.2%), but 35 random markets out of 100 do as well. Chance is enough to explain its lead: we cannot say it has a real edge.
1. The history cut in two
The judge replays the script on the first 80% of the history, then assesses it on the last 20%, from 2024-12-17 to 2026-10-16, which it never saw. On this sealed period it made 16 trades, green when they win and red when they lose.
2. What it earns per year, before and after the cut
On training, +67.2% per year. On the period it never saw, +1.6% per year. This is the typical gap of overfitting: a simple rule looks brilliant on the past used to pick it, much less afterwards.
3. The sealed period, day after day
The script stays almost flat while BTC falls: it avoids part of the drop, which explains its lead over holding.
4. What fees take
Before fees, about +6.2%; after fees, +2.9%. Estimate from the 16 sealed trades.
5. Against chance
The judge replayed the market at random 1,000 times, keeping its shape. 348 times out of 1,000, a strategy with no edge does as well as this script against holding. To rule out chance, it would take 5 times out of 100 at most.
What “holds” would have taken
- ✓ At least 10 trades on the sealed period: 16.
- ✓ Better than holding BTC: +2.9% against −23.2%.
- ✓ Solid on training, trials counted (deflated Sharpe at least 95%): 99.98%.
- ✗ Not explained by chance (5 out of 100 at most): 35 out of 100.
Definitions of the terms
- Sealed period
- The last 20% of the history, kept apart: the script never saw them.
- Overfitting
- A strategy tuned so closely to the past that it learned its noise.
- Holding
- Buying at the start and waiting. Any strategy has to do better.
- Test against chance (SPA)
- The market is replayed at random, keeping its shape; we count how often a strategy with no edge does as well. Hansen’s SPA test, 2005.
- Deflated Sharpe
- The Sharpe ratio corrected for the number of scripts tried. Bailey and López de Prado, 2014.
Research on past data, not advice. Data: Binance, CC BY-NC-SA 4.0 licence.
Which test gives a verdict?
| Tool | Where it runs | Cost | What it answers | Variant search |
|---|---|---|---|---|
| Online judge (this page) | Your browser | Free | A verdict on a sealed period | No, the script as it is |
| Quick Check | The site | Free | Pine compatibility only, no verdict | No |
| Strategy Arena Lab | Your PC, Windows or Linux | Free | A verdict on a sealed period | Yes, every variant is counted |
| Survival Audit | The server | 9.90 EUR, once | Bounded stress tests in a private report | No, the exact code is fixed before payment |
Limits
- One script, as it is: the judge searches no variant.
- Past data: a verdict says nothing about the next period.
- Not advice: research on past data, not an investment recommendation.
- The judge follows the script: orders fill at the close of the signal bar with process_orders_on_close=true, at the next open without it, as on TradingView. The model used is shown with the verdict.
- Real TradingView check on 1 November 2026, BINANCE:BTCUSDT, 1D, 8 scripts covering the four execution models: 2,433 closed trades out of 2,433 with the same dates, 2,418 with the same prices as well (the 15 others in December 2017, up to 65.89 USDT apart, where TradingView shows other prices than our candles). These are measurements on these scripts, not a guarantee for every Pine.
FAQ
Does it tell me which AI writes the best strategies?
No. It judges one script as it is. A verdict says nothing about the model that wrote it, and nothing about the future.
Is my script sent to Strategy Arena or to an AI?
No. The calculation runs in your browser. The script leaves it only if you choose to make it public on a card, or paste the prepared request into your AI yourself.
My script was refused. Is it bad?
Not necessarily. A refusal means the judge cannot replay it exactly. It says nothing about its quality. The page shows the reason and prepares a request for your AI.
Is the check free?
Yes. The page, the calculation in your browser and the verdict card are free, with no account.
Can my AI drive the tests itself?
Yes, with the desktop Lab for Windows and Linux, which an AI can drive over MCP. It searches variants and counts every trial.
Go further: testing a Pine script out of sample, tools compared · what the judge answered to old rules · check a Pine written by an AI
Data: Binance, CC BY-NC-SA 4.0 licence. Research on past data, not advice. manifest