Harbor SDK
Пример: спотовая сетка
В этом примере один спотовый символ. На первом баре стратегия один раз покупает по рынку и сохраняет этот факт в kv, чтобы следующие бары не покупали снова. Интерфейс показывает цену закрытия на карточке метрики и линию из одной точки.
- markets — только spot. symbolMode — single.
- params.amount — поле объёма на странице создания. Пример заявки по-прежнему использует 0.01. Когда подключите форму, используйте значение, которое ввёл пользователь.
- В clientOrderId входит время бара, поэтому повторный запуск на том же баре не становится двумя заявками.
- В 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: [],
});
}Эта глава доступна после входа
Создайте бесплатный аккаунт, чтобы прочитать главу целиком, включая примеры кода и пошаговые инструкции.
Войти и продолжить