# troid — methodology, versioned

troid publishes arithmetic, and arithmetic can be wrong. This file says how numbers get
onto a page, what tier each one carries, and every correction made since launch. It is
versioned because the method changes, and a method that changes silently is a method
nobody can check.

## Tiers

Every published figure carries one of four tiers, and a reader can find which:

- **DERIVED** — algebra from a firm's published rules. Reproduces in `backtest/verify_claims.py`.
- **SOURCED** — read from a firm's own primary document, with the section cited.
- **MODELLED** — a simulation with stated assumptions. Sensitive to those assumptions.
- **MEASURED** — a backtest or forward test on one sample. Never stated as fact.

## How a rule gets onto a page

1. Read from the firm's own documents — Terms *and* help centre or product page, both.
2. Where the two disagree, the stricter figure governs until the firm confirms in writing.
3. Record the source URL beside the field. A config file is not a source.
4. Third-party directories and reviews may point at where to look. They never fill a cell. A value that
   predates this rule and has no recorded source says "source not yet recorded" until a source is recorded or
   the value is replaced from the firm's own documents.
5. A rule with no value shows *pending*. A value with no recorded source says "source not yet recorded" until
   one is recorded. Every computed number shows the document, section and read date of each rule it used. The
   same rule applies to every firm.

## How a strategy number gets onto a page

It doesn't, as fact. The strategy's result is MEASURED. It is published with its sample
size, standard error, and confidence interval, and with the number chance alone would
produce across the configurations searched. When the walk-forward came back as noise, the
page said so the same day.

## Firm selection

One reference firm, chosen for verification depth, not rank. Two rotating slots by an
external, public, checkable ranking, reviewed quarterly. Alphabetical on the page. No
score or badge of troid's own, no recommendation. The link for each appears when its affiliate
agreement exists and its daily, max, target and price cells each have a recorded source; until then it is held.

## Corrections

