Skip to content

Shadow

shadow is the master project in the Shadow stack.

It combines the major platform components into one strategy research and execution architecture, including data access through shadow-ingest, factor definition through shadow-factor, and large-scale backtest execution through the engine layer.

What It Is For

Use shadow when you want to:

  • combine data, factor, and strategy workflows under one project boundary
  • define factors with shadow-factor DSL and turn them into executable strategies
  • express strategy behavior through stable specs instead of ad hoc scripts
  • run industry-level batch backtests with shared abstractions and execution rules
  • standardize account, position, trade, and reporting concepts across the stack

Main Components

  • shadow-ingest — market data access and dataframe-oriented query APIs
  • shadow-factor — factor DSL and factor-oriented research building blocks
  • backtest engine — strategy execution, portfolio simulation, and report generation

Architectural Role

shadow is the composition layer.

It is where the major components are meant to fit together coherently:

  • ingest provides usable data inputs
  • factor provides reusable signal definitions
  • the engine turns signals and specs into runnable strategies and reports

Main Building Blocks

Documentation Focus

The documentation for shadow will focus on:

  • cross-component workflow
  • strategy spec design
  • factor-to-strategy execution flow
  • batch backtest orchestration
  • account, position, trade, and report abstractions