Harbor SDK
示例:现货网格
这个示例是单标的现货。第一根 K 线用市价买入一次,并用 kv 记住已经买过,避免每根 K 线都再买。界面上用指标卡和一条收盘价曲线显示当前 K 线。
- markets 只有 spot,symbolMode 是 single。
- params.amount 是创建页上的数量字段。示例下单仍写了 0.01,接入创建页参数时改成用户填写的数量。
- clientOrderId 带上 K 线时间,同一根 K 线重复触发时不会变成两笔。
- permissions 包含 market、order、account。
完整示例:
const manifest = {
name: "现货网格",
version: "1.0.0",
ccxtIds: ["binance"],
markets: ["spot"],
symbolMode: "single",
params: { amount: { type: "number", label: "数量" } },
permissions: ["market", "order", "account"],
};
async function onBar(rt, bar) {
const bought = await rt.kvGet("bought");
if (!bought) {
await rt.order.create({
clientOrderId: "grid-" + bar.time,
symbol: bar.symbol,
side: "buy",
type: "market",
amount: "0.01",
});
await rt.kvSet("bought", "1");
}
rt.setUi({
cards: [{ kind: "metric", id: "px", label: "close", value: bar.close }],
buttons: [],
charts: [{ kind: "chart", id: "c", label: "close", points: [{ time: bar.time, value: bar.close }] }],
fields: [],
});
}本章节内容登录后可见
注册账号即可免费阅读完整章节,包括示例代码与逐步操作说明。
登录 / 注册后查看