> ## Documentation Index
> Fetch the complete documentation index at: https://docs.hyperprop.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Chart context

> Read the chart's symbol, market, timeframe, tick size and point value from your indicator.

`compute`'s fourth argument, `chart`, describes what the script is running on.
The same object is available as `hp.chart`. Every field is present; fields
that aren't known for the current symbol are `null`.

| Field | Example |
| - | - |
| `chart.symbol` | `"NQZ6"` |
| `chart.exchange` | `"CME"` |
| `chart.market` | `"futures"`, `"crypto"` |
| `chart.description` | `"Nasdaq 100 E-mini Futures"` |
| `chart.timeframe` | `"5m"` |
| `chart.timeframeMs` | `300000` |
| `chart.tickSize` | `0.25` |
| `chart.pointValue` | `20` (currency per point per contract) |

Switching symbol or timeframe re-runs the script with the new context.

## Uses

* Symbol-specific settings, such as different defaults for futures and crypto.
* Tick-based offsets: `price + 4 * chart.tickSize`.
* Dollar values: `points * chart.pointValue`.

## Example: daily range in dollars

```js theme={null}
const daily = request.bars('1D', { developing: true });

function compute(bars, inputs, hp, chart) {
  if (daily.status !== 'ready') return { plots: [] };
  const last = bars.length - 1;
  const range = daily.high[last] - daily.low[last];
  const dollars = chart.pointValue != null ? range * chart.pointValue : null;
  return {
    plots: [],
    tables: [{
      position: 'top-left',
      cells: [
        ['Today range', range.toFixed(2)],
        ['Per contract', dollars != null ? '$' + dollars.toFixed(0) : '–'],
        ['Ticks', chart.tickSize ? Math.round(range / chart.tickSize) : '–'],
      ],
    }],
  };
}
```


## Related topics

- [Custom indicators](https://docs.hyperprop.com/indicators/overview.md)
- [TA helpers](https://docs.hyperprop.com/indicators/helpers.md)
- [Changelog](https://docs.hyperprop.com/changelog.md)
- [Errors](https://docs.hyperprop.com/concepts/errors.md)
- [Update active lockout](https://docs.hyperprop.com/platform-api/lockouts/update-active-lockout.md)


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.