Harbor SDK
风控与排错
平台在订单发出前检查额度、回撤和会员状态。不允许时订单不会提交,实例日志里会留下拒绝原因。策略拿不到带密钥的交易所原文。
拒绝结果形如:
{"allow":false,"action":"reduce_only","limit":"maxDrawdownPct"}- allow 为 false 表示这次没下出去。
- action 为 reduce_only 时,只允许减仓,不允许再加仓。
- limit 指出碰到的限制,例如 maxDrawdownPct。
01日志里先看什么
- 打开对应托管实例,看运行日志里的 info、warn、error。
- 如果完全没有 onBar 或 onTick 的日志,先确认至少实现了其中一个钩子,并且实例处于运行中。
- 如果日志有行情但没有订单,看是策略自己没调用 create,还是平台返回了 allow:false。
02常见错误
- dual 或 basket 却没有在 manifest.symbols 里声明交易对。
- 没有 onBar、onTick、onTimer,策略不会被周期调用。
- 调用了 order 或 account,但 permissions 里没有声明。
- clientOrderId 每次都变,重复触发会各下一笔;同一意图应复用同一个 id。
- 对现货 symbol 读资金费,或在 getSocial 为空时仍当作有效排名。
- 会员到期或回撤超限后仍加仓。这时应处理拒绝结果,而不是重试把额度打满。
