Timeframes and custom grains

The timeframe bar offers 1m, 3m, 5m, 15m and 1H pills plus a Bar type chip where any minute value that divides the day, 15s or 30s, and count-based grains can be typed, pinned and saved as favourites.

Senzoukria · Documentation · Updated September 2026


Where to find it

Where
Chart toolbar → timeframe pills and the Bar type chip
Pills
1m, 3m, 5m, 15m, 1H (100T on the NinjaTrader bridge only)
Default
1m; an unavailable grain falls back to 1m
Custom time grains
15s, 30s, and any whole number of minutes that divides 1440
History range
Range: 24 hours (today) by default, 3 days or 7 days

What it does

Intraday grains are derived locally from a one-minute base: a 5m footprint bar is the exact sum of its five 1m bars (per-price buy and sell volumes add, delta adds, OHLC composes). The history pipeline therefore downloads only the 1-minute window, and switching pills costs no broker request. The pill bar shows five time presets; the Bar type chip next to it always displays the current grain, whether it is a preset or a custom value like 45m, so no active timeframe is ever invisible.

The chip opens a “Bar type” popover with five families (Time, Tick, Volume, Range, Delta), preset buttons, a Custom field with a unit selector (sec, min, hour) and an Apply button (Enter). For the Time family the presets are 15s, 30s, 1m, 2m, 3m, 5m, 15m, 30m, 1h, 2h and 4h. A label typed in full (45m, 4H, T500) overrides the unit menu. Labels are normalised: 60m, 1H and “ 1h ” all become 1h, so a grain never creates two cache partitions.

The “Range” setting under History range in Footprint settings bounds how far back the chart pulls history from the broker: 24 hours (today), 3 days or 7 days, counted from midnight in the chart timezone.

Settings

Controls of the pill bar and the Bar type chip, with defaults read from the settings store
SettingDefaultWhat it changes
Timeframe pills1m1m, 3m, 5m, 15m, 1H. 100T appears only on the NinjaTrader bridge, whose tick counter it divides.
Bar type → familyTimeTime, Tick, Volume, Range or Delta. Count families are greyed with a per-source reason where the source cannot build them.
Custom field + unitEmpty, unit minA number in the selected family and unit, or a full label. Invalid input shows the reason, e.g. “7m doesn’t divide the day evenly — try 6m or 8m.”
Pin to bar (☆/★)UnpinnedAdds the current grain as an extra pill; right-click a pinned pill to unpin. Up to 8 pins.
Favourites (★ row)EmptyFilled automatically: applying a custom grain that has no pill of its own adds it at the top of the row, most recent first. Right-click removes one. Up to 6 favourites.
Range (History range)24 hours (today)24 hours, 3 days or 7 days of broker history. Widening it is a real round-trip on the 1-minute feed.

How to use it

Click a pill for the common grains. For anything else, click the chip, choose Time, type the number and pick the unit, then press Enter; the popover confirms “Enter applies 45m” before you commit. Pin a grain you use every day so it gets its own pill. The popover also states the reservation of the family shown: time grains are aligned on the epoch (UTC midnight), not on the CME session open, so a 4h here is not the CME 4h.

Valid minute values are the divisors of 1440: 2, 5, 45, 90 and so on. Below one minute only 15s and 30s exist, because the engine produces no other sub-minute grain. 1d is accepted when typed but is not proposed, since daily bars are the only grain that opens a separate OHLCV request at the broker.

Limits or pitfalls

  • A grain that is valid but unavailable on the current source (for example a count grain on a bridge) is reset to 1m when the chart mounts.
  • The timeframe label is the primary key of the bar cache and of history requests: two spellings of the same grain are merged on purpose.
  • Derived grains are epoch-aligned; session-aligned candles are not a timeframe option.
  • The 100t bridge grain is not the T100 count grain: 100t divides a counter sent by NinjaTrader, T100 accumulates trades in the engine.

This page in other languages

Frequently asked questions

Why is 7m refused?
Buckets are floored on the epoch, and a period that does not divide the day (1440 minutes) would drift a little every day. The chip suggests the two nearest valid neighbours, here 6m and 8m.
Does switching from 1m to 15m reload history?
No. Intraday grains are summed locally from the 1-minute base already in the cache. Only the History range (24 hours, 3 days, 7 days) changes what is downloaded.
Where did the 1D and 30s pills go?
They were removed from the bar; the engine still understands them. Type 30s or 1d in the Bar type chip to use them, and pin the grain if you want it back as a pill.

Keep reading