Price axis, decimals and psychological levels
The price axis on the right of the Senzoukria footprint chart sizes itself to its widest label, derives its decimals from the instrument tick size, and can highlight round-number psychological levels in a colour of your choice.
Senzoukria · Documentation · Updated September 2026
Where to find it
- Where
- Chart → ⚙ Settings → Visual Settings → Numeric format, and Visual Settings → Axis highlights
- Price decimals default
- Auto (infer from data)
- Volume format default
- Raw (1234)
- Psychological levels default
- Off, colour #f7b32b when enabled
- Axis width
- 48 to 96 px, fitted to the widest label
What it does
The price axis is the band on the right edge of the chart that carries the price labels, the crosshair price tag and the live price tag. Its geometry lives in one module (priceAxis.ts) shared by the renderer, the cursor-anchored zoom and the mouse hit-testing, so a click always lands where the label is drawn.
The axis width is not fixed. It starts from a 68 px budget sized for a label such as $100,000.00 and then adapts to the widest label actually measured on screen, between a floor of 48 px and a ceiling of 96 px. It grows as soon as a label would overflow and shrinks only when there is more than 8 px of slack, so the axis does not tremble at every zoom step.
When the desired precision does not fit even at the maximum width, the renderer removes decimals one by one until the widest label fits (fitPriceAxisPrecision). This loses nothing on futures: MNQ ticks at 0.25, so a third decimal is always a zero. Labels never overflow onto the candles, which was the silent failure the module replaced.
Settings
| Setting | Default | What it changes |
|---|---|---|
| Price decimals | Auto (infer from data) | Auto lets the layout engine derive the decimals from the instrument tick size (a sub-integer tick such as 0.25 gives at least 2 decimals; an integer tick such as $10 on BTC gives 0), and reduces them further when the vertical zoom is low. The fixed options are 2, 4 and 8 decimals. |
| Volume format | Raw (1234) | How volume figures are written: Raw, Thousands (1.2K) or Millions (1.2M). Read by the chart renderer and the current bar panel. |
| Highlight psychological levels | Off | Colours the round-number price labels on the axis. The step is the smallest power of ten that is at least 100 ticks: 100 points on NQ or MNQ, one dollar on CL. No per-symbol table is involved. |
| Psychological level colour | #f7b32b | Colour used for those labels. Shown only while the highlight is on. |
How to use it
Leave Price decimals on Auto unless the data source publishes an unusual grid. A fixed value is useful when you compare two instruments side by side and want identical label widths. Two rules can reduce the decimals shown in Auto: a low vertical zoom on a sub-tick instrument, and a label too wide for the axis, which the chart shortens rather than letting it spill over the candles. Fewer decimals than expected at a macro zoom is one of those two rules, not a data problem.
On very wide price ranges the axis abbreviates: when the visible range is at least 50,000 price units and the price is at least 10,000, labels are written as thousands with a K suffix. This only happens at a truly macro zoom level.
Enable the psychological level highlight when you trade round numbers on index futures or whole dollars on crude. The highlight touches only the axis labels; it does not draw horizontal lines on the chart. Use a horizontal line drawing or a price alert if you want a level on the chart itself.
Limits or pitfalls
A few rules follow directly from the code:
- The shared price-format helper used by the DOM ladder and the heatmap price axis stops at six decimals and treats a non-positive tick size as two decimals, so a corrupt tick size cannot freeze those readouts.
- The tick size used for the row grid and the crosshair snap is the authoritative instrument value when one is set; the value inferred from the bars is only a fallback for instruments outside the catalogue.
- Volume format affects display only. Exports keep raw numbers in the source's units.
- The psychological step is derived from the tick size alone. On an instrument whose tick size is not known to the app, the step it produces has no reason to match the levels traders actually watch on that product.
Related pages
This page in other languages
Frequently asked questions
- Why does the axis show fewer decimals when I zoom out?
- The widest label no longer fits the axis budget, so the renderer drops decimals until it does. On a 0.25-tick instrument the removed digit was always a zero.
- Does the psychological level highlight draw lines on the chart?
- No. It colours the matching price labels on the axis only. Draw a horizontal line or add a price alert from the right-click menu to mark a level on the chart.
- Where do the decimals come from in Auto mode?
- From the instrument tick size: the chart never shows decimals the price cannot resolve, so a $10 tick reads as a whole number. At a low vertical zoom on a sub-tick instrument the chart shows one or two decimals fewer.