pub fn load_panel<S: ObjectSource + Sync>(
source: &S,
symbols: &[String],
field: Field,
from: i32,
to: i32,
dir: &str,
) -> Result<Panel, DataError>Expand description
Read the per-symbol price file for each symbol (probing .csv.gz, then
.parquet when that feature is on, then .csv; format detected from
content), extract field, filter to [from, to] (inclusive, YYYYMMDD), and
assemble a Panel: rows = sorted union of all kept days, columns = symbols in
the given order. Missing cells (and symbols with no file) are NaN. dir
defaults to PRICES_DIR at call sites.