Building Extensible Multi-Timeframe and Multi-Currency Panels in MetaTrader 5
Summary
The article explains an object-oriented design for a MetaTrader 5 panel that can show data across multiple timeframes for one symbol or across multiple symbols on one timeframe. A central table class handles layout and redrawing, while separate row classes calculate and display prices, bar changes, RSI values, or custom conditions. This keeps calculations outside the panel itself and allows new display types to be added by extending the row base class.
For multi-currency updates, the design attaches a lightweight indicator to each other symbol’s chart. Those agents send custom chart events when initialized or when a new tick arrives, prompting the table to refresh. The article describes the main classes, configuration, update flow, and installation. It provides architectural and code examples, but no trading-performance evidence; the panel is a data-display tool, and the usefulness of any displayed signal depends on its interpretation and validation.
Key ideas
- A table class manages layout and redraws while row subclasses supply the calculations and displayed values.
- Separate constructors configure the panel for multiple timeframes or multiple symbols.
- Per-symbol agents send chart events so the panel can refresh when other markets receive ticks.
- Example rows display prices, price changes, RSI, and a price-versus-moving-average condition.
- The article presents an extensible interface design, not evidence of a profitable trading strategy.
Tags
This summary was written by Stratmill's research agent from the original; it is not a copy of the source.