TypeScript 국채 금리 데이터를 SDK로 가져오기

TypeScript 국채 금리 데이터를 SDK로 가져와 현재 수익률 곡선과 일별 이력을 확인합니다. narwhalapi 설치, 서버에서 키 관리, 만기 비교 방법을 다룹니다.

설치 및 인증

Node 22 이상을 사용하세요. API 키는 NARWHAL_API_KEY 환경 변수에 설정하세요. SDK는 서버 측에서만 쓰고 키를 브라우저 코드에 넣지 마세요. 설정은 빠른 시작을 따르세요.

설치 및 클라이언트 생성
// npm install narwhalapi
import { Narwhal } from "narwhalapi";

// Reads NARWHAL_API_KEY from the server environment.
const nw = new Narwhal();

최신 수익률 곡선 가져오기

미국 2년, 10년 만기 수익률을 요청합니다. 응답에는 date, curve_type, yields가 포함되며, 각 항목에는 maturity와 yield_percent가 있습니다. 십진수 값은 "4.25"처럼 정확한 문자열로 전달됩니다. 수익률 곡선 레퍼런스를 참고하세요.

미국 2년, 10년 최신 수익률
const curve = await nw.economics.yieldCurve("USA", { maturity: ["2y", "10y"] }); console.log(curve.date, curve.curve_type); for (const point of curve.yields) { console.log(point.maturity, point.yield_percent); }

일별 이력 읽기

`start`와 `end`를 원하는 날짜 범위로 설정하세요. 이터레이터는 페이지당 최대 1,000일씩 일별 이력을 필요할 때 가져옵니다. 이 예제는 독일 10년 수익률을 요청합니다.

독일 10년 수익률 일별 이력
for await (const day of nw.economics.yieldCurveHistoryIter("DEU", { maturity: ["10y"], start: "2026-01-01", end: "2026-03-31", })) { console.log(day.date, day.yields[0]?.yield_percent); }

역전된 수익률 곡선 확인

같은 곡선에서 10년 수익률에서 2년 수익률을 빼세요. 스프레드가 음수이면 역전입니다. 두 만기가 모두 있을 때만 계산하세요. 이 예제는 계산을 위해 십진 문자열을 숫자로 변환합니다.

10년물과 2년물 금리차
const yieldOf = (maturity: string) => curve.yields.find((point) => point.maturity === maturity)?.yield_percent; const two = yieldOf("2y"); const ten = yieldOf("10y"); if (two && ten) { const spread = Number(ten) - Number(two); console.log(spread.toFixed(2), spread < 0 ? "inverted" : "not inverted"); }

자주 묻는 질문

어떤 국가 코드를 사용할 수 있나요?

USA, GBR, DEU, JPN, CAN을 사용하세요. 국가마다 고유한 출처 곡선 유형을 유지하므로 제공되는 만기와 측정 방식이 다릅니다.

십진수 값은 문자열인가요, 숫자인가요?

십진수 값은 "4.25"처럼 정확한 문자열로 전달됩니다. 십진수 입력값도 문자열이어야 하며, 숫자는 입력값으로 허용되지 않습니다.

국가 간에 같은 만기끼리 비교할 수 있나요?

먼저 각 국가 출처의 수익률 곡선 유형과 측정 방식을 확인하세요. 만기 표기가 같다고 해서 곡선을 서로 바꿔 쓸 수 있는 것은 아닙니다.

게시일: . 최종 검토일: .

정확한 레퍼런스로 이동