Smart Data Export Indicator (MT5/MT4):使用手册、CSV 与 JSON Lines 文件、列与设置

Smart Data Export Indicator (MT5/MT4):使用手册、CSV 与 JSON Lines 文件、列与设置

14 十月 2026, 04:13
Mikoto Hamazono
0
8

Smart Data Export Indicator 是一款免费的 MetaTrader 5 指标,它把图表数据写入 CSV 或 JSON Lines 文件,列由您自行选择,并附带一张解释每一列含义的数据说明卡(data card)。它适合用 ChatGPT、Claude 等 AI 助手、电子表格或 Python 分析图表的人。Smart Data Export Indicator MT4 是免费的 MetaTrader 4 版本;不同之处会在下文中注明。两者都取代了我的免费 SmartDataExportEa。本手册适用于 1.00 版。

导出的内容

  • 数据文件(CSV 或 JSON Lines):每根已收盘的K线一行,由旧到新。新K线在收盘时追加。
  • 数据说明卡(.md):单位、预热行、时区和数据质量,以及一段供 AI 助手使用的提示词。
  • AI 快照(.md,仅 MT5):以表格形式呈现的最近几根K线,可直接粘贴到聊天中。
  • 成交记录(可选):此账户的成交(MT5)或已平仓订单(MT4)。

更高周期的数值只取自已经收盘的K线(无前视)。本指标不下单,不使用 DLL,也不发出网络请求,因此可以与您的 EA 共用一张图表。

安装

  1. 在产品页面(MT5 版或 MT4 版)点击“免费下载”(Free Download),会打开 MetaTrader。您也可以在 MetaTrader 的工具箱 > 市场中找到它。已安装的产品列在工具箱 > 市场 > 已购买中,更新也会出现在那里(“更新”按钮)。
  2. 将指标从导航器 > Indicators > Market 拖到图表上。默认设置即可使用,因此直接点击 OK 就行。

导出步骤

  1. 打开该品种的图表。除非您设置了 Timeframe of the rows ,否则各行使用图表的周期。
  2. 加载指标,选择 Range (默认为最近 5000 根已收盘K线)、列和指标(例如 RSI(14); EMA(50); ATR(14) ),然后点击 OK。
  3. 观察面板上的状态:先显示正在等待什么,然后是 Exporting history... ,再然后是 History done - appending new bars as they close (如果 After the history 设为停止,则显示 Export finished )。

MetaTrader 5 中 XAUUSD M15 图表上的 Smart Data Export 面板

状态完成时为绿色,处理中或等待中为橙色,出错后为红色。警告(例如未知的指标名称)会以橙色显示在 ! 之后,并同时显示在“智能交易”(Experts)选项卡中。Export again 会重新读取历史数据并重写所有文件。

文件的位置和内容

文件写入 MQL5\Files\SmartDataExport (MT4: MQL4\Files\SmartDataExport ;文件 > 打开数据文件夹),使用公共文件夹的输入参数时则写入 Terminal\Common\Files\SmartDataExport 。在策略测试器中,文件写入测试代理的文件夹(MT4: tester\files ),且没有 AI 快照。

每次开始导出(加载指标、修改输入参数、重启 MetaTrader、Export again)都会根据历史重新写出数据文件;之后只会追加行。要保留旧文件,请复制它,或在文件名中加入 {date}。

导出的 CSV 文件示例:价格、点差、UTC 时间、RSI、ATR 和 H4 收盘价