| date | what was wrong | what changed |
|---|---|---|
| 2026-09-21 | Daily limit modelled from day-start balance. Bitfunded's FAQ says initial balance. An unverified assumption in the first config propagated through a code review that checked the engine against the config rather than the firm. | Basis corrected. Crossover $97,917 → $98,000. Rule added: no parameter enters a config without a `verified_from` URL. |
| 2026-09-21 | Open-position cap modelled as 10 (ToU). Help centre says 5. Hold cap modelled as a flat 10 days; help centre tiers it 10/7/5 by asset. | Both corrected to the stricter figure. Rule added: read Terms and help centre both. |
| 2026-09-21 | First live shadow run replayed history on a different exchange feed (binance.us) than the frozen sample (Binance.com via TradingView). 15 alternate-history trades were labelled "logged live." | Reverted within minutes. History re-backfilled on one feed end to end. Stitch step added. |
| 2026-09-21 | Journal stored R to three decimals; the mean sat on a rounding boundary and two artifacts disagreed at the second decimal. | Four decimals stored. Accuracy ledger now re-derives n, mean, SE and shrinkage from the journal and fails on drift. |
| 2026-09-21 | A summary described a standard error as a confidence interval. | Corrected. ±0.016R is the SE; the 95% interval is ±0.031R. |
| 2026-09-21 | The public FAQ still described the daily limit as measured against the day-start balance, said results were published monthly, and its disclaimer said the backtest had not been validated out of sample after it had. | All three sentences corrected the day the walk-forward was published. |
| 2026-09-22 | The journal recorded each closed trade's outcome but not its geometry: no entry, stop, take-profit or exit price, no risk in dollars, no binding ceiling. A trade could not be drawn or its sizing checked from the public file alone. | Schema widened by eleven columns (entry and average price, initial stop, take-profits, exit price, risk, binding ceiling and room at entry, fee share, tranche count). Every row re-derived from the same deterministic replay; the twelve original columns are byte-identical and every row keeps its original `logged_utc`. A widening, not a data change. The migration refuses to run if any original value would move. |
| 2026-09-22 | Shadow commits reached the repo but not the site. Vercel's Hobby plan rejected the workflow's commit identity (`shadow@troid.ai`, not a member of the Vercel team): all five shadow commits between 03:58 and 23:00 UTC were blocked. Two were carried to the site minutes later by commits made in the owner's name; the ledger on the site lagged the repo from 09:21 UTC on 22 Sep to 00:40 UTC on 23 Sep, about 15 hours. | Fixed by the repo going public: Vercel deploys a public repo's commits from any author. The first shadow commit after the change (23 Sep, 00:40 UTC) deployed, and the live ledger was byte-identical to the repo with its last bar matching the run. |
| 2026-09-23 | troid's desk capped Crypto Fund Trader's Instant accounts at 100× leverage, the Advanced-account cap. Instant accounts are $2.5k–$10k, inside the Student band, and the firm's recorded terms give Student accounts 1:5. Found while tracing every rule to its source. | Instant capped at 5×; the test that asserted 100× now asserts 5× for Instant and 100× for 1-Phase. Every computed number now shows the firm document, section and read date it came from, and says "source not yet recorded" where the repo has none. |
| 2026-09-23 | troid's compare showed Crypto Fund Trader's refund as "none" and US access as "yes, Match-Trader only". The T&C clause cited (5.1) covers only a failed evaluation, and the recorded clauses (7.3, 7.1(xvi)) cover only the MT5 bar; the Match-Trader wording echoed a third-party directory. | Narrowed to what the clauses cover: "none if the evaluation is not completed"; "MT5 barred to US residents; Match-Trader access not yet sourced". |
| 2026-09-23 | The landing page and troid's compare said Bitfunded was verified completely — "the only firm where it is complete". Tracing every rule to a source showed seven Bitfunded compare cells, and its 2-Step, Express and Funded limits, with no recorded source. | Now: verified first and most completely, with each rule's source and read date shown and "source not yet recorded" where there is none. |
| 2026-09-23 | Exchange liquidation on cross margin was reported as unreachable once notional exceeded equity ÷ maintenance margin — in troid's desk, the MCP server, ask troid's tools and risk.py. Past that size the position is below maintenance at entry. | All four copies report 0% (below maintenance at entry). No reference case changed. |
| 2026-09-23 | The landing firms panel said Crypto Fund Trader offers "up to 100× leverage per third-party sources"; the calculator credited the same 100× to the firm's Terms and Conditions. | One source: 100× on Advanced accounts ($50k+) and 5× on Student and Instant, per the T&C. |
| 2026-09-23 | ask troid's rule explanation said Crypto Fund Trader resets at 00:00 UTC; troid's own engine-gaps note said the same. The T&C (8.i–8.ii) say 00:05 UTC. ask troid is switched off, so no reader saw it. | Both corrected to 00:05 UTC. |
| 2026-09-23 | troid's terms (section 4) said troid confirms each rule from the firm's documents and marks it pending until then, and that the work was finished for some firms. In practice only a missing value shows pending; a value without a recorded source says "source not yet recorded", and no firm is finished. | Section 4 now describes that practice, and what "verified" means. |
| 2026-09-23 | The ask troid page said nothing typed is stored and the service logs "a count of messages and nothing else". Each message goes to the AI model's provider, which may keep it for a limited period, and the log line also holds tool calls, the model and outcome flags. ask troid is switched off, so nothing was sent. | The page now says what the terms say (section 10). |
| 2026-09-23 | troid's terms said the ledger's backtest ran on "the same data the strategy was tuned on", that "some" ledger trades were backfilled, and that the holdout was 2021–2025 data; the walk-forward report, the dashboard and the README said the parameters were chosen on 8 January – 21 September 2026 and called the holdout 2021–2025. The parameters were chosen on a TradingView (Binance.com) sample of 8 January – 14 September 2026; the ledger's backtest runs on api.binance.us data to 21 September; every ledger trade so far was backfilled; the holdout runs to 7 January 2026 (2 of its 504 BTC trades exited in January 2026). | The terms (sections 2 and 6), the walk-forward report, the dashboard, the README and STRATEGY.md give those periods. |
| 2026-09-23 | TROID.md answered "Does the strategy work?" with the in-sample result only (+0.033R, n=78). | It now gives the out-of-sample result too, MEASURED: +0.008R on 504 BTC trades and +0.008R on 498 ETH trades, standard error 0.016R each, both 95% intervals containing zero. The best-of-30 chance comparison is kept. |
| 2026-09-23 | The footer on every page, the landing page and the FAQ said troid does not generate signals. Its shadow account generates the simulated strategy's entries; what troid does not do is publish them as signals. | The footer says "troid does not place trades or publish trade signals. Its shadow account is a simulated strategy, shown only after trades close." The landing page and FAQ say "publish". |
| 2026-09-23 | troid's compare showed Bitfunded's consistency rule as "none". troid never read a statement that Bitfunded has none. | Pending until a source is read. |
| 2026-09-23 | Bitfunded's affiliate link showed while its $999 price had no recorded source. | Links now need a recorded source for daily, max, target and price. Bitfunded's was held until its price was recorded from its help centre's Challenge Type page (read 23 September), which also settles a conflict between Bitfunded's own pages ($999 in the help centre, $599 and $799 in two blog posts). |
| 2026-09-23 | The ask troid page said it answers from "troid's verified rule set" and "the verified rules on troid's compare", and its description said "Verified rules"; the landing page's firms panel said "every verified firm". One of the three listed firms is marked verified. | The ask troid page says "troid's rule data" and "the rules on troid's compare"; the panel says "every firm troid lists". |
| 2026-09-23 | troid's compare stated Bitfunded's 1-Step refund as settled: "100% at first profit split". Bitfunded's own documents conflict: its Terms (9(a), 9(b)) give a full refund at the first profit split day on every level; its help centre (Challenge & Trader Stage) gives one only on Two Steps evaluations, paid with the third withdrawal, not on promotional purchases. Both read on 23 September via troid's owner's research session. | The refund cell shows both documents and tells the reader to confirm with Bitfunded before relying on a refund. troid picks neither. |
| 2026-09-23 | troid recorded Bitfunded's 1-Step Express profit target as 3%, from a 28 August 2026 blog post. The help centre (Challenge & Trader Stage) says 9%; the Terms are silent on Express. | 9%, the help centre's figure, with the conflict logged in firms.json. |
| 2026-09-23 | troid's desk, ask troid and the MCP server modelled one Bitfunded "Funded" product at 4% daily / 6% max, with no recorded source. The help centre (Challenge & Trader Stage) sets Trader Stage limits by path: after the 1-Step 4% / 6%, after the Express 3% / 3%, after the 2-Step 5% / 8%, and Instant 3% / 6%, each at 1:5, and any Trader Stage breach disqualifies the account. For a trader funded after the Express or the 2-Step, the single product gave the wrong limits. | Four products, one per path, each citing that page and its read date. |
| 2026-09-23 | troid showed Bitfunded's daily reset as 16:00 UTC exactly. The help centre (Criteria to be Success) says that, because of the platform's settlement process, the reset may become effective anywhere between 00:00 and 00:10 UTC+8. | 16:00–16:10 UTC on troid's compare, in ask troid's and the MCP server's rule explanation, in TROID.md and in the FAQ: the first ten minutes are ambiguous, so don't count on a fresh daily budget before 16:10 UTC. |

## Version

**v1.0 — 2026-09-21.** First public version. Material changes to method are logged here with a date.

---

troid is a free informational tool, not financial or investment advice. troid does not place trades or publish trade signals. Its shadow account is a simulated strategy, shown only after trades close. Prop-firm rules change without notice — verify every number with the firm before trading. troid is an independent affiliate of the firms it compares and earns a commission on purchases through its links; this does not affect the calculations or comparisons. Terms: https://troid.ai/terms
