Quick Start
Start here. This page covers one indicator, a stream of candles, and reading the latest value. You do not need Hexital, timeframes, or custom indicators yet.
For the next steps, see Choose your path on the home page.
Your first indicator
Hexital is built for incremental updates: append a candle, get the new reading — without recalculating the full history.
from hexital import EMA, Candle
candles = Candle.from_dicts([
{"open": 17213, "high": 2395, "low": 7813, "close": 3615, "volume": 19661},
{"open": 1301, "high": 3007, "low": 11626, "close": 19048, "volume": 28909},
{"open": 12615, "high": 923, "low": 7318, "close": 1351, "volume": 33765},
])
ema = EMA(candles=candles, period=3)
ema.calculate()
print(ema.reading()) # latest EMA value
Append a new candle
Call append() when new market data arrives. The indicator recalculates automatically — you do not need to call calculate() again.
ema.append(
Candle.from_dict(
{"open": 19723, "high": 4837, "low": 11631, "close": 6231, "volume": 38993}
)
)
print(ema.reading())
Indicator names
If you omit name, Hexital generates one from the indicator type and settings — e.g. EMA_3 for EMA(period=3). Use that name with reading(), series(), and analysis helpers. For nested dict outputs, use : — e.g. MACD_12_26_9:signal.
Candles
Every indicator works on Candle objects. The minimum fields are open, high, low, close, and volume.
The quickest path for bulk data is usually a list of dicts:
candles = Candle.from_dicts([
{"open": 1.0, "high": 1.2, "low": 0.9, "close": 1.1, "volume": 1000},
])
You can also pass dicts or lists directly to append() — Hexital converts them for you.
For every input format (lists, timestamps, Pandas, and more), see the Candles guide.
What next?
| Goal | Guide |
|---|---|
| Run several indicators on one candle stream | Hexital strategies |
Typed indicator access (HexitalCol) |
Hexital strategies |
| Save and restore strategy config | Hexital strategies |
| Trim memory, timestamps, timeframes | Candles |
| Export candles with readings | Candles |
| Crossovers, rising/falling checks | Analysis |
| Write your own indicator | Custom indicators |