数据文件,例如 XAUUSD_M15.csv (或 .jsonl )。每一行以K线的开盘时间(服务器时间)开头。CSV 文件有表头行,并使用小数点;缺失值为空(在 JSON Lines 中为 null)。接下来依次是:

  • open, high, low, close, tick_volume 、 real_volume (MT5,如果经纪商提供)、 spread_pts 。
  • 以点为单位: ret_pts (close - open)、 range_pts, body_pts, upper_wick_pts, lower_wick_pts 、 gap_pts (open - 上一根的 close);以及 log_ret = ln(close / 上一根的 close)。
  • time_utc (时差按周检测,因此夏令时也能得到处理)、 dow_utc (1 = 周一)、 hour_utc 、 session :tokyo(JST 9–18 点)、london(伦敦时间 8–17 点)、newyork(纽约时间 8–17 点),多个时段用 + 连接,不在任何时段时为 off。
  • 指标列按其设置命名,例如 rsi_14 或 macd_signal_12_26_9 ;自定义缓冲区命名为 custom_<name>_<buffer> 。
  • h4_open 至 d1_close (默认周期):截至该行收盘时已经收盘的最后一根 H4 和 D1 K线。

Markdown 格式的数据说明卡:时区、列字典和质量报告

数据说明卡, XAUUSD_M15.datacard.md ,在历史导出完成时写出:数据集、品种规格、时区、每一列的单位、含义和预热行、质量报告(休市间隔、缺口、重复时间、零波幅K线、波幅尖峰,以及 MT5 中的点差跳变),以及一段可复制的提示词。MT4 版的说明卡还会列出警告。

成交记录: deals_last_365d.csv (MT5),包含品种、类型、交易量、价格、盈亏、手续费、库存费、魔术号和原因;或 closed_orders.csv (MT4),包含时间、价格、盈亏、手续费、库存费、魔术号和止损。

在 AI 助手或电子表格中使用这些文件

  • 关于历史的问题。把数据文件和数据说明卡附加到聊天中,复制说明卡末尾的提示词,并在其最后一行写下您的问题。该提示词要求助手把每一行视为只有在其收盘时才可知、去掉预热行、按时间划分数据,并给出置信区间。
  • 当前的市场(MT5)。粘贴 XAUUSD_M15.snapshot.md :最近 120 根已收盘K线(最多 500 根),含 UTC 时间、买价和卖价、最多 8 个指标列,以及一个提示词思路。在指标追加数据期间,每出现一根新K线它就会被重写一次。
  • 助手只能看到您提供给它的行。请把它的发现当作有待验证的想法,而不是信号。
  • Excel 和 Python 可以在追加行的同时读取文件。有供 Excel 使用的 UTF-8 BOM 选项和分号分隔格式。如果某个程序锁定了文件,新行会等到文件解锁后再写入。
  • 预热行列在数据说明卡中。在 MT5 中,这些行的指标值是根据很少的历史数据计算的;MT4 则将它们留空。

AI 快照:以 Markdown 表格呈现的最近几根已收盘K线及提示词思路

输入参数

名称就是 Inputs 选项卡中显示的标签。

输入参数默认值作用
Timeframe of the rows currentcurrent = 图表周期。
Range Last N closed bars 或 Date range (From / To) 、 All available history 。
Last N closed bars (Range = last N bars) 5000要导出的K线数量。
From (Range = date range) 2024.01.01 00:00日期范围的起点。
To (0 = up to the last closed bar) 0日期范围的终点。
After the history Keep appending each new closed bar 或 Stop after the history export 。
Open, High, Low, Close true价格列。
Tick volume (and real volume if the broker provides it) true成交量列。
Spread of the bar (points) true点差列。
Bar shape: return, range, body, wicks, gap, log return trueK线形态列。
Time features: UTC time, weekday, hour, session true时间列。
Indicators, separated by ; RSI(14); EMA(20); EMA(50); ATR(14); MACD(12,26,9); BB(20,2)见下文。留空 = 不导出指标。
Custom indicators: Name:buffer,buffer; Name2:0 (空)您自己的指标。
Higher-timeframe context (last CLOSED bar), separated by ; H4; D1不高于各行周期的周期会被跳过。
File name ({symbol} {tf} {date}) {symbol}_{tf}{date} = 开始时的服务器日期。
Format CSV, comma separated 或 CSV, semicolon separated 、 JSON Lines (one object per row) 。
Time format of the 'time' column ISO 8601 (2026-10-09T15:30:00) 或 Unix seconds 、 MetaTrader (2026.10.09 15:30) 。
Save in the common folder (Terminal\Common\Files) false公共文件夹。
Write the data card (.md) true数据说明卡。
AI snapshot: last N rows as a paste-ready .md (0 = off) 120仅 MT5。最多 500。
Add a UTF-8 BOM (for Excel) false供 Excel 使用。
Price decimals (-1 = symbol digits) -1价格的小数位数。
Also export this account's deals (closed trades) false成交记录文件。
Deals of the last N days 365仅 MT5。
Server GMT offset in hours (-99 = detect automatically) -99仅在检测到的时差不正确时设置。
Show the status panel true面板。
Panel X (pixels) 12仅 MT5。
Panel Y (pixels) 28仅 MT5。

