Skip to content
Technology9 min readPublished

How Real-Time Market Data Works: Ticks, Quotes, Candles and Streaming

How live market data reaches your chart: ticks and quotes, how candles are built, polling versus WebSocket streaming, what latency is and why charts can differ.

RX
RumiEX Editorial Team
Educational content · not financial advice

A live price chart looks simple: a line or a row of candles that updates while you watch. Behind it is a chain of systems that produce prices, transmit them, aggregate them into candles and draw them on your screen — usually within a fraction of a second. Understanding that chain helps you interpret what you see, recognise when something is wrong, and understand why the price you click is not always the price you get.

This guide explains the building blocks of market data — ticks, quotes and spreads — how candles are constructed, how prices are delivered to your device, what latency is, and why charts on different platforms can differ.

The basic unit: the tick

A tick is a single price update. Depending on the market, it can be:

  • A trade: a buyer and seller agreed on a price and quantity. On exchanges, every trade is reported.
  • A quote change: the best price someone is willing to buy or sell at has changed, even though no trade took place.

Busy markets can generate many ticks per second; quiet ones may go seconds or minutes without one. Everything else you see on a chart is built from this raw stream.

Quotes, bids, asks and spreads

At any moment, a market has two key prices:

  • Bid: the highest price a buyer is currently willing to pay.
  • Ask (or offer): the lowest price a seller is currently willing to accept.

The difference is the spread. If EUR/USD is quoted at 1.08500 bid and 1.08510 ask, the spread is 0.00010 — one pip. If you bought at the ask and immediately sold at the bid, you would lose the spread. It is a cost built into every round-trip trade.

Spreads change. They are usually tight in active, liquid markets and widen when liquidity is thin — outside main trading hours, around major news, or during sudden moves.

Which price does a chart show?

Charts usually plot one of: the bid, the ask, the midpoint between them, or the last traded price. Platforms differ in which they use, which is one reason the same market can look slightly different in two places.

Order books and market depth

Behind the best bid and best ask sits the order book: a list of all the resting buy and sell orders at each price level. The best bid and ask are simply the top of each side.

Depth tells you how much could be traded before price moves. Suppose the best ask for a stock is 100.00 with 200 shares available, and the next levels are 100.05 (500 shares) and 100.10 (1,000 shares). A market order to buy 300 shares would take all 200 at 100.00 and 100 at 100.05 — an average price slightly above the best ask. A market order, as the SEC's Investor.gov glossary explains, executes immediately at the best available prices, which is exactly why large orders in thin books get worse average prices.

A limit order, by contrast, adds to the book at your chosen price and waits. It controls price but not whether — or when — it is filled.

Not every platform shows the full book. Many retail charting platforms display only the current price and spread, especially for over-the-counter instruments where there is no central book to show.

How candles are built from ticks

A candlestick summarises all the ticks within one period of your chosen timeframe:

  • Open: the first price of the period.
  • High: the highest price reached.
  • Low: the lowest price reached.
  • Close: the last price of the period (or, while the period is still running, the latest price).

While a period is in progress, its candle is forming: the close moves with every update, and the high and low extend whenever price makes a new extreme. When the period ends, the candle is settled and a new one begins.

Longer timeframes are built the same way over longer periods. A 1-hour candle could be built from every tick in the hour, or by combining sixty 1-minute candles — the open of the first, the highest high, the lowest low and the close of the last.

This is why traders are warned not to act on an unfinished candle: until it settles, its final shape is unknown. Our guide to reading candlestick charts covers this in more detail.

Volume

Volume is the amount traded in each period. On centralised exchanges it is the total of reported trades. In decentralised markets, and for over-the-counter (OTC) instruments, volume reflects activity on the venue providing the data rather than the whole market.

How prices reach your screen

There are two broad ways for a trading app to get new prices.

Polling

The app asks the server for the latest price at intervals — say every few seconds. It is simple, but it has two drawbacks: updates are delayed by up to one polling interval, and most requests return nothing new, wasting effort on both sides.

Streaming (WebSockets)

The app opens a persistent connection and the server pushes each update as it happens. The most common technology in browsers is the WebSocket, standardised by the Internet Engineering Task Force as RFC 6455 in 2011. A WebSocket keeps one two-way connection open, so the server can send a price the instant it exists, without waiting to be asked.

PollingStreaming (WebSocket)
DelayUp to one polling intervalAs soon as the update is sent
Wasted requestsManyFew
Server can initiateNoYes
Typical useInfrequently changing dataLive prices and charts

Message formats

Price updates have to be encoded for transmission. Text formats such as JSON are easy to read but relatively bulky. Binary formats such as Protocol Buffers are compact and fast to decode. On RumiEX, chart updates are streamed over a WebSocket as compact binary messages.

Latency: why "real time" is never instant

Latency is the delay between something happening and you seeing it (or between you acting and your order arriving). It comes from several sources:

  • Network distance. Signals in optical fibre travel at roughly two-thirds of the speed of light — about 200,000 km per second. A server 10,000 km away cannot be reached in less than about 50 milliseconds one way, before any other delays, and real routes are longer than straight lines.
  • Network hops and congestion. Each router and congested link adds delay.
  • Processing. Servers need time to produce, aggregate and send updates.
  • Your device. Your browser needs to decode the message and redraw the chart; a busy or low-powered device adds delay.
  • Connection quality. Mobile and Wi-Fi connections can introduce variable delays and occasional drops.

