Назад к блогу

Что такое среднерыночный обменный курс? Bid, Ask и спред простым языком

V
Vlado Grigirov
November 08, 2026
Currency API Exchange Rates Mid-Market Rate Bid Ask Spread Educational Finexly

Вы смотрите курс в Google, а затем видите другую цифру в своём банке, у эмитента карты и в платёжном приложении. Цифра в Google — это, как правило, среднерыночный обменный курс (mid-market rate), а разница между ним и тем, что с вас реально берут, и есть то место, где прячется основная часть стоимости конвертации валют. Если вы создаёте продукт, который работает с деньгами в нескольких валютах, понимать эту разницу необходимо.

В этом руководстве объясняется, что такое среднерыночный курс, как он связан с bid, ask и спредом, почему обычные клиенты редко его получают и как работать с ним в коде, используя эндпоинты из документации Finexly API.

Что такое среднерыночный обменный курс?

Среднерыночный обменный курс (также mid rate, межбанковский курс или spot mid) — это середина между ценой, по которой покупатели готовы купить валюту, и ценой, по которой продавцы готовы её продать. Это самое близкое к «справедливой» цене валютной пары в данный момент значение — без комиссий и наценок.

Каждая валютная пара котируется двумя ценами:

  • Bid (цена покупки): цена, по которой дилер покупает у вас базовую валюту.
  • Ask (цена продажи, или offer): цена, по которой дилер продаёт вам базовую валюту.

Ask всегда выше bid. Среднерыночный курс находится ровно посередине между ними.

mid = (bid + ask) / 2
spread = ask - bid

Например, если EUR/USD котируется с bid 1,0840 и ask 1,0842, среднерыночный курс равен 1,0841, а спред — 0,0002, то есть 2 пипса. Эти числа приведены исключительно для иллюстрации. Если пипсы вам незнакомы, прочитайте наше руководство о том, что такое пипс на форекс.

Bid, ask и спред: три числа за каждой котировкой

Спред — это цена мгновенной сделки. Дилер, готовый и покупать, и продавать в любой момент, принимает на себя риск запасов, поэтому берёт небольшую разницу между ценой покупки и ценой продажи. На глубоком межбанковском рынке спреды по основным парам могут составлять доли пипса. По экзотическим парам и на тонких рынках они заметно шире.

Размер спреда обычно определяют три фактора:

  1. Ликвидность: активно торгуемые пары, такие как EUR/USD или USD/JPY, имеют узкие спреды. У экзотических пар они широкие. См. основные, второстепенные и экзотические валютные пары.
  2. Волатильность: вокруг решений центральных банков или выхода важных данных дилеры расширяют спреды, чтобы защитить себя.
  3. Размер сделки и время: вне основных торговых сессий и в выходные спреды, как правило, шире.

Среднерыночный курс и курс, который вы получаете на самом деле

Теперь неудобная часть. Среднерыночный курс — это ориентир, а не цена, по которой обычно можно совершить сделку. Розничные клиенты редко его получают, потому что провайдерам нужно где-то зарабатывать. Типичный розничный курс строится так:

customer_rate = mid_rate × (1 - markup)     # when the customer sells the base currency
customer_rate = mid_rate × (1 + markup)     # when the customer buys the base currency

Наценка добавляется поверх любой явной комиссии. Именно поэтому провайдер, рекламирующий «без комиссий», всё равно может быть дорогим: стоимость заложена в обменный курс. Честный способ сравнивать провайдеров — измерять полную стоимость относительно среднерыночного курса:

cost_pct = (mid_rate - customer_rate) / mid_rate × 100

Учтите, что некоторые провайдеры действительно конвертируют по среднерыночному курсу и взимают отдельную прозрачную комиссию. Обе модели могут быть честными; важно, чтобы вы видели итоговую сумму и могли её сравнить. Та же логика применима к картам за рубежом, где динамическая конвертация валюты (DCC) часто добавляет большую скрытую наценку.

Откуда берётся среднерыночный курс?

Единого официального среднерыночного курса не существует. Валютный рынок — децентрализованный внебиржевой рынок. Банки, дилеры и торговые площадки публикуют собственные котировки, а поставщики данных их агрегируют. «Среднерыночный курс», который вы видите онлайн, — обычно смесь нескольких источников ликвидности, непрерывно обновляемая в торговые часы, поэтому два провайдера могут показывать немного разные значения в один и тот же момент.

Существуют и бенчмарки на фиксированные моменты дня, например лондонский фиксинг в 16:00, который используется для оценки портфелей. Подробнее о том, как поставщики данных формируют свои цифры, читайте в материале откуда API курсов валют берут данные.

Почему разработчикам важно знать среднерыночный курс

Если вы создаёте продукт, работающий с несколькими валютами, среднерыночный курс — ваш референсный курс. Типичные применения:

  • Отображение цен: показывать клиентам ориентировочную сконвертированную цену на странице товара.
  • Прозрачные комиссии: показывать пользователям mid rate рядом с вашим курсом, чтобы наценка была видна.
  • Бухгалтерия и отчётность: переоценивать остатки и фиксировать прибыли и убытки относительно единого ориентира.
  • Контроль маржи: считать, сколько наценки вы реально зарабатываете на каждой конвертации.
  • Аудит провайдеров: замечать, когда курс платёжного партнёра отклоняется от рынка.

