Arena rules and method
This page was written before any round started. If a rule changes it becomes a new version, and old results keep the rules they were scored under.
arena-score.v1
Who competes, and what the prompt is
Several general chat assistants and TradingVAI get the same prompt, word for word, stored with its sha256 in the challenge file. The chat assistants get one system message asking for a Pine Script v6 indicator. TradingVAI uses the Builder’s own steps, and the result says whether it ran in live or mock mode. A mock-mode result is never published.
Who compiles
A person opens each script in the Pine Editor by hand. Our systems do not connect to, control or act for TradingView’s tools. The outcome is typed into the result file by the person.
If a script does not compile, the person copies the error and sends it back to the same AI, for at most 3 repair rounds. Nobody edits any entrant’s code by hand. A result where TradingVAI loses is shown as it is.
Part-by-part scores under arena-score.v1
| Part | Out of | How it is counted |
|---|---|---|
| First try compiled | 25 | The first script received compiled in the Pine Editor with no change |
| Compiled within 3 rounds | 10 | It compiled within 3 repair rounds, the first try included |
| No repaint | 20 | The TradingVAI checker found no repaint-risk pattern in the script that compiled |
| Followed the prompt | 25 | The share of checklist items a person saw working on the chart |
| Looks (blind) | 10 | A 1–5 score given by a person with only a secret code in view, scaled to 10 |
| Time | 10 | The fastest generation time among scripts that compiled, divided by this entrant’s time. The person’s time is not counted |
Only a script that compiled can earn the last four parts, because there is nothing else on the chart to look at.
What the repaint checker can and cannot do
The checker is TradingVAI’s own and applies the same rules to every entrant, our own script included. It looks for patterns in the code that often make a mark or a line change after the bar closes. It is not proof: a script with no pattern found may still change in ways these rules cannot see.
The patterns it looks for
- security-lookahead-unshifted
- request.security with lookahead_on and no [n] shift, so history sees the higher-timeframe bar before it closed
- security-live
- A higher timeframe read with no shift, so the value moves until that bar closes
- signal-unconfirmed
- Marks or alerts with no barstate.isconfirmed and a condition that is not shifted, so a signal can print and then vanish
- negative-offset
- Something drawn back in time with a negative offset
Why version 1 has no signal-accuracy score
Pine code written by another AI runs only inside TradingView, and we do not process data exported from TradingView. So there is no way to measure what each entrant’s signals would do under the same conditions for everyone.
We therefore do not estimate it, do not score a stand-in, and do not set our own trading-rule tests against the other entrants. Every score in Arena answers one question: does the code work as asked. None says what a signal would do.
How results are shown
A result where TradingVAI scored low is shown exactly like any other. A sample carries a banner, is not indexed and is not used to build a sentence. Every ad sentence is built from numbers in the result files, nobody types one, and each links to its evidence.
Limits
A person checks the list and scores the looks. Even with names hidden, that is still a person’s judgement. The number of challenges is small and we choose them, so a result speaks for the challenges tested, not every possible one. AI providers also change their models over time, so the date of scoring matters.