Core Concepts¶
Data Model¶
Most APIs operate on daily (or intraday) return series:
returns:pd.Seriesof simple (non-cumulative) returns withDatetimeIndexfactor_returns: optional benchmark returns aligned toreturnspositions: optionalpd.DataFramewith one column per asset pluscashtransactions: optionalpd.DataFramewithamount,price,symbolcolumns
Three API Levels¶
1. Flat API (Simplest)¶
2. Empyrical Class (150+ methods)¶
3. AnalysisContext (Recommended)¶
Lazy Loading Architecture¶
import fincore loads in ~0.04s. Heavy submodules (matplotlib, scipy) are deferred via __getattr__ until first access.
Period Constants¶
These control annualization factors across all metrics.