Практическое правило: храните mid rate и применённый курс раздельно. Если сохранять только курс, по которому взяли деньги, позже нельзя будет доказать, какой была ваша наценка.

Получение среднерыночного курса через Finexly

Получите актуальный курс одним запросом:

curl "https://api.finexly.com/v1/latest?base=EUR&symbols=USD&apikey=YOUR_API_KEY"

Python: расчёт наценки и клиентского курса

import requests

API_KEY = "YOUR_API_KEY"

def get_mid_rate(base: str, quote: str) -> float:
    r = requests.get(
        "https://api.finexly.com/v1/latest",
        params={"base": base, "symbols": quote, "apikey": API_KEY},
        timeout=10,
    )
    r.raise_for_status()
    return r.json()["rates"][quote]

def customer_quote(amount: float, base: str, quote: str, markup_pct: float):
    mid = get_mid_rate(base, quote)
    applied = mid * (1 - markup_pct / 100)
    return {
        "mid_rate": mid,
        "applied_rate": applied,
        "customer_receives": round(amount * applied, 2),
        "markup_cost": round(amount * (mid - applied), 2),
    }

print(customer_quote(1000, "EUR", "USD", markup_pct=1.5))

Считайте курс, возвращаемый API, вашим референсным mid rate и применяйте поверх него собственную явную наценку. Контролируйте количество знаков после запятой, следуя нашему руководству по округлению валют.

JavaScript: показ сравнения курсов пользователям

const API_KEY = "YOUR_API_KEY";

async function compareRates(base, quote, providerRate) {
  const res = await fetch(
    `https://api.finexly.com/v1/latest?base=${base}&symbols=${quote}&apikey=${API_KEY}`
  );
  const { rates } = await res.json();
  const mid = rates[quote];
  const hiddenCostPct = ((mid - providerRate) / mid) * 100;
  return { mid, providerRate, hiddenCostPct: hiddenCostPct.toFixed(2) };
}

compareRates("EUR", "USD", 1.0680).then(console.log);

Как сравнивать провайдеров со среднерыночным курсом

Простой повторяемый метод подходит для любой конвертации:

  1. Получите среднерыночный курс пары в тот же момент, что и котировка провайдера.
  2. Рассчитайте сумму, которую вы получили бы по mid rate.
  3. Рассчитайте сумму, которую провайдер реально выдаёт после комиссий и наценки.
  4. Разделите разницу на сумму по mid rate, чтобы получить процент полной стоимости.

Повторите это в разное время, потому что спреды расширяются и сужаются. Исторические данные помогают составить справедливую картину за недели, а не по одному снимку; см. наше руководство по API исторических курсов.

Распространённые ошибки

  • Считать mid rate торгуемой ценой. Это ориентир. Реальные сделки проходят по bid или ask.
  • Путать обратные курсы. Mid для EUR/USD не равен в точности обратной величине mid для USD/EUR, как только в вашем ценообразовании участвуют спреды. Выберите одно направление и придерживайтесь его.
  • Кэшировать слишком долго. Курсы постоянно меняются. Кэшируйте на секунды или минуты в зависимости от задачи, а не на часы.
  • Прятать наценку в курсе. Регуляторы во многих странах всё чаще ожидают чёткого раскрытия стоимости. Показ mid rate — сигнал доверия.
  • Округлять слишком рано. Округляйте только итоговую сумму, а не промежуточные курсы.

Часто задаваемые вопросы

Что такое среднерыночный обменный курс простыми словами?

Это середина между ценой покупки и ценой продажи валютной пары на мировом рынке. Он не включает комиссий и наценок, поэтому служит полезным ориентиром честности.

Среднерыночный курс — это то же самое, что межбанковский курс?

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

Почему банки не дают мне среднерыночный курс?

Банки и платёжные провайдеры зарабатывают на спреде и наценке при каждой конвертации. Некоторые провайдеры используют mid rate и берут явную комиссию — поэтому всегда сравнивайте полную стоимость.

Как узнать реальный среднерыночный курс валютной пары?

Используйте надёжный источник в реальном времени, например API курсов валют, и сравните его с курсом, который вам предлагают. Процентная разница — ваша фактическая стоимость.

Можно ли получить среднерыночный курс через API?

Да. API курсов валют возвращает актуальные референсные курсы, которые можно использовать как mid rate, добавляя собственную наценку или сравнивая с котировками сторонних провайдеров, как показано в коде выше.

Создайте прозрачное ценообразование в валютах

Готовы интегрировать курсы валют в реальном времени в свой проект? Получите бесплатный API-ключ Finexly — без кредитной карты. Начните с 1000 бесплатных запросов в месяц и переходите на тарифные планы по мере роста. Также вы можете проверить любой курс в конвертере валют до начала разработки или сравнить валютные API, чтобы выбрать подходящий.

Vlado Grigirov

Senior Currency Markets Analyst & Financial Strategist

Vlado Grigirov is a senior currency markets analyst and financial strategist with over 14 years of experience in foreign exchange markets, cross-border finance, and currency risk management. He has wo...

View full profile →