交易日志 CSV 导入:经纪商导出、列映射与去重

「从 CSV 导入交易」读取经纪商导出的文件,自动识别分隔符和列,预览解析出的交易,然后写入交易日志。重复导入同一个文件会更新已有记录,而不是产生重复。

Senzoukria · 文档 · 更新于 2026 年 9 月


位置

位置
交易日志 → 交易 → 「导入 CSV」按钮
来源
Apex Trader Funding(默认)、Rithmic Trader、NinjaTrader、TradingView、其他 CSV
分隔符
逗号、分号或制表符,从第一行判断
去重键
存在成交 id 列时使用该列,否则用「{source}-row-{n}」

它做什么

对话框写着:「从你的经纪商后台导出,把文件拖到这里。重复导入会自动去重。」先选择经纪商来源,然后拖入文件或使用「浏览文件」(.csv 或文本)。解析器会去掉 UTF-8 字节序标记,处理带引号且内含逗号、引号和换行的字段,并选用在表头行中出现次数最多的分隔符。

预览会显示文件名、解析成功与跳过的行数、列数、一个可折叠的「列自动映射」清单,以及前 8 笔交易(时间、品种、方向、手数、入场、出场、盈亏)。按钮写着「导入 N 笔交易」。结果面板打印「+N 新增 · N 更新」,如有失败行也会写明,并提供「再导入一个」和「完成」。

列映射

每个字段可识别的表头名称(忽略大小写、空格、下划线、连字符、点和斜杠;先精确匹配,再子串匹配)
字段可接受的表头是否必填
symbolsymbol、instrument、contract、ticker
sideside、buy/sell、b/s、direction、type
entryPriceentry price、open price、buy price、avg entry price、fill price
exitPriceexit price、close price、sell price、avg exit price
quantityqty、quantity、size、contracts、shares、lots否(默认 1)
pnlpnl、p/l、p&l、profit、net pnl、realized pnl、pl
entryTimeentry time、open time、buy time、time、datetime、trade time、fill time否(默认为当前时间)
exitTimeexit time、close time、sell time
commissioncommission(s)、fee(s)
accountIdaccount、account id、account number
externalIdtrade id、order id、ticket id、execution id、id、fill id
notesnotes、comment、memo、tag

取值解析

  • 方向:B、BUY、LONG、L 视为 LONG;S、SELL、SHORT、SH 视为 SHORT。其他取值会跳过该行。
  • 数字:美元符号、空格和千位分隔符会被去掉;括号中的数值按负数读取。
  • 数量会四舍五入为整数。
  • 日期:JavaScript Date 解析器能接受的任何格式(ISO、MM/DD/YYYY…),外加紧凑的 YYYYMMDD HH:MM[:SS] 形式,按 UTC 读取。输出为 ISO 8601 UTC。
  • 缺少品种、方向或入场价的行计为跳过;空行被忽略。

怎么用

从经纪商或自营商后台导出成交清单,保留表头行,然后把文件拖进来。请检查自动映射清单:映射为「—」的字段表示没有找到,导入后的交易该字段会是空的。时间列和账户列最为关键:没有账号的导入交易会落到账户选择器的「未记录账户」分组中。

导入是按来源和外部 id 进行的更新插入。重新导入更新过的导出文件会刷新匹配的记录,并报告为「更新」,而不是创建重复。当文件没有 id 列时会使用行号,因此两次导出之间调换行顺序会改变被更新的是哪一笔交易。

限制与陷阱

  • 导入的交易保留文件中的盈亏;不会根据价格和点值重新计算。
  • 周期、形态、评分、情绪和截图不会从 CSV 读取;请事后在交易表单中补充。
  • 一次只能导入一个文件。来源的选择影响的是备用 id 前缀,而不是列映射。
  • 没有时区的日期由 Date 解析器按本机的本地时区解释;紧凑格式则按 UTC 处理。

其他语言版本

常见问题

为什么有些行被跳过了?
当品种、方向或入场价无法读取时,该行会被跳过。展开「列自动映射」清单即可看到哪些列没有被识别。
导入两次会让交易重复吗?
不会,只要文件有 id 列或保持相同的行顺序。匹配到的行会被更新并计为「更新」。
导入需要经纪商连接吗?
不需要。它读取本地文件并写入本地的交易日志数据库。