LearnChoosing a program

How to Check Your Trading History Against Prop Firm Rules

To check a trading history against prop firm rules, reconstruct the account in time order and test each rule when it applies. Closed profits can establish part of the result, but equity-based loss limits also require the open-position values and account adjustments that occurred between closes. Stop the replay at the first hard breach.

Prop Firm WizCFD/FX, Futures, and PerpetualsPublished Sources checked 11 min read

On this page

The useful output is a record of which conditions were met, which were broken and which remain uncheckable. A profitable ending balance alone cannot supply that answer. The method below works across CFD/FX, futures and perpetual accounts when you use the exact program's rules and valuation data.

Which rules are you testing?

Start by deciding whether you are checking what happened under an existing account's rules or how an old history would fit a different program today. The first needs the terms applicable to that account and period. The second is a hypothetical replay under a separately identified rule set.

Record the firm, market, program, account stage, size, platform, purchased options and relevant cohort or start date. Save the agreement, rule pages and notices that support the test. For example, FTMO's CFD objectives distinguish its current 1-Step Consistency rule from the legacy Best Day Rule by order date and account-merger conditions. Reusing a percentage while missing its denominator or applicability can test the wrong rule. FTMO trading objectives

Turn each applicable condition into an instruction you can actually calculate:

RuleRecord before replaying
Daily lossAmount, opening reference, monitored value, reset time, equality boundary and breach or pause consequence.
Overall max lossStatic or trailing reference, update schedule, any lock, monitored value and breach boundary.
Profit targetRequired amount, net or gross basis, and whether positions must be closed.
ConsistencyBest-day definition, denominator, allowed fraction, calculation window and consequence of exceeding it.
Qualifying daysWhat activity counts, minimum net profit if any, session definition and required count.
Other permissionsPosition-size limits, trading hours, news restrictions, holding, automation and copying.

Use the overall max-loss guide and daily-loss guide to resolve the loss formulas before combining them. If official documents leave a material contradiction, keep that rule unresolved and follow the conflicting-rules process. A spreadsheet should not silently choose the more convenient interpretation.

What does your trading history need to contain?

Collect the full account period, including the starting state and any positions already open at the beginning. Keep the original export alongside your working copy. A cropped screenshot or a list filtered to winning trades is not a complete account record.

EvidenceWhat it lets you check
Executed fills with identifiers, times, symbols, directions, sizes and pricesPosition changes, realized results, partial closes and simultaneous exposure.
Balance entries and separate charges or creditsNet results, account adjustments and the value carried into each reset.
Timestamped equity or position valuations using the required priceOpen losses, intraday highs and distance from equity-based limits.
Session boundaries and account-state snapshotsWhich day receives an event and which reference sets the next limit.
Order/action logs and the applicable event calendarRestrictions on orders, news windows and trading hours that a closing-profit total cannot test.

An order is an instruction; a fill is executed activity. MetaTrader 5's documentation distinguishes orders, deals and aggregated positions. Multiple deals can belong to one order, while a position view combines opening, additions and partial or full closes. Use identifiers to avoid adding the same activity twice. MetaTrader 5 account history

Also inspect what a report's graph measures. MetaTrader's documented account-statement report includes a deal-based balance graph and a current floating-P&L summary. Neither description establishes a complete historical intraday equity series. Other report formats can provide more data; check the actual export rather than assuming every chart labeled drawdown tests the firm's rule. MetaTrader 5 account-statement report

For an equity-based rule, an end-of-day screenshot cannot rule out an earlier intraday breach. The balance-versus-equity guide explains the accounting distinction; the replay needs evidence of the relevant value throughout the tested period.

How do you align sessions, currencies and costs?

Keep the original timestamp and timezone, then assign each event to the program's trading session. Your local calendar date, platform date and rule date can differ. Use the timezone's date-specific offset, including daylight-saving changes, rather than applying today's offset to an entire historical file.

MetaTrader documents deal times in the broker's server timezone. FTMO's dated CFD notice illustrates the practical difference: it announces that from 26 October to 1 November 2026, the offset between MetaTrader midnight and Prague midnight will be two hours instead of the usual one. The daily-loss reset remains tied to Prague. MetaTrader timestamps · FTMO notice, 15 October 2026

Preserve an overnight position across the boundary. It does not become a closed trade because a new reporting day starts. Recalculate the rule's reference at the specified reset, then test the position's continuing effect under that rule.

