FOR PROP FIRMS AND BROKERS
A figure about your traders that you didn’t compute yourself.
We measure the plan gap: the difference between how your traders plan to handle wins and losses and how they actually trade. For prop firms and brokers, one measure is available today: the disposition effect, which is whether your traders close winning positions more readily than losing ones. Tell us the population and the period. Your staff run a published script inside your systems. You get back PGR, PLR, their pooled ratio and a t statistic, the counts and period behind them, and a one-page memo. The price is fixed before anyone sees data.
Prefer email? donttrade.research@gmail.com
Here as a trader? See Individual traders (coming soon) or the free Research. We can’t help with disputes about a firm.
- Your recordsstay on your systems
- Published scriptrun by your staff
- Aggregate countsthe only thing that leaves
- Number · t statistic · period · memoreturned to you
partner_disposition.py · public · from v2 free for non-commercial use; engagements and platform partners include a commercial licence · read the code →
- Listed on Quantocracy’s daily wrap, 12 Oct 2026 (quantocracy.com)
- 6 published studies
- scripts public · gaps disclosed in each study
- 5 corrections logged
What it costs
Launch pricing, valid for engagements signed before 31 March 2027. Prices in USD.
The standard engagement measures one thing today: the disposition effect (selling winners more readily than losers), the first part of the plan gap we can measure, reported as PGR, PLR, their pooled ratio and a t statistic, with the counts behind them. No other standard measure is offered yet. If the figure you publish is a different one, write anyway; we’ll tell you plainly whether the published script can compute it. Run a copy-trading platform? See the copy-leader persistence test below. Does your marketing say your product changes how traders behave? See the claims substantiation test.
| Engagement | Best for | What your staff run it on | What you get back | Delivery time | Payment | Price (USD) |
|---|---|---|---|---|---|---|
| Trial Your first Snapshot · one per firm | A firm that wants to see the method work on its own records before committing | The records behind one disposition figure your firm already publishes or wants to publish, measured with the public script on your own records (they stay on your systems) | The figure, its denominator and period, the t statistic, the script version, and a one-page memo. Before starting, we agree with you in writing what result would make a Memo worth doing. If your extract can’t be made to run with the script, even with our help by email, the trial fee is refunded in full; so it is if your own re-run on the same export (same file hash) does not reproduce the figure. Credited in full toward a Memo signed within 60 days of trial delivery | 5 business days | 100% on acceptance | $745 |
| Snapshot | A firm that wants one disposition figure, for one population, computed by someone else | The five-column extract for the population and period you name | Pooled PGR, PLR, their ratio and a t statistic, the counts and period behind them, the script version, and the full one-page memo for your use | 10 business days | 50% on acceptance; 50% within 7 days of delivery | $2,500 |
| Memo Standard engagement | A firm that wants its traders’ ratio set beside the public panel’s | The five-column extract, for the population and period you name | Everything in a Snapshot, plus your pooled ratio set beside the public study’s pooled ratio. Don’t compare levels: the public panel is Chinese A-share social-trading portfolios from 2016–18, and your script counts only days with a sale, while the public study counts every day a position was held. Only the ratios are roughly comparable, and neither says what yours should be. A private report; an optional co-published study | 15 business days | 50% on acceptance; 50% within 7 days of delivery | $6,000 |
| Outcomes pack | A firm that wants its whole book measured, and split | An extract across your whole book, plus extracts you split by a field you hold, such as account size or instrument (the splits are agreed in the scope) | Everything in Memo, for your whole book and for each split extract, run by the same script; a private report; an optional co-published study | 20 business days | 50% on acceptance; 50% within 7 days of delivery | $12,000 |
Optional quarterly re-check: the same measurement on a fresh extract, at 25% of the tier price, payable in advance, delivered in 5 business days.
Prices in US dollars (USD), before any applicable sales tax. Every engagement is invoiced in USD; pay by bank transfer, or, in Canada, the CAD equivalent by Interac e-Transfer. Card payments are accepted through a secure Stripe link sent with your scope. One-off engagement, fixed scope, no subscription. Invoices read “Payable on acceptance — thank you.” and “Balance due within 7 days of delivery — thank you.”
Delivery times are in business days. The clock starts when payment is received and the script’s output comes back without validation errors, and it pauses while a clarifying question is open.
If you don’t like the number, no one else sees it. You can decline publication outright, and we publish nothing from the engagement. The fee is the same either way.
The method is the same for every firm and for the free research. Paying buys scope and privacy, never a result. Independence policy →
Prefer email? donttrade.research@gmail.com
Copy-trading platforms: the copy-leader persistence test
Sold to platforms only, never to followers. For copy-trading apps, social trading networks, crypto exchanges with copy features and vault front-ends.
Does your leader ranking predict what followers actually earn after copying costs and delay? The test answers that out of sample: leaders are ranked on one period and judged on a later period the ranking never saw. It is adjusted for luck, so a ranking counts only if it does better than chance would.
- A sealed method. The ranking rule, the periods, the cost and delay assumptions and the pass mark are fixed in writing before anyone sees data, and they don’t change afterwards.
- Run on your systems. Your engineers run a script we send with the scope, and can read every line of it first. Only aggregate results come back. We hold no data: no follower, leader or account record leaves your systems.
- About your ranking, not about people. The result names no leader and scores no one.
- Not advice. It is not a recommendation of any trader or leader, to you or to your followers, and no guarantee of future results. It is not an audit or a certification: please don’t call any leader or ranking audited, certified or verified.
- Optional re-check. The same test on a fresh period, on the quarterly re-check terms above.
Which engagement
- Trial, $745 USD: your first test at the introductory price, one per platform: one ranking rule and one period. The trial terms apply, with that test in place of the disposition figure.
- Snapshot, $2,500 USD: one ranking rule and one period.
- Memo, $6,000 USD: the full test: every ranking rule and period agreed in the scope, written up with its limits stated.
- Outcomes pack, $12,000 USD: the full test, plus a re-check of the same rules on a later period.
Payment, delivery times and refunds are those of the engagement. By email only, no calls.
Prefer email? donttrade.research@gmail.com
Firms that make behaviour claims: the claims substantiation test
We report the result whether it supports the claim or not. For trading journals, education sellers, prop firms and brokers whose marketing says their product changes how traders behave, such as “our journal makes you more disciplined”.
Does the claim hold on your own users’ records? Before anyone sees data, the claim is written down as a test: which behaviour, which users, which periods, what comparison, and what result would support it. That test is sealed (fingerprinted with a SHA-256 hash) and then run once, as written.
- Pre-registered and sealed. The measure, the comparison and the pass mark are fixed in writing before anyone sees data, and they don’t change afterwards.
- Run on your systems. Your engineers run a script we send with the scope, and can read every line of it first. Only aggregate results come back; no user record leaves your systems.
- Either answer is a finished result. We report the result whether it supports the claim or not. The fee is the same either way, and you decide whether anything is published.
- Limits stated. We tell you in the scope, before you pay, whether your records can test the claim at all, and what the design can and cannot show. A before-and-after comparison, for example, cannot by itself show that your product caused a change.
- Not a certification, a verification or an audit. It is a test, with its result and its limits. Please don’t call the claim or the product certified, verified or audited.
The law, in neutral terms (not legal advice). In Canada, the Competition Act treats as reviewable conduct a representation to the public, made to promote a product or a business interest, in the form of “a statement, warranty or guarantee of the performance, efficacy or length of life of a product that is not based on an adequate and proper test thereof, the proof of which lies on the person making the representation” (s. 74.01(1)(b)). Whether a particular test is adequate and proper for a particular claim is for you and your legal advisers to judge. We give no legal advice, and we don’t say that our test meets that standard.
Which engagement
- Trial, $745 USD: your first test at the introductory price, one per firm: one claim, one measure and one comparison. The trial terms apply, with that test in place of the disposition figure.
- Snapshot, $2,500 USD: one claim, one measure and one comparison.
- Memo, $6,000 USD: the full test: every measure and comparison agreed in the scope, written up with its result and its limits.
- Outcomes pack, $12,000 USD: the full test, plus the same sealed test run again on a later period.
Payment, delivery times and refunds are those of the engagement. By email only, no calls.
Prefer email? donttrade.research@gmail.com
What your staff export
Five columns, one row per open position per day, plus a row on the day it closes. One position, as rows, from the export guide:
account_id,date,position_id,closed,pnl a7f3,2026-03-02,p91,0,110.50 a7f3,2026-03-03,p91,0,-40.25 a7f3,2026-03-04,p91,1,240.00
The first two rows are the unrealised mark at each end of day; the last is the realisation. A list of closed trades alone is refused by the script, by design: it needs the positions you held and did not close. To see the shape first, run it on the synthetic file that make_fixture.py writes.
What happens after you get in touch
- You fill in the short form or email the population and period you want measured. We reply within 1 business day.
- Scope sheet. We send a written scope and a fixed price. The legal contracting party is named in the engagement agreement, before anything is paid; an NDA or DPA is signed on request.
- Accept. You accept the scope and pay the first invoice: 50% on acceptance, or the full fee for the trial. Payable on acceptance — thank you.
- Your staff run the script inside your systems and send back what it prints. Nothing else. The delivery clock starts once payment is received and that output comes back without validation errors; it pauses while a clarifying question is open.
- Delivery. We return the memo within the tier’s business days. For the Memo, Outcomes pack and Snapshot, the balance is due within 7 days of delivery — thank you. A “no measurable effect” answer is a finished job and is invoiced as one. You decide whether anything is published.
Everything that comes back to us
This is the client script’s complete output, generated when this page was built by running the published partner_disposition.py on the synthetic test file from make_fixture.py. Synthetic test file, not real traders.
$ python3 make_fixture.py --out fixture.csv --seed 7
$ python3 partner_disposition.py fixture.csv --pnl-basis price
pnl basis: price (funding excluded)
accounts: 30
qualifying sale days: 256
data rows parsed: 14400
blank records skipped: 0
rows in qualifying pairs: 2048
rows discarded (no close that day): 12352
same-day marks superseded by close: 0
orphan closes (no mark row): 14 of 335 (4.2%)
identifier spelling collisions: 0
unicode data version: 14.0.0
PGR 0.2178
PLR 0.1119
ratio (PGR/PLR) 1.9470
t statistic 6.51
n gains (RG+PG) 1001
n losses (RL+PL) 1046
realised gains RG 218
paper gains PG 783
realised losses RL 117
paper losses PL 929
zero-pnl rows excluded 1
AGE-CONTROLLED FIGURES (holding age = calendar days since the
position's first row in this file)
positions with a known open date: 329
positions open on the first date (left out): 240
rows used (qualifying pairs, pnl not 0): 975
ratio, ages pooled, same rows: 2.0325
within-age ratio (Mantel-Haenszel): 1.9273
95% interval 1.3825 to 2.6867, by account
holding age gain rows loss rows PGR PLR ratio within-age
<=1 day 43 32 0.2093 0.0938 2.233 2.232
2-5 days 73 75 0.2055 0.1333 1.541 1.618
6-20 days 192 224 0.2240 0.0804 2.787 2.595
21-60 days 168 168 0.1667 0.1071 1.556 1.441
61-250 days 0 0 - - - -
251+ days 0 0 - - - -
fixed effects (account + holding day), linear probability model:
gain coefficient: 0.103986
standard error (account and date): 0.021478
ratio implied for gain rows (ATT): 2.0878
95% interval 1.4495 to 3.7307
gain timing (rows that have a previous row for the same position):
rows: 933
ratio, ages pooled: same day / previous row: 2.0604 / 1.8627
within-age ratio: same day / previous row: 1.9488 / 1.7481
fixed-effects ATT: same day / previous row: 2.0993 / 1.8586
sign changed since previous row, sold rows: 10 of 138
sign changed since previous row, unsold rows: 60 of 795
HOW TO READ THE AGE-CONTROLLED FIGURES
- Positions are sold less often the longer they are held. If losing
positions are on average older than winning ones, the pooled ratio at
the top can show an effect that is only an age pattern. The within-age
ratio compares winners and losers of the same holding age; use it, not
the pooled ratio, for the size of the effect.
- Holding age is counted from each position's first row in this file.
Positions already open on the file's first date are left out of these
figures because their age is unknown; the pooled figures still use them.
- The fixed-effects line compares each account with itself, at the same
holding day. It is a different average from the pooled ratio, so the two
are not expected to match.
- Gain timing: a position's gain or loss on the day it is sold may partly
reflect the sale itself (the fill or the closing mark). The lines that
take the gain or loss from the position's previous row avoid that. If
they are much smaller, the effect depends on same-day timing.
- Not ruled out: traders may sell large moves in either direction more
often (a V-shaped pattern, Ben-David and Hirshleifer 2012). Separating
that from a preference for selling winners needs the size of each gain
or loss relative to the position, which these five columns do not carry.
- The intervals here are clustered by account (the within-age ratio) and
by account and date (fixed effects). The t statistic at the top treats
every row as independent and is not.
- NOT MEASURED means the data cannot support the figure, never zero.
That block is the whole of it. No account IDs, position IDs, dates or individual P&L values are printed. The script is one Python file using only the standard library; it makes no network calls, and your staff can read all of it before running it.
Retention: we keep the returned aggregates for the life of the engagement record and never the extract — no extract ever leaves your systems.
What you receive
A one-page memo with these fields, every time:
- The question
- The population and period you asked us to measure, in one sentence
- The figure
- Pooled PGR, PLR and their ratio, with the counts behind them
- The figure, holding age fixed
- The same comparison made only between positions of the same holding age, with its 95% interval; beside it the pooled ratio on the same rows, and a fixed-effects ratio that compares each account with itself
- Precision
- The t statistic and the counts behind it
- Denominator
- Exactly who was counted, and who was left out
- Period
- The dates the extract covers
- Accounts and observations
- How many of each were counted
- Script version
- The exact code that produced the figure
- What this does not show
- The limits, stated before anyone asks
- Who may rely on it
- You only
See a specimen memo, and the client script’s output on a synthetic file →
The agreement, in brief
- Fixed scope and price, in writing before any data is seen.
- Your records never leave your systems. Only what the script prints comes back.
- Publication only with your consent. You review anything describing your data first and may decline outright.
- Use of the name. You may say a figure was “measured by donttrade under a fixed-scope agreement”, and nothing stronger: never audited, certified or verified. We name you only with your consent.
- Licence for the engagement. The commercial licence to run the script on your records comes with the engagement.
How this compares
| Question | donttrade measurement | A figure you compute yourself | A third-party assurance review | Doing nothing |
|---|---|---|---|---|
| Who computes it | Your staff run our published script; we write it up | You | The review provider | — |
| Can a trader or journalist re-run the method? | Yes; the script is public | Only if you publish your method | Usually not published | — |
| What it covers | Trader behaviour | Whatever you choose | Set by that engagement (e.g. payout processing times) | — |
| Does account-level data leave your systems? | No; aggregate counts only | No | Set by that engagement | No |
| Price known before you ask? | Yes | — | Usually not published | — |
| Can you keep an unflattering result private? | Yes | Yes | Set by that engagement | — |
Why a re-run number is harder to wave away
The Financial Commission’s prop-firm code took effect in July 2026. It asks for drawdown rules that are objective and verifiable, and certification runs on attestations: firms sign one to join and file quarterly attestations that the Commission can review. (Code of Conduct; FinanceFeeds)
Firms already pay for outside checks. Hola Prime commissioned Deloitte for an independent review of payout processing and published the result. That review covered operations, in a window the firm chose. It did not measure how traders behaved. (release)
A figure someone else computed, with the method published, can be checked by anyone who reads it.
Publishing a pass rate? Check the arithmetic with the free pass-rate calculator →
What you risk, and what you don’t
- The price is fixed in writing before any data is seen.
- We will not change a figure, narrow a period or change a denominator.
- You can decline publication; the fee is the same.
- Our liability is capped at the fees paid.
- The engagement agreement (scope, data terms, licence) is sent with the scope, before you pay. A blank template is available on request.
- Either side can stop in writing. No cancellation fees. The trial is refundable in full until your staff first run the script on your records (data kick-off), and after that through the reproduction refund. Memo, Outcomes pack and Snapshot are paid 50% on acceptance and 50% within 7 days of delivery; if either side stops, completed work is billed pro rata.
- Before you sign anything, run the public script on a test file (the licence allows 32 days of evaluation on test data). If it doesn’t run, you’ve lost nothing.
What the money does not buy
- No signals, no picks, no predictions. Nothing here tells anyone what to buy.
- No edge claims. A measurement of how your traders behave is not a forecast of how they will behave next quarter, and it will not be written as one.
- No flattering version. If the number comes out against your marketing, that is the number. You can decline to publish it; we will not publish a more comfortable version instead.
- Not an audit, not an assurance engagement, not a certification, and no regulatory status or endorsement of your solvency or performance. We issue no badge or seal. This is a one-off research service: it performs no operational function for you and needs no access to your systems.
For your compliance team
Frank answers to the questions due diligence asks first.
Who will we contract with?
One person. The legal contracting party is named in the engagement agreement, before anything is paid, with whatever identity checks your due diligence needs. The pseudonym is how the research is published, not a contract term.
Does any account data leave our systems?
No. Your staff run the script inside your systems; we receive only what it prints, shown above under “Everything that comes back to us”. We never need access to your systems.
What if the number is bad for us?
Then that is the number. You can keep it private, and we publish nothing from the engagement. The fee is unchanged.
Can you publish without our consent?
No. You review anything describing your data first and may decline publication outright. We may say only that an engagement took place, without naming you or the figure.
Is this an audit or a certification?
No. Please don’t describe it as audited, certified or verified.
What if we stop halfway?
No cancellation fees. The trial is refundable in full until your staff first run the script on your records (data kick-off), and after that through the reproduction refund. Memo, Outcomes pack and Snapshot are paid 50% on acceptance and 50% within 7 days of delivery; if either side stops, completed work is billed pro rata.
Who pays you? Can anyone pay to change a number?
Firms pay for measurements of their own data; readers pay nothing. No one can pay to change a number, in a report or in the free research. Independence policy →
How do we pay?
Prices in US dollars (USD), before any applicable sales tax. Every engagement is invoiced in USD; pay by bank transfer, or, in Canada, the CAD equivalent by Interac e-Transfer. Card payments are accepted through a secure Stripe link sent with your scope. One-off engagement, fixed scope, no subscription.
Can we talk on a call?
We work by email only, so every answer is in writing and can go straight to your compliance file. Ask anything at donttrade.research@gmail.com.
Why is there no client list?
There are no paying clients yet. Every headline figure on this site comes from public data; the scripts behind them are public, and gaps are disclosed in each study. A firm that elects to publish its result will be listed, with its consent.
Can we test it first?
Yes. The licence lets any organisation run it on synthetic or test data for 32 days, and the folder includes a generator that writes a test file. partner/ →
Can we just run the public script on our own records?
Not for your business, from v2. Version 1 of the measurement script (commit 2ff165c) stays under the MIT licence. From v2 it is under PolyForm Noncommercial 1.0.0: free for traders, researchers and non-commercial use, with a 32-day evaluation on test data for any organisation; the terms are in partner/LICENSING.md, published with v2. A firm running v2 or later on client records, or quoting what it prints, needs a commercial licence, which comes with every engagement. What you are buying is also the part you can’t do yourself: a figure computed under an independent agreement, with its ratio set beside the public panel’s pooled ratio, and the difference in how the two count days stated.
Prefer email? donttrade.research@gmail.com
Independence policy: who pays, and what the money does not buy →