Dear MetaQuotes Development and Technical Team,
I would like to clarify the official semantics of tick CSV files exported through the native MetaTrader 5 desktop terminal UI.
The specific workflow is:
Symbols → Ticks → Request → Export
This question concerns the built-in CSV export function, not a custom MQL5 script, external API or third-party exporter.
The relevant CSV columns are:
DATE / TIME / BID / ASK / LAST / VOLUME / FLAGS
The exported format may contain rows where only BID or ASK is populated, or where both fields are blank.
I would appreciate clarification on the following five questions.
Q1. Meaning of blank Bid/Ask fields
In a native MT5 tick CSV export, does a blank BID or ASK field officially mean that the corresponding price did not change on that tick?
Can a blank field have any other meaning?
Q2. Relationship to MqlTick.flags
Is the FLAGS column in the native CSV export exactly the same bitmask as MqlTick.flags?
In particular, do the official definitions
TICK_FLAG_BID = 2
TICK_FLAG_ASK = 4
apply directly to the native CSV FLAGS column?
Q3. Semantics for specific FLAGS values
For native CSV rows containing FLAGS values:
96
98
100
102
does the interpretation of blank BID and ASK fields follow the same general rule?
Are there any exceptions or flag-specific differences?
Q4. Preservation of the last known quote
If one price field is blank, is carrying forward the most recent known value for that side an officially defined interpretation of the native MT5 CSV format?
Is there an official rule for cases where no prior known Bid or Ask value is available?
Q5. Official documentation and applicable builds
Could you identify the official documentation, reference pages or release notes that define these behaviors?
If the semantics depend on the MetaTrader 5 terminal build, please specify the applicable build versions or changes.
This inquiry concerns the technical definition of the native CSV representation only.
It does not request validation of broker-specific prices, trading strategies or trading performance.
Thank you for any clarification or official documentation references you can provide.
- Reading tick history
- Timeseries
- Market Watch - Trading Operations
RE: official MT5 CSV export semantics - community members may share observations (only MQ can provide the authoritative specification).
Those values decode cleanly with the documented MqlTick.flags bits: 96 is TICK_FLAG_BUY + TICK_FLAG_SELL (32 + 64), 98 adds BID (2), 100 adds ASK (4) and 102 adds both. A blank side lines up with its flag bit being unset, so it means that price didn't change and carrying the last value forward is consistent.
You are missing trading opportunities:
- Free trading apps
- Over 8,000 signals for copying
- Economic news for exploring financial markets
Registration
Log in
You agree to website policy and terms of use
If you do not have an account, please register