Definition and what you can verify
Execution Price is the price applied when a forex order is actually filled. It is different from the price shown when you submit an order, because fills happen when matching liquidity and execution logic produce a result.
For verification, it helps to split the concept into two layers:
- Stable mechanics: the general idea that an order gets a fill price and that reported fields should consistently map to the fill.
- Variable conditions: market moves, the provider’s pricing model, spreads/fees, and any market impact between “quote” and “fill”.
Because there is no single universal execution price source, verification is about checking internal consistency in your records and reproducing the reasoning chain you used to interpret those records.
Mechanics: inputs, assumptions, and reproducible checks
A reproducible verification approach can be done without real-time market data, using only what you already have from your order history and any logs you can export.
Step 1: Identify the exact reported fields
From your order record, capture the execution-related fields, typically including:
- order side (buy/sell)
- instrument (currency pair)
- execution timestamp (or fill time)
- execution price (the reported fill price)
- order type (if shown)
- quantity/lot size
- any commission or dealing fee field, if provided
Assumption: use the provider’s “execution timestamp” as the reference time for the fill.
Step 2: Reconstruct the cash impact using a clear convention
Pick one calculation convention and apply it consistently. For example, verify whether the reported profit/loss or cash settlement can be reproduced from:
- execution price
- position size
- contract size rules (if shown)
- fees/commissions (if shown)
Assumption: contract size and currency conversion rules are exactly as documented in the provider’s account documentation for your instrument.
Even if you cannot reproduce the final settlement perfectly (because you may lack conversion details), you can still check consistency: does the direction (profit vs loss) match the buy/sell and execution price direction?
Step 3: Check consistency between timestamps and quoted references (if available)
If you have access to the quote you were shown at submission time, compare:
- submission time quote
- execution time
- fill price
Assumption: the quote you saved is a valid “reference price” for that moment.
If the execution price differs from the reference quote, that does not automatically mean the data is wrong; it may reflect normal price movement and provider execution processing. Your goal is to verify that the fill record is internally coherent (e.g., not swapped, not inconsistent with side and direction), and that any interpretation you make is explicitly tied to your reference time and convention.
Evidence and examples you can replicate offline
Here are two verification checks you can run with your own exported data.
Example A: Directional consistency check
Assume a simplified case where:
- you bought the pair
- the reported execution price is higher/lower than the submission quote
- the order later shows profit/loss based on the execution
Verification:
- Confirm order side and the sign convention used in the profit/loss field.
- Confirm that profit/loss direction aligns with the change relative to the correct reference used by the provider (you may need the provider’s statement for whether P/L is measured versus another price, such as mark price).
Limitation: this check may not prove accuracy of the execution price itself if P/L is computed using a different reference than the submission quote.
Example B: Cost reconciliation check
Assume your record includes:
- execution price
- quantity
- a commission/dealing fee
Verification:
- Recalculate the expected fee impact using the fee formula shown in account documentation.
- Confirm that the fee amount in the statement matches the recalculation.
If fee reconciliation fails, execution price fields may still be correct, but the overall reported numbers may involve different components you did not account for.
Limitations and failure modes
Several material limitations can prevent verification from being conclusive:
- Missing or incomplete data: you may not have the quote stream, timestamps with sufficient precision, or fee breakdown fields. - Time and feed mismatch: even a correct execution price can be hard to interpret if your stored quote timestamp differs from the provider’s internal pricing timestamps.