DoQuant
한국어
매뉴얼로 돌아가기

Harbor SDK

예시: 펀딩 양다리

이 예시는 현물과 무기한을 함께 선언합니다. symbolMode는 dual이어야 하고, symbols에 두 다리를 적어야 합니다. 실행 시 getSymbols가 허용 목록을 반환한 뒤, 전략은 무기한의 현재 펀딩 비율과 최근 기록을 읽습니다.

  • 현물 심볼은 BINANCE:BTC/USDT입니다. 무기한은 BINANCE:BTC/USDT:USDT입니다.
  • 비율이 양수이고 기록이 비어 있지 않으면, 예시는 현재 봉의 심볼을 시장가로 매수합니다. 실제 양다리 전략은 선언된 두 심볼을 모두 사용해야 합니다.
  • UI는 지표 카드에 비율을 보여 줍니다.

데이터가 없으면 getFundingRate는 null을 반환합니다. 예시는 그것을 0으로 보고 주문하지 않습니다. 전체 예시:

const manifest = {
  name: "资金费双腿",
  version: "1.0.0",
  ccxtIds: ["binance"],
  markets: ["spot", "swap"],
  symbolMode: "dual",
  symbols: ["BINANCE:BTC/USDT", "BINANCE:BTC/USDT:USDT"],
  params: {},
  permissions: ["market", "order", "account"],
};
async function onBar(rt, bar) {
  const symbols = await rt.market.getSymbols();
  const perp = symbols[1] || bar.symbol;
  const funding = await rt.market.getFundingRate(perp);
  const history = await rt.market.getFundingHistory(perp, 4);
  const rate = funding ? Number(funding.rate) : 0;
  if (rate > 0.0001 && history.length > 0) {
    await rt.order.create({
      clientOrderId: "fund-" + bar.time,
      symbol: bar.symbol,
      side: "buy",
      type: "market",
      amount: "0.01",
    });
  }
  rt.setUi({
    cards: [{ kind: "metric", id: "f", label: "funding", value: String(rate) }],
    buttons: [],
  });
}
이 챕터는 로그인 후 볼 수 있습니다

무료 계정을 만들면 예제 코드와 단계별 설명을 포함한 전체 챕터를 읽을 수 있습니다.

로그인하고 계속 보기