Discussing the article: "Building a Dynamic and Customizable Table in MQL5"

 

Check out the new article: Building a Dynamic and Customizable Table in MQL5.

This article presents a reusable CTable class for building chart-based tables in MQL5. It covers table architecture, creation and destruction of objects, coordinates and sizing, cell properties, horizontal/vertical headers, dynamic row/column edits, object naming, index conversion, and efficient refreshing. You will be able to assemble consistent, aligned on-chart dashboards for market data, indicators, and signals with minimal boilerplate.

If you display multiple metrics on a MetaTrader 5 chart (RSI, moving averages, spread, signals, etc.), you'll quickly run into a common problem: a table built from native chart objects becomes a scattered set of RectLabel/Edit objects with manual coordinate math, per-object styling, and fragile synchronization. Every added row, column, or theme change forces tedious adjustments and is a frequent source of alignment bugs and duplicated code.

This article presents a reusable CTable class that addresses these issues by separating cell state from visual objects, centralizing layout and lifecycle management, and exposing a clear API for creation, updates, and structural changes. The class is designed for practical algorithmic trading needs (dashboards, screeners, and signal monitors): it creates/updates/destroys tables on the chart, supports headers, per‑cell customization, dynamic row and column changes, and efficient updates—so you can focus on the data, not on dozens of manual object updates.

1

Author: Mehdi Ghorbani Saeidian