DoQuant
Português
Voltar ao manual

Harbor SDK

Exemplo: grade spot

Este exemplo é um símbolo spot. A primeira barra compra uma vez a mercado e guarda esse fato no kv para que as barras seguintes não comprem de novo. A interface mostra o close num card de métrica e numa linha de um ponto.

  • markets é apenas spot. symbolMode é single.
  • params.amount é o campo de tamanho na página de criação. A ordem de exemplo ainda usa 0.01. Quando você ligar o formulário, use o valor que o usuário informou.
  • clientOrderId inclui o horário da barra, então um disparo repetido na mesma barra não vira duas ordens.
  • permissions inclui market, order e account.

Exemplo completo:

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: [],
  });
}
Este capítulo requer login

Crie uma conta gratuita para ler o capítulo completo, incluindo código de exemplo e instruções passo a passo.

Entrar para continuar