For most traders working on timeframes of minutes or longer, latency of a few hundred milliseconds is unimportant. It becomes important around fast moves and news, where prices can change materially within a second — covered in latency and slippage explained.

Stale data: the silent risk

A frozen price feed can be more dangerous than a slow one, because it can look perfectly normal. If updates stop arriving but the chart keeps displaying the last price, you may make decisions on a price that no longer exists.

Signs of a stale feed:

  • The price has not moved for an unusually long time in a normally active market.
  • The forming candle stops growing.
  • A platform's connection indicator shows a problem.

Good platforms tell you when data stops. On RumiEX, the chart shows a warning when prices haven't updated recently, and the app reconnects automatically if its live connection goes quiet.

Timestamps and clocks

Every tick carries a timestamp, and every candle boundary depends on a clock. That sounds trivial, but it matters:

  • Candle boundaries depend on the server's clock. A daily candle might close at midnight UTC on one platform and at 5 p.m. New York time on another.
  • Your device's clock can drift. Countdown timers such as a "candle closes in" display are most accurate when they are calculated from the server's time rather than solely from your device's.
  • Ordering matters for building candles correctly: an update that arrives late must not overwrite a newer price. Well-built systems compare timestamps and discard out-of-date updates.

When comparing your trade history with a chart, always check which timezone each one uses.

Where prices come from

Exchange-traded markets

For stocks and futures traded on exchanges, prices come from the exchange's trades and order book, distributed through data feeds.

Over-the-counter markets

In spot currency markets there is no single central exchange. Prices are quoted by banks, market makers and trading venues, so there is no one "official" price — just quotes that are usually very close to each other.

Platform-quoted (OTC) instruments

Some platforms quote instruments using their own pricing engine rather than relaying an external exchange's price. On RumiEX, instruments marked OTC are priced this way and are available around the clock. Their prices are not the same as any particular exchange's prices, which is why they are labelled clearly. The markets page shows which instruments are available.

Why charts on different platforms differ

Small differences between charts of the "same" market are normal. Common causes:

  • Different price sources (different exchanges, liquidity providers or pricing engines).
  • Different price types (bid, ask, mid or last trade).
  • Different candle boundaries, especially the time at which the daily candle opens.
  • Different handling of thin periods, gaps and outliers.

If you compare charts, compare like with like — same instrument, same price type, same timezone.

A worked example

Imagine a 1-minute candle for gold that opens at 12:00:00. Over the next minute, ticks arrive at 2,350.10, 2,350.40, 2,349.80, 2,350.90 and finally 2,350.60 at 12:00:59. The candle is:

  • Open: 2,350.10
  • High: 2,350.90
  • Low: 2,349.80
  • Close: 2,350.60

While the minute was running, a trader watching the chart saw the candle's body and wicks change with each tick. At 12:01:00 it settled, and a new candle opened at the next price. Had the feed frozen at 12:00:30, the chart would have kept showing a 2,349.80-ish price until the problem was detected — which is why freshness indicators matter.

Key takeaways

  • A tick is a single price update; candles summarise all ticks within each period as open, high, low and close.
  • The bid-ask spread is a cost of every trade and widens when liquidity is thin.
  • Streaming over WebSockets delivers updates as they happen; polling adds delay and overhead.
  • Latency comes from distance, network hops, processing and your device; it matters most in fast markets.
  • Stale data is a hidden risk — use platforms that tell you when prices stop updating.

Next: latency and slippage explained, or see live streaming prices on the RumiEX charts.

Frequently asked questions

What is a tick in trading?

A tick is a single price update — a new trade or a change in the best quoted price. Charts are built by grouping ticks into periods: a 1-minute candle summarises every tick within that minute as an open, high, low and close.

What is the bid-ask spread?

The bid is the highest price buyers are currently offering; the ask (or offer) is the lowest price sellers will accept. The spread is the gap between them. Buying at the ask and immediately selling at the bid would lose the spread, so it is a cost of every round-trip trade.

Why does my chart look different on another platform?

Platforms can use different price sources, different timezones for daily candles, different rules for which price (bid, ask, mid or last trade) builds the candle, and in some cases their own pricing engines for OTC instruments. Small differences between charts are normal.

What is a WebSocket?

A WebSocket is a technology, standardised as RFC 6455 in 2011, that keeps a single two-way connection open between your browser and a server. The server can push new prices the moment they exist, instead of your browser repeatedly asking whether anything has changed.

How do I know if my price feed is stale?

Check when the price last changed. A good platform tells you when updates stop arriving. On RumiEX, the chart displays a warning if prices haven't updated recently, because a frozen price can look perfectly normal on screen.

Sources and further reading

Written and reviewed by the RumiEX Editorial Team. This article is for education only and is not financial, investment or tax advice. Read our editorial standards.

Put it into practice — risk-free

Try what you've learned on a free demo account with live prices and the full charting toolkit.