Data Sources¶
RegimeFlow data sources are configured via the data block (C++ config) or data_source + data (Python config). The factory is implemented in src/data/data_source_factory.cpp.
Supported Types¶
csvfor OHLCV bars from CSV files.tick_csvfor tick data from CSV files.memoryfor in-memory data injection.mmapfor bar data in memory-mapped files.mmap_ticksfor tick data in memory-mapped files.mmap_booksfor order books in memory-mapped files.apifor generic HTTP time-series sources.alpacafor Alpaca REST bars and trades.databaseordbfor Postgres-backed sources.- Plugin types via
data_sourceplugins.
CSV Bars (type: csv)¶
Key fields:
data_directorypath to CSVs.file_patternfilename format, e.g.{symbol}.csv.has_headerboolean.delimitersingle character.date_formatordatetime_format.actions_directoryandactions_file_patternfor corporate actions.allow_symbol_columnandsymbol_columnfor multi-symbol files.utc_offset_secondsto normalize timestamps.collect_validation_reportto emit validation stats.fill_missing_barsto fill time gaps.
Tick CSV (type: tick_csv)¶
Key fields:
data_directory,file_pattern,has_header,delimiter.datetime_formatandutc_offset_seconds.collect_validation_report.
Memory-Mapped Data¶
mmapfor bars.mmap_ticksfor ticks.mmap_booksfor order books.
Key fields:
data_directory.preload_index(bars only).max_cached_filesandmax_cached_ranges.
API Data Source (type: api)¶
Key fields:
base_url,bars_endpoint,ticks_endpoint.api_keyandapi_key_header.formatandtime_format.timeout_seconds.fill_missing_barsandcollect_validation_report.symbolsas a comma-delimited string.
Alpaca (type: alpaca)¶
Key fields:
api_key,secret_key.trading_base_url,data_base_url.timeout_seconds.symbolsas a comma-delimited string.
Database (type: database or db)¶
Key fields:
connection_string.bars_table,ticks_table,actions_table,order_books_table,symbols_table.connection_pool_size.bars_has_bar_type.fill_missing_barsandcollect_validation_report.
Validation Configuration¶
Validation rules are defined under the validation prefix:
validation.require_monotonic_timestampsvalidation.check_price_boundsvalidation.check_gapvalidation.max_gap_secondsvalidation.check_price_jumpvalidation.max_jump_pctvalidation.check_future_timestampsvalidation.max_future_skew_secondsvalidation.check_trading_hoursvalidation.trading_start_secondsvalidation.trading_end_secondsvalidation.check_volume_boundsvalidation.max_volumevalidation.max_pricevalidation.check_outliersvalidation.outlier_zscorevalidation.outlier_warmupvalidation.on_errorvalidation.on_gapvalidation.on_warning
on_error, on_gap, and on_warning accept: skip, fill, continue, or fail.
Symbol Metadata Overlay¶
Symbol metadata can be layered on top of any data source:
symbol_metadata_csvpath to CSV metadata.symbol_metadata_delimiterandsymbol_metadata_has_header.- Inline metadata via config keys consumed by
load_symbol_metadata_config.
Next Steps¶
reference/configuration.mdreference/data-validation.md