Почему одна и та же свеча MT5 может выглядеть по-разному на разных брокерских счетах

Почему свечи MT5, значения SMA, сигналы индикаторов и поведение советников (EA) могут отличаться между брокерскими счетами, даже если название символа выглядит одинаково.

Почему свечи MT5 могут отличаться

Свеча — это не всегда универсальные рыночные данные

Когда люди впервые начинают создавать торговых ботов или индикаторы в MetaTrader 5, легко предположить, что свеча — это универсальный элемент рыночных данных.

Например, вы можете думать:

«Свеча H1 в 20:00 6 мая 2026 года должна быть одинаковой везде».

Но на практике это не всегда так.

У вас могут быть два терминала MT5, запущенные в разных странах, и оба показывают одинаковые свечи. Затем вы открываете ещё один счёт у, казалось бы, того же брокера и с тем же символом — и вдруг открытие, закрытие свечи, значения SMA или сигналы индикаторов немного отличаются.

Эта статья объясняет, почему так происходит.

Заблуждение: MT5 получает готовые свечи

Живые графики строятся из тиков и котировок

Распространённое предположение заключается в том, что MetaTrader 5 получает данные свечей примерно так:

Брокер отправляет:

Свеча H1 в 20:00
Open = 3300.20
High = 3312.50
Low = 3298.10
Close = 3306.80

Так живые графики обычно не работают.

На живом графике MT5 получает от брокера поток обновлений цены. Эти обновления обычно называют тиками или котировками.

Затем терминал использует входящие цены, чтобы построить текущую свечу.

То есть вместо получения готовой свечи H1 MT5 получает живые обновления цен примерно так:

20:00:01 price = 3300.20
20:00:08 price = 3301.10
20:01:15 price = 3302.70
20:02:03 price = 3299.80
...
20:59:47 price = 3306.80

После чего MT5 строит свечу из этих цен.

Как формируется живая свеча

Метка времени свечи обозначает начало периода

Допустим, мы смотрим свечу H1 с меткой времени:

2026.05.06 20:00

Это не значит, что свеча «произошла» только ровно в 20:00.

Это означает, что свеча охватывает период, который начинается в 20:00 и заканчивается перед началом следующей свечи H1.

Проще говоря:

свеча 20:00 = цены с 20:00:00 и до непосредственно перед 21:00:00

Свеча строится так:

Open = первая цена, полученная в этом часе
High = максимальная цена, полученная в этом часе
Low = минимальная цена, полученная в этом часе
Close = последняя цена, полученная в этом часе

Пока свеча ещё формируется, значение close не является окончательным.

Close продолжает меняться каждый раз, когда приходит новая цена.

Пример формирующейся свечи

Close меняется, пока свеча не завершена

Например:

20:00:01
Open = 3300.20
High = 3300.20
Low = 3300.20
Close = 3300.20

20:10:00
Open = 3300.20
High = 3305.40
Low = 3299.80
Close = 3303.10

20:45:00
Open = 3300.20
High = 3312.50
Low = 3298.10
Close = 3309.70

20:59:47
Open = 3300.20
High = 3312.50
Low = 3298.10
Close = 3306.80

Как только начинается следующая свеча H1, предыдущая свеча считается закрытой.

На практике это часто происходит, когда приходит первый тик следующего часа.

Кто определяет окончательные значения свечи?

Лента брокера и серверное время определяют график

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

Ваш терминал MT5 строит график локально, но строит его на основе данных, предоставленных сервером брокера.

Поэтому итоговая свеча — это результат:

Лента цен брокера
+ Время сервера брокера
+ Спецификация символа
+ Настройки торговых сессий
+ Поток тиков/котировок, получаемый терминалом

Ваше физическое местоположение обычно не имеет значения.

Трейдер в Лондоне и трейдер в Южной Африке могут видеть абсолютно одинаковую свечу, если они подключены к одному и тому же серверу брокера, используют один и тот же тип счёта и один и тот же символ.

Но другой сервер брокера или другая юрисдикция счёта могут давать разные свечи.

Пример: тот же брокер, другой регион счёта

Окружение счёта важнее местоположения терминала

Предположим, у вас есть три терминала MT5:

Терминал A:
Местоположение: Лондон
Брокерский счёт: Deriv South Africa
Символ: XAUUSD