Reconcile the balance before interpreting performance:

Ending balance = opening balance + realized trading P&L + signed balance adjustments.

Signed adjustments include any separately posted charges, financing, deposits, withdrawals or corrections. Keep trading-account credit separate if the platform does. Follow the applicable equity definition and never subtract a cost twice: a net-P&L column may already include it. Recorded fill prices already reflect the execution that occurred; do not deduct a second invented spread from the same realized result.

Keep everything in the account's accounting unit, using the relevant conversion data where required. A USDC account ledger and a USD bank receipt answer different questions, as the currency and payout guide explains. Perpetual funding entries need their own posting times when they affect the monitored value.

In what order should you test the rules?

Build one ordered account record. Include fills, price-driven valuation changes, charges, credit changes, session resets, withdrawals and any account transition. If two entries share a timestamp, use their recorded sequence or the program's documented processing order. If the order is unknown and changes the outcome, preserve both possibilities.

At each relevant event:

  1. Apply the event to positions, balance and other account components.
  2. Value open positions using the price required by the rule.
  3. Update any daily reference or trailing high at its specified time.
  4. Test every applicable loss limit, including the equality boundary.
  5. Record the consequence and, if the account can continue, update the relevant session totals and eligibility checks.

This is a bookkeeping framework, not a claim that every platform processes simultaneous events in that sequence. Use its documented order where it differs. In particular, an EOD trailing reference needs the specified EOD observations, while an intraday equity trail also needs the highs reached between closes.

For a lower equity threshold:

Remaining buffer = monitored equity − current threshold.

Calculate a separate buffer for each loss rule. A large overall buffer does not offset a daily breach. Zero is a breach only when the rule says touching the threshold is enough; otherwise apply its stated strict boundary.

Price selection matters too. Hyperliquid documents a mark price for unrealized P&L and specified risk functions. A last-trade chart is therefore not interchangeable with that valuation series. A prop platform's implementation still needs its own confirmation. Hyperliquid price indices

A hard breach ends the valid replay. A daily pause is a different event: apply its closure and stop conditions, then continue only from a permitted restart. Likewise, a consistency condition that requires more profit is not automatically an account-ending breach. Use the consistency guide for its denominator and window, and the qualifying-day guide for what each session must contain.

Can a profitable history still fail the replay?

Yes. Consider this hypothetical four-session history from 12 to 15 October 2026 on an unrestricted USD demo account. We will replay it against an invented evaluation. The figures and rule combination are chosen to expose the checking error; they do not describe a firm or a typical account.

Invented conditionExact assumption
Starting balance and equity$50,000, with no open position or separate credit.
Daily lossFixed $1,000 allowance. Threshold equals the session's opening balance minus $1,000. Recalculate at 00:00 UTC and immediately test equity.
Overall max lossFixed $2,500 allowance. Equity threshold stays at $47,500; no trailing or lock.
EnforcementEquity at or below either threshold is a hard breach. No earlier breach or pause occurs.
Completion conditionsAt least $2,000 net closed profit with all positions closed; best session no more than 40% of total net closed profit; at least three sessions earning $200 or more net.
Holding and accountingOvernight holding permitted. No withdrawals, deposits, funding, swaps or separate credit. Closed results below are after a $20 commission per completed trade. No entry charge or new charge at midnight.

The original demo file contains these results and confirms that all positions are closed at the end of 15 October. Its later trades remain part of that source history even if the proposed evaluation would have stopped earlier.

UTC sessionGross closed P&LCommissionNet closed P&LClosing balance
12 October+$820−$20+$800$50,800
13 October+$620−$20+$600$51,400
14 October+$420−$20+$400$51,800
15 October+$220−$20+$200$52,000

Looking only at these closes, total net profit is $2,000. The best session contributes $800 ÷ $2,000 = 40%, and four sessions meet the inclusive $200 qualifying threshold. Those calculations satisfy the invented completion conditions on the source history. They do not establish survival under its loss rules.

Now add the open-position evidence. After booking the $600 net profit on 13 October, the trader opens another position. By 23:59 it has a $1,050 floating loss. Its value is unchanged at midnight. In this synthetic record, the displayed checkpoints capture every change relevant to the first breach; they are not samples from an otherwise unknown price path.