在 MT4 中,列的开关为 Columns: open, high, low, close 、 Columns: tick volume 、 Columns: spread (only rows appended live; MT4 bars have no spread) 、 Columns: return, range, body, wicks, gap, log return 和 Columns: UTC time, weekday, hour, session ,成交记录的开关为 Also export this account's closed orders 。

指标名称:SMA、EMA、SMMA、LWMA、DEMA、TEMA、RSI、ATR、MACD、BB、STOCH、ADX、CCI、MFI、WPR、MOM、STDDEV、OBV、AO、SAR 和 ICHIMOKU(不含 Chikou,因为它使用之后的K线)。不带括号时使用默认参数,例如 RSI(14) 或 MACD(12,26,9)。 MyIndicator:0,1 会以默认输入参数导出某个自定义指标的缓冲区 0 和 1;名称相对于 MQL5\Indicators(MT4:MQL4\Indicators)。未知的名称会被跳过并给出警告。

MT4 说明

  • 面板是几行文字,外加一个 Export again 按钮。
  • 没有 AI 快照、没有真实成交量,也没有 DEMA 和 TEMA。历史行的 spread_pts 为空,因为 MT4 不保存每根K线的点差;实时追加的行会填入当时的点差。
  • 与各行周期相同的更高周期会被直接跳过,比各行周期更低的则会被跳过并给出警告。更高周期的K线遵循经纪商自己的分界;有些经纪商的 H4 K线从 01:00 开始。
  • 第一次使用时,H1(用于时区)和更高周期的数据需要从经纪商下载;指标会为每个周期等待最多约一分钟( Waiting for higher-timeframe history... )。如果某个更高周期的数据没有到达,其单元格保持为空;没有 H1 时,时区会退回到 GMT+2(美国夏令时期间为 GMT+3)。数据说明卡中会注明这一点。
  • 新打开的图表通常大约有 2,000 根K线。向左滚动或按 Home 键可加载更多,然后点击 Export again。“Max bars in history”和“Max bars in chart”(工具 > 选项 > 图表)也会限制历史深度。
  • 已平仓订单是指“账户历史”(Account History)选项卡中显示的订单;修改其显示期间即可包含更早的订单。

XAUUSD M15 图表上的 Smart Data Export Indicator MT4 面板

用户常问的问题

  • 行数比我要求的少?只能导出终端中已加载的K线。在 MT5 中,请在工具 > 选项 > 图表中调高“最大图表数据量”(Max bars in chart),加载更多历史数据,然后点击 Export again。
  • 状态显示 is it open in another program? 请在那个程序中关闭该文件,然后点击 Export again。
  • 某个更高周期被跳过并给出警告。在 H4 或 D1 图表上,默认的 H4; D1 中包含不高于各行周期的周期。请从该输入参数中删除它。
  • 多个品种?在每个图表上各加载一个。使用默认文件名时,每个品种和周期都会有各自的文件。

产品页面:Smart Data Export Indicator(MT5)和 Smart Data Export Indicator MT4。如有任何不清楚之处,请在 MQL5 上给我发送私信,并附上面板的截图以及“智能交易”(Experts)选项卡中的最后几行。

Download Smart Data Export Indicator from MQL5 Market

附加的文件: