Xlsx Writer: Generate Excel .xlsx Files from MQL5 Without External Libraries

Xlsx Writer: Generate Excel .xlsx Files from MQL5 Without External Libraries
Download ALL MT5 experts (1734)
YouTube Video Thumbnail



Similar MetaTrader Tools

Xlsx Writer: Generate Excel .xlsx Files from MQL5 Without External Libraries

Info

The Xlsx Writer: Generate Excel .xlsx Files from MQL5 Without External Libraries is a Expert Advisor for MetaTrader 5 that xlsxwriter. mqh allows you to create native Excel workbooks (.

Usage

This tool is typically used for automated trading on major forex pairs and gold.

Platform

This Expert Advisor works exclusively on MetaTrader 5 (both build 600+ and newer versions).

Setup

Place the downloaded file in MQL5/Experts folder via File ? Open Data Folder in MetaTrader 5.


How to Install and Use Xlsx Writer: Generate Excel .xlsx Files from MQL5 Without External Libraries

1. Installation: Open the "File" menu, select "Open Data Folder," navigate to MQL/Experts, paste your file, and restart the terminal.

2. Activation: Drag the EA from the Navigator onto a chart, ensure "Allow live trading" is checked in the Common tab, and verify the AutoTrading button is green.

3. Optimization: Right-click your chart, choose "Expert List," click "Properties" to adjust inputs, and save your preferred setup as a set file for future use.

4. Maintenance: Regularly check the "Experts" tab in the terminal window to monitor trade logs and potential execution errors.

Frequently Asked Questions

Q: Why is my EA not opening trades? A: Check the "AutoTrading" button, ensure "Allow live trading" is enabled, and verify your broker allows automated trading on your account type.

Q: Can I run multiple EAs on one chart? A: No, each chart can only host one active EA; however, you can open multiple charts for different currency pairs to run several EAs.

Q: What does the "smiley face" icon mean? A: A smiley face in the top-right corner of the chart indicates the EA is successfully running; a frowny face means it is disabled.

What this tool does

XlsxWriter.

Typical Use Case

This Expert Advisor excels in automated trading and technical analysis on MetaTrader 5.

Compatible Platform & Setup

This Expert Advisor works on MetaTrader 5. Place the file in the MQL5/Experts folder and restart the terminal.

Description & Settings

Related: Expert Advisor: Exp X2 MA - another powerful expert for MetaTrader 5 traders.

XlsxWriter.mqh allows you to create native Excel workbooks (.xlsx) directly from MQL5.
It does not require any DLLs or Microsoft Excel installation on the computer. The generated file is a ZIP archive containing Office Open XML parts, stored without compression, and includes CRC-32 checksums for each part.

Also recommended: Color TSI Oscillator EA MT5 - similar expert with strong performance on MetaTrader 5.


Features

- Support for multiple sheets within a single workbook.
- Writes text, numbers, and dates. Dates are formatted as real Excel dates, enabling correct sorting and filtering.
- Includes a bold header row that is frozen and equipped with filters on every sheet.
- Allows customization of column widths.
- Provides 8 distinct number formats: date-time, date, month, money, integer, price (5 decimal places), percent, and 2 decimal places.
- Handles Unicode text (UTF-8) correctly.
- Compatible with scripts, Expert Advisors, and the Strategy Tester (output to FILE_COMMON in OnTester).

Usage Example

#include <XlsxWriter.mqh>

CXlsxSheet sheets[1];
string headers[] = {"Time", "Symbol", "Profit"}; double widths[] = {19, 12, 12}; sheets[0].Init("Trades", headers, widths);

sheets[0].BeginRow();
sheets[0].Time(TimeCurrent());
sheets[0].Text("EURUSD");
sheets[0].Number(12.5, XS_MONEY);
sheets[0].EndRow();

CXlsx book;
book.Save("trades.xlsx", 0, sheets); // Output file: MQL5\Files\trades.xlsx

Refer to the included script ExportDealsToXlsx.mq5 for a practical demonstration. This script exports account history deals to a sheet named "Deals" and daily trading results to a sheet named "Daily". To use it, place XlsxWriter.mqh in your MQL5\Include directory and the script in your MQL5\Scripts directory.

The generated files have been successfully verified by opening them in Microsoft Excel. This tool was developed in 2026.

You may also like: plan x - excellent alternative for expert users on MetaTrader 5.

Source Code

#property copyright "RobotFX"
#property version   "1.00"
#property script_show_inputs
#include <XlsxWriter.mqh>
input int    InpDays     = 365;
input string InpFileName = "AccountDeals.xlsx";
string DealTypeName(const long type)
  {
   string s = EnumToString((ENUM_DEAL_TYPE)type);
   StringReplace(s, "DEAL_TYPE_", "");

.......

Leave your opinion, ask a question, share some knowledge

⚠ Limitations & Risk Warning

  • This tool is provided for educational and testing purposes only.
  • Past performance does not guarantee future results.
  • Trading involves substantial risk of loss. Use on a demo account first.
  • Results may vary depending on market conditions, broker, and settings.
  • We recommend thorough backtesting and forward testing before using with real funds.
© ROBOTFX Free educational tools by RobotFX. Use entirely at your own risk; we are not liable for any financial losses incurred.