Harbor SDK
manifest
manifest — это объявление стратегии. Платформа по нему решает, каких бирж, рынков и символов стратегия может касаться и какие поля спрашивает страница создания.
| Поле | Формат | Роль |
|---|---|---|
| name | строка | Название стратегии, показанное на экземпляре |
| version | строка, например 1.0.0 | Версия стратегии |
| ccxtIds | массив строк, например ["binance"] | Разрешённые биржи |
| markets | ["spot"], ["swap"] или оба | Спот, бессрочный или оба |
| symbolMode | single, dual или basket | Один символ, две ноги или корзина |
| symbols | массив символов Harbor | Обязательно для dual и basket |
| params | определения параметров | Поля, которые показываются при создании экземпляра |
| permissions | market, order, account | Возможности среды, которые будет использовать стратегия |
01symbolMode
- single: один символ, его выбирают на странице создания. symbols можно не указывать.
- dual: две ноги, например спот BINANCE:BTC/USDT и бессрочный BINANCE:BTC/USDT:USDT. В symbols нужно указать обе.
- basket: несколько символов для ротации или ребалансировки. symbols обязателен. Прогон может использовать только этот список.
02params
У каждого параметра есть type и label. У enum также есть options. type — это number, string, boolean или enum. label — имя поля на странице создания. Используйте значение, которое ввёл пользователь. Не храните второй жёстко заданный объём, который с ним расходится.
const manifest = {
name: "示例",
version: "1.0.0",
ccxtIds: ["binance"],
markets: ["spot"],
symbolMode: "single",
params: {
amount: { type: "number", label: "数量" },
},
permissions: ["market", "order", "account"],
};