TickAtlas
Range & volatility Available Forex Gold Crypto

Price History Grid

Price History Heatmap Widget

A contribution-graph-style field of close-to-close movement, with a bar-interval selector. Each cell’s intensity is normalised from the displayed close series and labelled on hover.

Live preview SIMULATED

The real embed in preview mode — synthetic data, no API key, zero network calls. Live data starts once you add your key.

From
$14.99 /mo
Included
1 domain slot
Shows
Close-series movement grid · selectable interval · one symbol.
per month $14.99
Get it →

Base covers one domain; each extra slot adds half the base. Manage domains and your key from your dashboard.

What it shows

A contribution-graph-style field of close-to-close movement, with a bar-interval selector. Each cell’s intensity is normalised from the displayed close series and labelled on hover.

Who it's for

  • Market-analysis page with a contribution-graph-style movement read.
  • Broker landing page visual differentiator panel.
  • Docs example for the ohlc kind's multi-interval close series.
  • Trading-tools directory listing.

The data contract

This widget reads only public market data through our hosted gateway — no account data, no order book, no personal data.

ohlc kind: close series · multi-interval · one symbol

The gallery and this preview run in SIMULATED mode — synthetic shapes, no key, no network. Live data flows only after checkout, on your authorized domains.

Embed it

  1. Subscribe from your dashboard and add the domains you'll embed on.
  2. Copy your public wk_ key from the widget panel.
  3. Drop the snippet below into your page, swapping in your key and symbol.
Theme
embed snippet
<script src="https://tickatlas.com/widgets/embed.js?w=price-history-grid&k=wk_YOUR_KEY&symbol=BTCUSD"></script>

Default is light — the snippet stays clean. Pick Dark or Auto (Auto follows each visitor’s system theme) to append &theme= and preview it live.

Embed parameters

The querystring on the embed.js script tag above.

Parameter Type Required Description
w string Yes Widget slug — fixed to “price-history-grid” for this widget.
k string No Your public wk_ key. With it the widget goes live on your authorized domains; omit it for the SIMULATED preview (synthetic data, zero network). Default: preview mode.
symbol symbol No The symbol to display, uppercased. Must be within the widget’s allowed set. Allowed: BTCUSD, XAUUSD, EURUSD, GBPUSD. Default: BTCUSD.
mode enum No Force preview even with a key, e.g. for a staging page. Allowed: live, preview. Default: live when k is present, else preview.
theme enum No Colour theme. light (default) is today’s look; dark uses a WCAG-AA dark palette; auto follows each visitor’s system (prefers-color-scheme). Omit for light. Allowed: light, dark, auto. Default: light.

The wk_ key is public by design — it only works on the domains you authorize, and you can revoke it any time from your dashboard.

Data endpoint

The embed calls this hosted endpoint for you on each refresh, using a short-lived token minted from your wk_ key — it never carries your key to the browser. These are its parameters and the values this widget uses.

GET /widgets/api/price-history-grid/ohlc

Endpoint parameters

Parameter Type Required Description
symbol symbol No Single-series widgets: one symbol, within the allowed set. Allowed: BTCUSD, XAUUSD, EURUSD, GBPUSD. Default: BTCUSD.
timeframe enum No Candle timeframe. Allowed: M1, M5, M15, M30, H1, H4, D1. Default: H1. This widget pins it to H1.
limit integer No Number of most-recent candles returned. Allowed: 1–500. Default: 100. This widget pins it to 60.

Set symbol on the embed to any one of this widget’s allowed symbols (BTCUSD, XAUUSD, EURUSD, GBPUSD); it defaults to BTCUSD if omitted. A symbol outside this set is rejected by the gateway before any data is fetched, and the widget shows its “unavailable” state.

Response

Every response is a JSON envelope { success, widget, cached, data }. The data object for this widget:

{ symbol, timeframe, candles:[…], count } (close series)

Good to know

Theming & isolation
The widget renders inside a sandboxed Shadow DOM with all:initial, so your page's CSS and scripts can't reach in and its styles can't leak out. It fits the width of its container — never wider — and brings its own light palette.
Refresh, caching & limits
It refreshes about every 15 seconds against cached data, so many visitors collapse to one computation on our side. Requests are rate-limited per key and per domain; over the limit the gateway returns 429 and the widget simply keeps its last frame until the next tick.
When data is unavailable
If a symbol has no current data, the widget shows an explicit “unavailable” / “no data” state — never a fabricated or zeroed value. A revoked key or an unauthorized domain leaves the widget in that same state; it never throws on your page.
Pricing & domain slots
Billed monthly per domain slot. The base ($14.99/mo) covers one domain; each extra slot adds half the base. Slots are fixed at purchase — cancel any time and the embed stays live to the end of the paid month, then stops.

Frequently asked

Which symbol does it cover?

One symbol per embed from BTCUSD, XAUUSD, EURUSD, or GBPUSD.

What does each cell show?

Normalised close-to-close movement for the selected bar interval, labelled on hover — descriptive history, not a forecast.

Can visitors change the interval?

Yes, via the widget's bar-interval selector, from the same documented close series.

How often does it refresh?

~15-second cached poll on the underlying series; the last verified data is held on a gap.

Is it free to preview?

Yes, synthetic and keyless; the live widget is a paid subscription.

Related resources

Prefer to pull this data through the API instead of an embed? These endpoints and guides cover the same market data.

Embed it in minutes

Preview it with synthetic data and no key, then add your key to go live on your domains — from $14.99/mo per domain.