Терминал B:
Местоположение: Южная Африка
Брокерский счёт: Deriv South Africa
Символ: XAUUSD

Терминал C:
Местоположение: Лондон
Брокерский счёт: Deriv UAE
Символ: XAUUSD

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

У них могут быть:

  • Один и тот же сервер
  • Одна и та же лента символа
  • Один и тот же часовой пояс сервера
  • Одна и та же спецификация символа
  • Одинаковое формирование свечей

Но терминал C может отличаться, потому что счёт UAE может подключаться к другому серверу Deriv или к другой торговой среде.

У этого счёта может быть:

  • Другое серверное время
  • Другая лента ликвидности
  • Другая конфигурация символа
  • Другая модель спреда
  • Другие торговые сессии
  • Другая фильтрация котировок
  • Другие исторические данные

Даже если название символа выглядит одинаково, фактическая среда данных может быть не идентичной.

Проблема меток времени

Свеча 20:00 — это время сервера брокера

Один из главных источников путаницы — время свечей.

Когда MT5 показывает свечу H1 в:

20:00

это время основано на времени сервера брокера, а не обязательно на локальном времени вашего компьютера.

Поэтому два счёта могут оба показывать свечу с подписью:

20:00

но эти свечи могут соответствовать разным реальным периодам UTC.

Например:

Сервер брокера A:
20:00 по серверу = 18:00 UTC

Сервер брокера B:
20:00 по серверу = 16:00 UTC

Оба графика отображают свечу 20:00, но свечи не охватывают один и тот же реальный час.

Это означает, что open, high, low, close и все индикаторы могут отличаться.

Почему более высокие таймфреймы затрагиваются сильнее

Серверное время формирует свечи H1, H4, D1 и W1

Это становится особенно важным для более высоких таймфреймов, таких как:

  • H1
  • H4
  • D1
  • W1

Чем выше таймфрейм, тем важнее становится серверное время.

Свеча D1 у одного брокера может открываться и закрываться в другое реальное время, чем свеча D1 у другого брокера.

Это может влиять на:

  • Дневные максимумы и минимумы
  • Закрытия дневных свечей
  • Скользящие средние
  • ATR
  • Уровни пробоя
  • Зоны поддержки и сопротивления
  • Результаты бэктестов
  • Входы и выходы EA

Почему SMA может отличаться

Индикаторы рассчитываются на основе брокерских данных свечей

SMA не рассчитывается на основе какого-то универсального источника рыночных данных.

Она рассчитывается по закрытиям свечей, доступным на конкретном графике.

Например, SMA с периодом 10 на H1 рассчитывается по последним 10 закрытиям свечей H1.

Упрощённо:

SMA = среднее значение последних 10 закрытий

Поэтому если два брокерских счёта имеют слегка разные закрытия H1, у них также будут слегка разные значения SMA.

Это означает, что может происходить следующее:

Счёт A:
Цена закрывается ниже SMA
EA запускает сценарий продажи

Счёт B:
Цена закрывается немного выше SMA
EA не срабатывает

Обе платформы могут работать корректно. Просто они используют разные базовые данные свечей.

Стратегии, на которые влияют различия свечей

Точные закрытия могут менять точные сигналы

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

  • Стратегии пересечения SMA
  • Стратегии пробоя
  • Паттерны свечей отбой/отвержение цены
  • Логика swing high / swing low
  • Стратегии дневного диапазона
  • Box-системы на основе ATR

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

Живой график vs исторический график

Текущие свечи меняются тик за тиком

На живом графике MT5 строит текущую свечу из входящих живых тиков.

Для текущей свечи в MQL5:

iClose(_Symbol, PERIOD_H1, 0)

возвращает последнее живое значение close текущей формирующейся свечи H1.

Это значение может меняться тик за тиком.

Предыдущая свеча доступна через:

iClose(_Symbol, PERIOD_H1, 1)

Это последняя закрытая свеча H1.

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

Оно сформировалось внутри среды этого брокера/счёта/сервера.

Почему это важно для советников (Expert Advisors)

Один и тот же код может вести себя по-разному на разных данных

Если вы создаёте EA, такое поведение имеет большое значение.

Стратегия, которая работает на одном сервере брокера, может вести себя немного иначе на другом сервере брокера — даже при том же коде и тех же входных параметрах.

