Candlestick component
Datatype: "candlestick"An OHLC candlestick chart for stock and crypto prices — bullish and bearish candles with wicks, rendered straight into your image from the open/high/low/close data.
Design JSON
{
"title": "Candlestick sample",
"description": "A weekly OHLC price chart",
"dimensions": {
"width": 800,
"height": 420
},
"background": {
"color": "#ffffff"
},
"components": [
{
"id": "sample-candlestick",
"key": "ohlc",
"type": "candlestick",
"position": {
"x": 120,
"y": 50
},
"rotation": 0,
"size": {
"width": 560,
"height": 320
},
"dynamic": true,
"properties": {
"candles": [
{
"open": 100,
"high": 112,
"low": 97,
"close": 109
},
{
"open": 109,
"high": 114,
"low": 105,
"close": 106
},
{
"open": 106,
"high": 108,
"low": 98,
"close": 101
},
{
"open": 101,
"high": 118,
"low": 100,
"close": 116
},
{
"open": 116,
"high": 122,
"low": 113,
"close": 120
},
{
"open": 120,
"high": 121,
"low": 110,
"close": 112
},
{
"open": 112,
"high": 119,
"low": 111,
"close": 118
}
],
"labels": [
"Mon",
"Tue",
"Wed",
"Thu",
"Fri",
"Sat",
"Sun"
],
"upColor": "#16a34a",
"downColor": "#dc2626",
"showAxis": true,
"showGrid": true,
"valueFormat": "currency",
"currencySymbol": "$",
"opacity": 1
}
}
]
}Like what you built? The full editor — canvas, templates and the render API — is free to start.
Open the editorCandlestick examples
Real renders of the candlestick — each one is the same component with different property values, and the API payload below each preview reproduces it exactly.
Weekly stock recap
Five trading days of OHLC with a dollar-formatted price axis.
API overrides for this example
{
"ohlc.candles": [
{
"open": 182,
"high": 188,
"low": 180,
"close": 186
},
{
"open": 186,
"high": 190,
"low": 184,
"close": 185
},
{
"open": 185,
"high": 187,
"low": 178,
"close": 179
},
{
"open": 179,
"high": 192,
"low": 178,
"close": 190
},
{
"open": 190,
"high": 196,
"low": 188,
"close": 194
}
],
"ohlc.labels": [
"Mon",
"Tue",
"Wed",
"Thu",
"Fri"
],
"ohlc.valueFormat": "currency",
"ohlc.currencySymbol": "$"
}Crypto downtrend week
A choppy week trending down, compact-formatted for a social card.
API overrides for this example
{
"ohlc.candles": [
{
"open": 42000,
"high": 43500,
"low": 41200,
"close": 41500
},
{
"open": 41500,
"high": 42000,
"low": 39800,
"close": 40100
},
{
"open": 40100,
"high": 40500,
"low": 37600,
"close": 38200
},
{
"open": 38200,
"high": 39000,
"low": 37900,
"close": 38800
},
{
"open": 38800,
"high": 39200,
"low": 36500,
"close": 36900
}
],
"ohlc.labels": [
"1",
"2",
"3",
"4",
"5"
],
"ohlc.valueFormat": "compact"
}All candlestick styles
Every style rendered live — each is just a different set of property values on the same component, and each has its own page with a dedicated preview, use cases and API example.
Use cases
What developers typically build with the candlestick component.
- Daily market-recap images auto-posted to social
- Crypto price snapshots for newsletters and alerts
- Trading-journal and portfolio report graphics
- Watchlist cards with a fresh price chart per ticker
Use it dynamically via the API
Push a fresh OHLC array per render with '<key>.candles' (or just '<key>'); labels and colors are overridable too.
Full API request with the sample design's current values — the playground above sends only the properties you change
curl --location 'https://render.imejis.io/v1/{{YOUR_DESIGN_ID}}' \
--header 'dma-api-key: {{YOUR_API_KEY}}' \
--header 'Content-Type: application/json' \
--data '{
"ohlc.candles": [
{
"open": 100,
"high": 112,
"low": 97,
"close": 109
},
{
"open": 109,
"high": 114,
"low": 105,
"close": 106
},
{
"open": 106,
"high": 108,
"low": 98,
"close": 101
},
{
"open": 101,
"high": 118,
"low": 100,
"close": 116
},
{
"open": 116,
"high": 122,
"low": 113,
"close": 120
},
{
"open": 120,
"high": 121,
"low": 110,
"close": 112
},
{
"open": 112,
"high": 119,
"low": 111,
"close": 118
}
],
"ohlc.labels": [
"Mon",
"Tue",
"Wed",
"Thu",
"Fri",
"Sat",
"Sun"
],
"ohlc.upColor": "#16a34a",
"ohlc.downColor": "#dc2626",
"ohlc.showAxis": true,
"ohlc.showGrid": true,
"ohlc.valueFormat": "currency",
"ohlc.currencySymbol": "$",
"ohlc.opacity": 1
}'Only send the properties you want to change — everything else keeps its design value. See the API documentation for all languages.
Property reference
Every property the candlestick component accepts — in the editor, in design JSON, and as API overrides.
| Property | Type | Edits as | Default | Description |
|---|---|---|---|---|
| candles | object[] | text | [] | OHLC data — one { open, high, low, close } object per period. |
| labels | string[] | text | [] | Period labels along the x-axis (e.g. dates). |
| upColor | color | #16a34a | "#16a34a" | Body color of bullish candles (close ≥ open). |
| downColor | color | #dc2626 | "#dc2626" | Body color of bearish candles (close < open). |
| wickColor | color | #888888 | — | Wick (high-low line) color; defaults to the candle body color. |
| showAxis | boolean | true | true | Show the price and date axes. |
| showGrid | boolean | true | true | Show horizontal grid lines. |
| valueFormat | 'number' | 'compact' | 'percent' | 'currency' | numbercompactpercentcurrency | "number" | Price format (1,200 / 1.2K / 12% / $1,200). |
| currencySymbol | string | text | "$" | Currency symbol used with the 'currency' format. |
| textColor | color | #52514e | "#52514e" | Axis label color. |
| gridColor | color | #e6e6e3 | "#e6e6e3" | Grid line color. |
| opacity | number | 1 | 1 | Overall component opacity from 0 (transparent) to 1 (opaque). |
| borderWidth | number | 0 | 0 | Border thickness in pixels around the component. |
| borderColor | color | transparent | "transparent" | Border color (any CSS color). |
| borderStyle | 'solid' | 'dashed' | 'dotted' | 'double' | 'none' | soliddasheddotteddoublenone | "solid" | Border line style. |
| borderRadius | number | 0 | 0 | Corner radius in pixels. |
| boxShadow | string | text | — | CSS box-shadow applied to the component, e.g. "0 4px 6px rgba(0,0,0,0.1)". |