Search Russian bonds on the Moscow Exchange by name, ticker, issuer or ISIN and read the full bond card. Data comes from the public MOEX ISS API — no API key, no account, no setup.
The interface is English by default. Russian can be switched on in the extension preferences, since the market and its terminology are Russian. Issuer names and issue types always come from MOEX exactly as the exchange publishes them.
сегежа, 26238, РЖД 1Р or RU000A10CB66 — the list narrows as you
type. Only issues currently traded are shown.⌘⇧F adds a bond; with an empty search field the list shows your favorites
with live quotes.⌘R refresh, ⌘⇧C copy ISIN, copy the card as plain text, open the issue on
MOEX or Smart-Lab.npm install
npm run build # installs the extension into Raycast
npm run dev # same plus hot reload
npm test # tests for the ISS client
npx eslint src test lints the source.
A few behaviours of the API are easy to get wrong and silently produce believable but incorrect numbers. They are handled explicitly:
RU000A105RH2 is quoted on
TQCB (settled in roubles, where the trades happen) and on TQOD (settled in currency,
where LAST is empty). Taking the first row of the response shows the wrong price. Board
selection lives in a single place: selectMarketRow.YIELD, DURATION and COUPONVALUE come back as zeros overnight,
on weekends and for floaters whose next rate has not been announced. Printing 0 % would be
a lie, so those render as an em dash.LAST → MARKETPRICE → PREVPRICE → closing price from
history, and the card always states which one is on screen.FACEUNIT = USD, some
issues use CNY.RU000A108777 is already down to ₽800 from ₽1000 at issue, and
the percentage price refers to the current face value.is_traded.| File | Purpose |
|---|---|
src/moex.ts | ISS client: search, batched quotes, bond card, coupons, history fallback |
src/card.ts | Card text builders (markdown and clipboard) — pure functions, covered by tests |
src/format.ts | Numbers, dates, currencies and plurals, per language |
src/strings.ts | Every user-facing string in English and Russian |
src/preferences.ts | Reads the language preference |
src/search-bond.tsx | Live search list |
src/bond-detail.tsx | Bond card |
src/favorites.ts | Favorites in LocalStorage |
scripts/make-icon.py | Icon generator, no dependencies |