Position Sizing Consistency Audit
Two trades with the same lot size do not risk the same money if their stops sit at different distances, and two trades with different lot sizes can risk near-identical money if sized deliberately. This script converts every closed trade's stop distance and lot size into an actual money-at-risk figure using the symbol's own tick value and tick size - never a fixed assumption about contract size - and reports the mean, median, standard deviation and coefficient of variation of that figure across history. A low coefficient of variation means risk per trade stayed consistent; a high one usually means sizing tracked how confident the trader felt rather than a fixed rule. Reading the risk taken on a CLOSED order is inherently limited: MT4 keeps only the last known stop-loss on a ticket, not a modification history. A trade whose stop was moved to breakeven or trailed shows its final stop distance in this report, not the distance actually risked at the moment of entry. This is stated plainly rather than silently presented as entry risk, because the difference matters for anyone using this report to judge past discipline. Every symbol-specific value (tick size, tick value, digits) is read live from MarketInfo() for that trade's own symbol, so the audit works correctly across FX pairs, metals and indices with different contract specifications in the same history. Notes and limitations Cannot recover the stop distance actually used at entry if the stop was modified afterward - only the last recorded stop is available. Trades with no stop-loss set contribute nothing to the risk statistics regardless of InpSkipNoStop, since there is no distance to measure; the input only controls whether they are logged. Pooling multiple symbols together can widen the reported spread for reasons unrelated to sizing discipline if the account trades instruments of very different volatility - filter to one symbol for a cleaner read when that matters.
Script · MT4 · v1.0 · Free
About Position Sizing Consistency Audit
Position Sizing Consistency Audit is a script for MetaTrader 4. It can alert you with a pop-up, sound, email or push message. It has 5 settings, such as Symbol filter, Magic filter and From date. MQL source code included.
Files in the download: SizingConsistencyAudit.mq4, SizingConsistencyAudit.txt.
Settings
| Setting | Default | What it does |
|---|---|---|
| Symbol filter | Symbol filter ("" = every symbol) | |
| Magic filter | -1 | Magic number filter (-1 = every magic) |
| From date | 0 | Earliest open time (0 = all loaded history) |
| To date | 0 | Latest open time (0 = up to now) |
| Skip no stop | true | Skip trades with no stop-loss set (cannot compute their risk) |
How to install
- Download the ZIP from your PolyMaria library and unzip it.
- In MetaTrader 4 open File → Open Data Folder, then go to MQL4 → Scripts.
- Copy the .mq4 file(s) there. Put any .mqh files in MQL4 → Include.
- Open the .mq4 file in MetaEditor and press Compile (F7) if MetaTrader does not show it.
- Drag the script onto a chart to run it once.
Tags: Risk & Lot Size · Alerts · MT4 Script · MQL4 Source Code