설치 및 인증
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"처럼 정확한 문자열로 전달됩니다. 수익률 곡선 레퍼런스를 참고하세요.
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년 수익률을 요청합니다.
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년 수익률을 빼세요. 스프레드가 음수이면 역전입니다. 두 만기가 모두 있을 때만 계산하세요. 이 예제는 계산을 위해 십진 문자열을 숫자로 변환합니다.
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"처럼 정확한 문자열로 전달됩니다. 십진수 입력값도 문자열이어야 하며, 숫자는 입력값으로 허용되지 않습니다.
국가 간에 같은 만기끼리 비교할 수 있나요?
먼저 각 국가 출처의 수익률 곡선 유형과 측정 방식을 확인하세요. 만기 표기가 같다고 해서 곡선을 서로 바꿔 쓸 수 있는 것은 아닙니다.
게시일: . 최종 검토일: .