Replay event, UTCBalanceFloating P&LEquityDaily thresholdDaily buffer
13 October, session opens$50,800$0$50,800$49,800$1,000
13 October, 16:00, profit closes$51,400$0$51,400$49,800$1,600
13 October, 23:59, later position open$51,400−$1,050$50,350$49,800$550
14 October, 00:00, reset and test$51,400−$1,050$50,350$50,400−$50: breach

At midnight, the new daily threshold is $51,400 − $1,000 = $50,400. Equity remains $51,400 − $1,050 = $50,350, putting it $50 below that threshold. The overall threshold still has $50,350 − $47,500 = $2,850 of distance. The daily rule nevertheless ends the replay.

A hypothetical account has equity of $50,350 immediately before and after midnight. Its daily threshold rises from $49,800 to $50,400, changing the daily buffer from plus $550 to minus $50 and ending the replay.
The unchanged position breaches when the daily reference resets. The diagram stops at that event. The later $400 and $200 profits belong to the unrestricted source history, not a valid continuation of this evaluation.

The rule mechanism is explained in the daily-reset guide. Here its role is to overturn the apparently complete result from the four closed-profit rows. At the stopping event, only two completed sessions qualify and closed profit is $1,400. A later recovery cannot restore the same attempt.

Check your understanding · Optional
You have all four closed-profit rows but no open-position valuations. What can you conclude about the equity-based loss rules?

What should you report when the evidence is incomplete?

Use a result for each rule, not a single reassuring label for the whole file.

ResultMeaning and next action
Breach establishedA supported event violates a hard limit. Record the first established breach and stop the valid path there. If earlier coverage is incomplete, say that an earlier breach remains possible.
No breach found in the checked coverageThe tested observations do not violate the rule. State the period, price source and data resolution; missing intervals remain outside the conclusion.
Not checkable with available evidenceA necessary reference, valuation, timestamp or rule definition is missing. Name it and request that specific record or clarification.
Completion condition not yet metA target, qualifying-day count or other objective remains short. Keep this distinct from an account-ending breach.

A five-minute equity sample can miss an excursion between samples. An account-wide maximum-drawdown statistic may use a different reference from the program's daily or trailing rule. For example, the MetaTrader report lists Balance Drawdown Absolute, Balance Drawdown Maximal and Balance Drawdown Relative. These measures follow the report's own balance definitions; they do not by themselves test the program's loss rules.

Per-trade maximum adverse excursion also does not give a simultaneous portfolio valuation: different positions can reach their individual worst points at different times.

If you reconstruct valuations from market data, retain the contract specification, position quantities, relevant bid/ask or mark series, currency conversions and cost treatment. Document gaps and assumptions. Do not fill an unobserved interval with a straight line and describe the resulting pass as proven.

Uncertain evidence can still establish a failure when an observed, correctly valued event already violates a known threshold. What it cannot establish is uninterrupted compliance merely because none of the available samples shows a violation.

How should you use the result before choosing a program?

Write one compact review record: the account and rule version, source period, covered data, first breach or smallest observed buffer, completion status and unresolved questions. Include the event rows behind any decisive result so you can reproduce it or ask the firm a precise question.

For the full hypothetical example, that record reads:

The replay breaches the invented daily-loss rule at 00:00 UTC on 14 October, with equity of $50,350 against a $50,400 threshold. The valid path ends with $1,400 closed profit and two completed qualifying sessions. The original file's later $2,000 total and 40% best-session share do not constitute completion of this evaluation.

For the closed-only file, the loss-rule result would instead be not checkable, with open-position valuations across the overnight boundary specifically missing.

When comparing programs, keep the source trades and assumptions fixed and replay each verified rule set separately. If a program prohibits a trade or stops the account earlier, do not keep the later profits as its result. Changing size, fills or exits creates a new scenario that also needs its own costs and valuation path.

The replay measures compatibility of a particular history with specified rules. It does not estimate your probability of passing a future challenge, reproduce future fills or establish payout approval. Use its actual mismatches and evidence gaps to complete the before-you-pay comparison worksheet.

Sources and method

Official sources were checked on 20 October 2026. The replay method, invented rule set, trade history and calculations are original explanatory work. No personal trading record, firm account, execution feed or payout was audited. The example's complete synthetic event path is deliberately more informative than a real closed-trade export.