Delta Footprint Chart
- 指标
-
Yuxin Lyu
我制作 MetaTrader 5 图表与成交量类工具:时段成交量分布(Session Volume Profile)、量能/Delta 可视化、轻量手动交易面板、 量能耗竭指标等等。
另有可选的 Windows 桌面图表伴侣(AI-Native Chart for MT5),放在 MT5 旁用于多图布局、告警台与分析笔记。它是终端旁的效率工具,不是信号服务,也不提供代操。 - 版本: 1.12
- 更新: 5 十一月 2026
- 激活: 10
概述
Delta Footprint Chart 是 MetaTrader 5 主图画布指标:自绘 K 线、数字买卖足迹阶梯、累计成交量 Delta(CVD)和检查器——全部画在一张 bitmap 上。不用图表对象,不用缓冲区绘图,不分窗口。
数据来源与诚实边界
基于经纪商 tick( CopyTicks / 区间接口)构建订单流风格视图。主动侧使用 AggressorRule_v1:只有当 tick 同时带有 Last、成交量和 TICK_FLAG_BUY / TICK_FLAG_SELL 时才走 Trade 路径;否则用报价中价、Last 和单边变动合成方向。工具栏的数据来源芯片(琥珀=合成,绿=Trade,蓝=混合)标明当前数字走的是哪条路径。
- 不是交易所 Level 2
- 不是全市场 Tape
- 不是机构订单流
这是面向 FX/CFD 交易者的诚实合成足迹——不会宣传成交易所深度数据。
主要功能
- 足迹阶梯 — 每根 K 线内部,每个价位行显示左侧 Bid 量和右侧 Ask 量。单元格按相对成交量着色。列宽足够时显示完整买卖数字;列窄时显示带符号 Delta;再窄则只留色块。
- 失衡与堆叠 — 当一侧量达到另一侧的设定倍数(默认 3 倍)且超过最小量时,该行高亮。连续同向失衡行打上堆叠标记——吸收或耗尽的视觉线索。
- POC(最大成交价位) — 每根 K 线中总量最大的价位行用琥珀色标记。
- CVD 条带 — 图表下方可拉伸的累计成交量 Delta 曲线,按可见窗口缩放。可选 Delta 直方图和三行数据表(成交量 / Delta / 累计),与每根 K 线对齐。
- CVD 背离 — 可选的黄色圆点标记收盘与 CVD 反向的柱——中性观察,不是交易信号。
- 检查器面板 — 右侧表格显示选中 K 线的 OHLC、总买卖量/Delta、POC 价位、tick 分类统计(Trade / Quote / 中性 / 过滤),以及可滚动的价位阶梯。
- Delta 表 — 每根 K 线下方的成交量、Delta 和累计 Delta 数值条。
- 独立视口 — 滚轮缩放、Shift+左键平移(时间+价格)、价格轴拖拽缩放。每根 K 线最宽可达 280 像素。
- 品种预设 — 一键切换 Gold / FX / Index 配置(行距、点差上限、CVD 高度、配色)。
- 性能预设 — Balanced / Gold / Lite / Manual——平衡 CPU 与历史深度。
- 中英双语界面 — 工具栏、检查器、标签均支持中/英文切换。
安装与使用方法
- 在 MetaTrader 5 → 导航器 → 指标 中打开 DeltaFootprintChart(或拖到图表)。
- 建议先挂 XAUUSD M5(或其他流动性好的品种),并在开市时段使用,才能看到 tick 梯子。
- 首次挂载可先保持默认。把 Language 设为中文或 English;需要一键起步时可选 InstrumentPreset(Gold / FX / Index)。
- 点 确定。等待首次 tick 重建(历史深度 = HistoryBarsTarget)。
- 用鼠标滚轮放大,直到 Bid×Ask 数字可读。若始终不显示数字,提高 MaxPxPerBar 或继续放大。
- 单击某根 K 线固定检查器。工具条可切换 CVD / 检查器 / 失衡 / 品种预设等。
- 休市、无 tick 时梯子为空是正常现象,等开市有 tick 即可。
挂载后的图表操作
- 滚轮 — 缩放每根 K 线像素宽度。数字只在宽度/单元格高度越过阈值后绘制。
- Shift + 左键拖拽 — 同时平移时间与价格;任意平移会清除「跟随最新 K 线」。
- 价格轴左键拖拽 — 缩放价格跨度(贴近 MT5 原生手感)。行高和数字字号跟着变。
- 图表区普通左键拖拽 — 留给 MT5 画矩形等对象;平移请用 Shift+左键。
- 双击价格轴或图区、F、工具栏适应 — 按可见高低点重设价格窗口。
- Home — 跟随最新 K 线并适应价格。
- [ / ] — 检查器切换到更早/更新的 K 线。点击图区固定选中。
- E — 导出选中 K 线到 Common/Files,CSV 含诚实声明头和 price,bid,ask,delta 行。
- I / Esc — 打开/关闭关于面板(规则说明、缓存键、内存 tick 数、自检状态)。
- Ctrl+滚轮 / Shift+滚轮 / 价格轴上滚轮 — 缩放价格区间。
- 拖 CVD 上沿 — 调节 CVD 条带高度(96–520 像素,未乘 UiScale)。
- 工具条 — 品种预设、布局、成交量模式、CVD、检查器、语言、About。
品种预设
| 档 | 性能 | 行距 | 点差上限 | CVD 高度 | 配色 |
|---|---|---|---|---|---|
| 关 | 回到输入 | 回到输入 | 回到输入 | 回到输入 | 回到输入 |
| 黄金档 | Gold | 手动 50pt | 250pt | 280px | 暖色金/绿/红 |
| 外汇 | Balanced | 自动 | 80pt | 220px | 冷色蓝/绿 |
| 指数 | Lite | 手动 20pt | 400pt | 200px | 灰调 |
预设只改行距、点差上限、CVD 高度和配色,不丢已在内存里的 tick。行距或点差变了只重放阶梯。
推荐起步参数
- 黄金 (XAUUSD):InstrumentPreset = Gold,或 PerformancePreset = Gold;RowSizeMode = Manual,按经纪商位数设 RowSizePoints。
- 外汇主流:InstrumentPreset = FX,PerformancePreset = Balanced,RowSizeMode = Auto。
- 指数:InstrumentPreset = Index;机器吃力时用 PerformancePreset = Lite。
- 界面可读:UiScale 1.40–1.80,FontSizeUi 14–16,FontSizeDigits 11–13,ShowDeltaTable = true。
- 干净画面:ShowSessionShade = false,HideNativeCandles = true,FollowLastBar = true,RightPaddingBars = 3。
参数配置说明
Data / 数据
- HistoryBarsTarget — 保留足迹梯子的历史 K 线数(默认 400)。越大历史越长,内存/CPU 越高。
- TickChunkSize — 单次 CopyTicksRange 软上限(默认 80000)。
- SyntheticTickWeight — volume 为 0 时的合成权重(默认 1.0)。
- MaxSpreadPoints — 过滤过大点差:-1 自动(金属 200 / 外汇 80),0 关闭,其它为点数。
- PreferTradeTicks — 行情带 BUY/SELL 标志时优先使用(默认 true)。
- AggressorRuleVersion — 生产环境保持 AggressorRule_v1。
- EnableSynthesisAudit — 仅调试;回放对比合成(请保持 false)。
Rows / 价位行
- RowSizeMode — Auto(自适应)或 Manual。
- RowSizePoints — Manual 时每个价位桶的点数(黄金通常需要更大步长)。
- PriceMapMode — SideAware(默认)/ Last / Mid — tick 映射到价位行的方式。
Footprint / 足迹
- LadderLayout — Beside(梯子在蜡烛旁)或 Inside(画在实体内)。
- VolumeDisplay — AskBid(默认)/ Delta / TotalDelta。
- ShowImbalance / ImbalanceRatio / MinImbalanceVolume / StackedLevels — 失衡高亮规则(默认比率 3.0,堆叠 3 层)。
- MinPxPerBarForDigits / MinCellHeightForDigits — 显示 Bid×Ask 数字所需的最小缩放。
Candles / 蜡烛
- ShowCandles、BodyOpacity、BullColor、BearColor — Canvas 蜡烛外观。
CVD
- ShowCVD — 显示 CVD 条带(打开底部表时也会强制开启)。
- CVDReset — None / Daily / Session / ManualAnchor。
- SessionTemplate — 外汇伦敦重叠或 Custom;Custom 用 SessionStartHour / SessionEndHour。
- CVDManualAnchorTime — CVDReset = ManualAnchor 时的锚点时间。
- ShowSessionShade — 会话底色(默认关,画面更干净)。
- CvdStripHeight / ShowCvdCurve — 条带高度与是否画 CVD 曲线。
Divergence / 背离
- ShowCvdDivergence — CVD 上黄色中性圆点(默认 true),不是买卖箭头。
- CvdDivMarkSize / CvdDivMarkColor — 标记大小与颜色。
Viewport / 视口
- MinPxPerBar / MaxPxPerBar — 缩放范围(想看清数字可提高 Max,最大 280)。
- DefaultBarsVisible — 首次可见 K 线数(默认 32)。
- FollowLastBar — 跟随最新 K 线,直到你平移。
- RightPaddingBars — 最新 K 线右侧空白根数(默认 3)。
- HideNativeCandles — 隐藏 MT5 原生蜡烛,只留 Canvas(默认 true)。
- CanvasBehindObjects — 让气泡/对象可画在 Canvas 上方。
UI / 界面
- UiScale — 全局界面缩放(默认 1.60),工具条与检查器一起变。
- FontSizeUi / FontSizeDigits — 界面字 vs 足迹数字。
- ShowDeltaTable / DeltaTableHeight / ShowDeltaHistogram — 底部 Volume|Delta|Cum 区块。
Inspector
- ShowInspector / InspectorWidth — 右侧选中柱面板。
Performance / 性能
- PerformancePreset — Balanced(默认)、Gold(更密更重)、Lite(更轻)、Manual(自己管 TimerMs / 上限)。
- TimerMs — Manual 时的刷新间隔(默认 75)。
- MaxTicksInStore — tick 缓存上限(默认 3,000,000)。
Preset / 品种预设
- InstrumentPreset — Off(保留你填的输入)、Gold、FX、Index。工具条可实时切换;Off 不覆盖你手填的参数。
诚实声明 / 语言 / 颜色 / 告警 / 调试
- ShowHonestyBadge — 仅写入 set 文件;默认不画在图上。
- Language — Lang_zh 或 Lang_en。
- Ask/Bid/Delta/失衡/POC/背景色 — 主题配色。
- 会话阴影 / 第二会话 — 仅视觉阴影;除非 CVDReset = Session,否则不重置 CVD。
- EnableAlerts + 冷却 / 弹窗 / 推送 / 邮件 — 可选告警(默认关)。
- VerboseLog — 专家日志调试输出(请保持 false)。
诚实约定
"合成订单流,非交易所 Level 2 / 非真实全市场 Tape" 这句话出现在:
- #property description (指标对话框可见)
- 初始化时的 Experts 日志
- 关于面板(工具栏 i 或按 I)
- 每个导出的 CSV 文件头
图上徽章默认关闭。工具栏的数据来源芯片(合成 / Trade / 混合)始终反映当前分类路径。
架构
- 一张 bitmap — 所有像素(K 线、阶梯、坐标轴、CVD、检查器、工具栏)都画在同一个 CCanvas 上。不用 OBJ_LABEL、OBJ_TEXT、OBJ_RECTANGLE,不调 ObjectCreate。
- Tick 窗口为唯一事实来源 — tick 按绝对毫秒时间存储。K 线阶梯是回放缓存。切换周期时代际号递增,阶梯全部作废,正在复制的 tick 如果代际不符则丢弃。
- 代际保护 — m_ctxGen 防止切换品种/周期时把过期的 CopyTicksRange 结果提交进阶梯。
- 增量更新 — 最新 K 线随新 tick 到达增量更新;已完成 K 线提交后不再重放,除非行距或点差过滤变了。
- 空 tick 处理 — CopyTicksRange 返回 0 且无错误时,重试两次后认定为空。没有 tick 的 K 线标记为离线,只画蜡烛不画阶梯——不画假的零 Delta 行。
- 自检 — 每次 OnInit 运行 RunSelfTest(),45 个测试用例验证分类规则、行累积、临时柱与回放柱、失衡/堆叠、单元格模式、缓存键和序列查找。失败时工具栏显示红色芯片。
性能预设
| 预设 | 历史柱数 | tick 上限 | 定时器 | 默认可见 | 行距目标 |
|---|---|---|---|---|---|
| 均衡 | 500 | 3,000,000 | 75ms | 32 | 14 |
| 黄金 | 180 | 1,200,000 | 100ms | 30 | 10 |
| 轻量 | 120 | 600,000 | 75ms | 24 | 8 |
| 手动 | 20-800 | 50K-5M | 25-250ms | 5+ | 输入值 |
均衡预设在 XAU/GOLD/XAG/SILVER 品种上自动选择黄金上限。定时器负责拉取 tick 和回放;OnCalculate 只在 K 线数量变化时刷新行情。工具栏显示上一帧耗时,超过 16ms 变琥珀色。
预期行为
休市或无 tick 时足迹为空属正常。同一品种换经纪商,梯子可能不同。FX/CFD 在无成交标志时走诚实 Path A 合成——不会宣传成交易所 L2。
互补关系
可与气泡类 Delta 工具、会话成交量剖面工作流互补。本产品是足迹 + CVD 图表,不是气泡克隆,也不是会话 VP 替代品。
免责声明
仅供分析参考,不承诺收益。风险由您自行管理。
