EA-18046 · Utility

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

CategoryUtility
RiskSafe
Rating★★★☆☆
TypeUtility tool
TimeframesM1, M5, M15, H1, H4, D1
Indicators—
AuthorAlexey Volchanskiy

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

Code quality3.0
Strategy logic2.0
Risk management5.0
Robustness2.0
Innovation2.0
Documentation2.0
Overall2.7

Parameters

ParameterDefaultDescription
TimerMsInterval500Logging interval in milliseconds (timer frequency)
SelectSymbolsEMarketWatchSymbolsSymbol selection mode: all, Market Watch, or from file
SymbolsFileNameInputSymbolList.txtFilename containing symbol name list
FormatRecordingECsvRecording format: CSV, binary, or both
FormatTimeEServerTimeTime format: server time or local Windows time

Similar Utility EAs

Backtests are historical simulations and do not guarantee future results. Not financial advice.

Get the weekly Arena report

One email a week: ranking changes, new signals and new research. No spam; unsubscribe any time.