跨品种(cross-order)策略可在一个市场产生信号,在另一个市场下单。在 dogabot 中,策略顶层的 exchange 与 symbol 决定订单执行位置;每条规则可选读取另一 数据 symbol、数据 timeframe 或 数据源 / exchange 的 K 线。
信号市场 vs 执行市场
| 设置 | 范围 | 用途 |
|---|---|---|
| 策略 exchange、symbol、timeframe | 整个自动化 / 回测 | 订单去向与 当前价格 来源 |
| 规则 Data symbol、Data timeframe、Data source / exchange | 仅该规则 | 指标评估用的 K 线 |
数据字段为 Strategy default 时使用与执行对相同的 K 线。需要观察其他品种或交易所时覆盖即可。
订单始终使用策略的 symbol 与 exchange — 即使入场规则读 BTC K 线来决定何时买 ETH。
适用场景
- 领先 / 滞后配对 — 如 BTC 发信号,交易跟随的 alt
- 宏观 + 本地 — 如 GOLD 作过滤,在主交易所做永续
- 跨所上下文 — 读现货或其他 venue,在 USDM 执行
- 同一规则、双数据源 — 两条实例(如两个 Price Distance)不同数据 symbol,all agree
配置步骤
适用于 Backtest 与 Create automation(All-in-One 规则界面)。
步骤 1:选择执行交易对
将顶层 exchange、symbol、timeframe 设为要 实际交易 的市场 — 成交、止损、止盈、仓位均基于此。
步骤 2:添加并启用规则
在 Entry、Increase、Reversal 或 Exit 中启用 MA Crossover、RSI、Price Distance 等。
步骤 3:按规则覆盖数据
在规则下方可选数据行:
| UI 字段 | 参数 | 示例 |
|---|---|---|
| Data symbol (optional) | symbol | 策略交易 ETHUSDT,数据用 BTCUSDT |
| Data timeframe (optional) | timeframe | 执行 15m,信号 1h |
| Data source / exchange (optional) | dataSource | 数据 binance_spot,执行 binance_usdm |
Strategy default 继承策略值。
步骤 4:回测后上线
运行 回测 确认执行品种上的成交与时机,再用相同参数创建自动化。
仍使用策略交易对的部分
始终为 执行 symbol,规则级不可单独设数据源:
- Stop Loss、Take Profit、Day Trade Close
- 执行时的 价格与数量
- 成交量过滤等 策略过滤器
退出与过滤应围绕实际交易的品种设计。
示例
目标: 当 BTC/USDT 1h 均线金叉时,在 Binance USDM 买入 ETH/USDT。
| 层级 | Exchange | Symbol | Timeframe |
|---|---|---|---|
| 策略(执行) | binance_usdm | ETHUSDT | 15m |
| Entry — crossover(数据) | Strategy default | BTCUSDT | 1h |
- 策略:
binance_usdm/ETHUSDT/15m - Entry 启用 crossover(短 MA 5,长 MA 20)
- Data symbol =
BTCUSDT,Data timeframe =1h - Exit:Stop loss 5%,Take profit 10%(ETH 仓位)
BTC 1h 发出 buy 后,dogabot 以当前 ETH 价格开多 ETH。
提示
- 数据 timeframe 对齐分析周期;执行 timeframe 决定检查频率。
- 信号与执行品种的相关性可能失效 — 放大仓位前请回测。
- 实盘会为每个不同的
(dataSource, symbol, timeframe)拉取额外序列 — 尽量少覆盖。 - 双信号源:复制规则并 all agree。