Например:

Брокер A:
Закрытие H1 пересекает SMA вниз
EA активирует breakout box

Брокер B:
Закрытие H1 не пересекает SMA вниз
EA ничего не делает

Или:

Брокер A:
Дневной ATR = 24.5

Брокер B:
Дневной ATR = 26.1

Эта небольшая разница может изменить:

  • Размер box
  • Stop loss
  • Take profit
  • Тайминг входа
  • Расчёт риска
  • Частоту сделок
  • Результаты бэктестов
  • Результаты на реальном счёте

Это не означает, что MT5 «сломана».

Это означает, что ваш EA чувствителен к данным.

Формирование свечей у брокера — часть торговой среды.

Как правильно сравнить два счёта

Выведите фактические данные свечей

Если вы хотите сравнить два счёта MT5, не смотрите только на график визуально.

Выведите фактические данные.

Например, в MQL5 вы можете сравнить:

void OnStart()
{
MqlRates rates[];
ArraySetAsSeries(rates, true);

int copied = CopyRates(_Symbol, PERIOD_H1, 0, 20, rates);

Print("Account server: ", AccountInfoString(ACCOUNT_SERVER));
Print("Symbol: ", _Symbol);
Print("TimeTradeServer: ", TimeTradeServer());

for(int i = 0; i < copied; i++)
{
Print(
"shift=", i,
" time=", TimeToString(rates[i].time, TIME_DATE | TIME_MINUTES),
" open=", DoubleToString(rates[i].open, _Digits),
" high=", DoubleToString(rates[i].high, _Digits),
" low=", DoubleToString(rates[i].low, _Digits),
" close=", DoubleToString(rates[i].close, _Digits),
" tick_volume=", rates[i].tick_volume
);
}
}

Запустите это на обоих счетах и сравните:

  • Название сервера
  • Название символа
  • Временную метку бара
  • Open
  • High
  • Low
  • Close
  • Тиковый объём

Сравните также свойства символа

Лента может быть не единственным отличием

Также следует сравнить свойства символа:

void OnStart()
{
Print("Server: ", AccountInfoString(ACCOUNT_SERVER));
Print("Symbol: ", _Symbol);

Print("Digits: ", SymbolInfoInteger(_Symbol, SYMBOL_DIGITS));
Print("Point: ", SymbolInfoDouble(_Symbol, SYMBOL_POINT));
Print("Tick size: ", SymbolInfoDouble(_Symbol, SYMBOL_TRADE_TICK_SIZE));
Print("Contract size: ", SymbolInfoDouble(_Symbol, SYMBOL_TRADE_CONTRACT_SIZE));
Print("Currency profit: ", SymbolInfoString(_Symbol, SYMBOL_CURRENCY_PROFIT));
}

Иногда разница заключается не только в ленте свечей.

Сам символ может иметь разные контрактные настройки.

Практический вывод

Свеча MT5 принадлежит конкретной брокерской среде

Свеча MT5 — это не просто «рыночная свеча».

Это:

Свеча для конкретного символа,
на конкретном сервере брокера,
с использованием ленты цен этого брокера,
с использованием серверного времени этого брокера.

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

Но если другой счёт подключается к другой брокерской сущности, серверу или ленте символа, свечи могут отличаться.

Это объясняет, почему:

Счёт Deriv South Africa в Лондоне
=
Счёт Deriv South Africa в Южной Африке

но:

Счёт Deriv UAE в Лондоне
!=
Счёт Deriv South Africa в Лондоне

Местоположение терминала — не главный фактор.

Главные факторы — сервер брокера и лента.

Итоговый вывод

Ваша стратегия торгует «версией рынка» вашего брокера

Для ручных трейдеров это объясняет, почему графики могут немного отличаться между счетами.

Для разработчиков EA это ещё важнее: различия свечей могут менять сигналы, бэктесты, входы, выходы и прибыльность.

Создавая торгового бота, всегда помните:

Ваша стратегия торгует не только рынком.

Она торгует версией рынка вашего брокера.

MetaTrader 5

Узнайте больше о MT5 и о том, как инструменты Lanami работают на платформе.

Что важно учитывать при выборе брокера

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

Советник Lanami (Expert Advisor)

Посмотрите автоматизированную систему торговли на пробой, созданную для дисциплинированного исполнения в MT5.