SaveTicks
SaveTicks is a utility Expert Advisor that records tick data (bid/ask) for multiple symbols into CSV and/or binary files at a configurable millisecond interval. It supports selecting symbols from Market Watch, all available symbols, or a custom file-based list, and can record using either server or local time.
Open the interactive view (equity curve, symbol switch)Key facts
Backtest results (H1, about 1 year)
Not backtested yet — this EA could not be converted automatically.
Strategy analysis
SaveTicks is not a trading strategy EA but rather a data collection utility tool. It uses a millisecond-resolution timer (EventSetMillisecondTimer) to periodically sample the latest tick data for all specified symbols at a user-configurable interval. Entry conditions are not applicable since this EA does not execute any trading operations. Exit conditions are likewise not applicable. Position sizing and money management are completely absent as the EA only performs data logging. Its core function is to write the bid and ask prices from the MqlTick structure obtained via SymbolInfoTick, along with timestamps, to files in either CSV text format or binary format, or both simultaneously. The EA's purpose is to provide high-quality raw tick data as a foundation for subsequent quantitative analysis, backtesting, or strategy development.
Strengths
- Supports simultaneous tick data collection for multiple symbols with broad coverage
- Provides both CSV and binary formats — CSV for human readability and binary for efficient programmatic access
- Flexible symbol source selection from Market Watch, all symbols, or custom file-based lists
- Uses millisecond-resolution timer for high-precision sampling with configurable intervals
Weaknesses
- Polling-based sampling may miss ticks between timer intervals — not true tick-by-tick recording
- File handles are opened in OnInit but OnDeinit only closes CSV and binary handles without robust cleanup for abnormal states
- No file size limit or auto-archiving mechanism — long-running sessions may produce extremely large files
- LoadSymbolList trusts file contents without sufficient validation, potentially causing exceptions
- No data integrity verification — no retry or alert mechanism when write operations fail
Possible improvements
- Add a true tick-by-tick mode using OnBookEvent instead of pure timer polling to ensure no ticks are missed
- Add file size monitoring and automatic splitting/archiving to prevent excessively large files
- Enhance input validation in LoadSymbolList with symbol validity checks and upper quantity limits
Risk assessment
Overall risk: Safe
- This EA does not execute any trading operations — no financial risk
- Long-running sessions may consume large amounts of disk space
- File write failures only trigger a simple return, which may cause data gaps but no trading losses
Evaluation scores
Parameters
| Parameter | Default | Description |
|---|---|---|
TimerMsInterval | 500 | Logging interval in milliseconds (timer frequency) |
SelectSymbols | EMarketWatchSymbols | Symbol selection mode: all, Market Watch, or from file |
SymbolsFileName | InputSymbolList.txt | Filename containing symbol name list |
FormatRecording | ECsv | Recording format: CSV, binary, or both |
FormatTime | EServerTime | Time format: server time or local Windows time |
Similar Utility EAs
Backtests are historical simulations and do not guarantee future results. Not financial advice.