Skip to main content

Overview

ClyptQ supports four categories of data that can be combined as inputs to any trading strategy graph. All data flows through the same pipeline: declare what you need in TradingDataSpec, let the DataProvider fetch and normalize it, and consume it as FIELD inputs in the operator graph.

Supported Data Types

Data Flow

Declaring Data Sources

OHLCV (Crypto)

Multiple Exchanges

Onchain + Macro

Storage

ClyptQ uses a layered storage system. Collectors write to storage; the graph engine reads from it during warmup and backtest.

Chunk-Based Loading

For large datasets (multi-year, many symbols), the data system uses chunk-based loading to avoid memory exhaustion:
  • Historical data is partitioned by time chunks (e.g., monthly Parquet files)
  • The backtest engine loads only the chunk needed for the current simulation window
  • Warmup buffers pre-load enough history for the longest lookback in the graph
  • Garbage collection runs periodically between chunks to free memory
This means you can backtest over years of 1-minute data across hundreds of symbols without loading everything into RAM at once.

Collector Architecture

Every data source implements the UnifiedCollector interface:
This unified interface means all data sources — whether exchange candles, onchain metrics, or macro indicators — are consumed the same way by the graph engine.