Skip to content

Pipeline

Syed Ibrahim Omer edited this page Apr 13, 2026 · 1 revision

Pipeline

This page describes the end-to-end flow from CLI arguments to files on disk.

High-level flow

Parse CLI → Fetch OHLCV → Normalize schema → Compute indicators → Write outputs

Deep dives

1) Parse CLI

Inputs come from CLI Reference:

  • Tickers: positional args or a .txt file
  • Period: a single value or a comma-separated list
  • Timeframe: a single interval or a JSON mapping periods→intervals
  • Optional overrides: config JSON, output naming, output format, engine

2) Fetch OHLCV (Yahoo Finance)

Data is fetched using yfinance as a combined history request and then split per-ticker.

Key behaviors:

  • Missing tickers are skipped if no data is returned
  • The tool expects typical Yahoo Finance columns like Date/Open/High/Low/Close/Volume

See Data Source (Yahoo Finance).

3) Normalize schema

The tool lowercases column names (e.g. Closeclose) to make indicator expressions consistent.

4) Compute indicators

Indicators are computed with rolling windows and exponential moving means.

Important output naming notes (current implementation):

  • ATR is uppercase (not atr)
  • Stochastic columns are uppercase K and D

See Indicators (Overview).

5) Write outputs

The tool writes one output file per computed dataset, either to:

  • an explicit --output name (or outputs list), or
  • an auto-generated name: <ticker>_<period>_<timeframe>.<ext>

See Output Formats and Advanced Usage.

Common failure modes

  • Yahoo Finance returns no data for a symbol → ticker skipped
  • Permission issues writing to directory → writer error
  • Very fine-grained intervals with large periods → large downloads / memory pressure

Related pages:

Clone this wiki locally