Harbor SDK
示例:趋势
这个示例做永续单标的。每根 K 线读取最近几根 1 小时收盘价,用倒数第二根和最新收盘价比方向。没有持仓并且价格上涨时,市价买入。
- markets 是 swap,symbolMode 是 single。
- 先 getKlines,再 getPositions。空仓用持仓数组长度为 0 判断。
- clientOrderId 使用 trend- 加上 K 线时间。
- 每根 K 线写一条 info 日志,方便在实例里核对收盘价。
它只在上涨且空仓时买入,没有写卖出。实盘前要自己补上离场条件,并先用模拟账户看日志。完整示例:
const manifest = {
name: "趋势",
version: "1.0.0",
ccxtIds: ["binance"],
markets: ["swap"],
symbolMode: "single",
params: {},
permissions: ["market", "order", "account"],
};
async function onBar(rt, bar) {
const bars = await rt.market.getKlines(bar.symbol, "1h", 3);
const prev = bars.length > 1 ? Number(bars[bars.length - 2].close) : Number(bar.close);
const last = Number(bar.close);
const pos = await rt.account.getPositions();
if (last > prev && pos.length === 0) {
await rt.order.create({
clientOrderId: "trend-" + bar.time,
symbol: bar.symbol,
side: "buy",
type: "market",
amount: "0.01",
});
}
rt.log("info", "trend " + bar.close);
}本章节内容登录后可见
注册账号即可免费阅读完整章节,包括示例代码与逐步操作说明。
登录 / 注册后查看