Thursday, July 16, 2026

Тикеры и биржи: как правильно работать с ними в finlight API

Kevin Bartsch

Тикеры и биржи: как правильно работать с ними в finlight API

Фильтрация новостей по тикеру звучит просто, пока вы не сталкиваетесь с реальностью: один и тот же тикер на разных биржах может означать разные компании, а одна компания по всему миру может торговаться под несколькими тикерами. Ошибётесь — и ваша лента «Apple» незаметно наполнится не теми материалами.

finlight решает это, распознавая каждую упомянутую компанию до реальных, однозначных идентификаторов. Это руководство показывает, как фильтровать по тикеру и как читать эти идентификаторы, чтобы всегда попадать в нужную компанию.

Фильтрация по тикеру

Самый быстрый способ — структурированный фильтр tickers:

curl -X POST https://api.finlight.me/v2/articles \
  -H "X-API-KEY: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "tickers": ["AAPL", "NVDA"],
    "includeEntities": true,
    "pageSize": 20
  }'

Обратите внимание на includeEntities: true. Это говорит finlight вернуть для каждой статьи распознанные данные о компании — именно они позволяют убедиться, что вы попали в нужную компанию.

Чтение распознанных сущностей

С включённым includeEntities каждая статья несёт массив companies. Одна компания выглядит так:

{
  "companyId": 320,
  "name": "Apple Inc.",
  "ticker": "AAPL",
  "confidence": "0.98",
  "isin": "US0378331005",
  "openfigi": "BBG000B9XRY4",
  "sector": "Technology",
  "industry": "Consumer Electronics",
  "primaryListing": {
    "ticker": "AAPL",
    "exchangeCode": "NASDAQ",
    "exchangeCountry": "US"
  },
  "otherListings": [
    { "ticker": "APC", "exchangeCode": "XETRA", "exchangeCountry": "DE" }
  ]
}

Несколько полей делают основную работу:

  • primaryListing — основной листинг компании, с её exchangeCode и exchangeCountry.
  • otherListings содержит все вторичные листинги. Именно так вы видите, что Apple торгуется ещё и как APC на бирже XETRA в Германии.
  • isin и openfigi — глобально уникальные идентификаторы. В отличие от голого тикера, они указывают ровно на одну ценную бумагу, что делает их идеальными для сопоставления с вашими собственными данными.
  • confidence говорит, насколько finlight уверен, что статья действительно об этой компании.

Снятие неоднозначности с точностью

Когда обычный тикер неоднозначен, сузьте его с помощью языка запросов. Фильтровать можно по бирже или по уникальному идентификатору:

ticker:AAPL AND exchange:NASDAQ
isin:US0378331005

Фильтрация по isin или openfigi полностью устраняет неоднозначность, потому что каждый из них распознаётся в единственную ценную бумагу независимо от того, под сколькими тикерами торгуется компания.

Практический шаблон

Для работы с портфелем или списком наблюдения сопоставляйте по тому идентификатору, которому доверяете больше всего:

  1. Если у вас есть только тикеры, передайте tickers и включите includeEntities, затем убедитесь, что primaryListing соответствует ожидаемой бирже.
  2. Если у вас есть ISIN или идентификаторы OpenFIGI, фильтруйте с isin: / openfigi: в запросе для точного совпадения.
  3. Храните companyId от finlight рядом со своими записями, чтобы будущие поиски были однозначными.

Что дальше

Получите бесплатный API-ключ →