market-data-sanity-checker - v1.2.0
    Preparing search index...

    Function parseAlphaVantageDaily

    • Parses a TIME_SERIES_DAILY_ADJUSTED payload into the canonical dataset. Pure and total: throws ConnectorError only on provider error payloads or a missing time series; bars with a non-finite or non-positive close are skipped, never fatal. Bars come back descending from the API and are re-sorted ascending.

      Parameters

      • payload: unknown
      • symbol: string

      Returns {
          symbol: string;
          exchange?: string;
          currency?: string;
          source: string;
          identifiers?: { isin?: string; cusip?: string; figi?: string };
          bars: {
              timestamp: string;
              open: number;
              high: number;
              low: number;
              close: number;
              volume?: number;
              adjustmentFactor?: number;
          }[];
          dividends?: {
              exDate: string;
              payDate?: string;
              amount: number;
              currency?: string;
              type?: "regular"
              | "special";
          }[];
          splits?: { exDate: string; numerator: number; denominator: number }[];
          fundamentals?: {
              marketCap?: number;
              sharesOutstanding?: number;
              eps?: number;
              pe?: number;
              dividendYield?: number;
              payoutRatio?: number;
          };
      }

      • symbol: string
      • Optionalexchange?: string
      • Optionalcurrency?: string
      • source: string

        Provenance is mandatory: a report must always be able to say where each datum came from.

      • Optionalidentifiers?: { isin?: string; cusip?: string; figi?: string }
      • bars: {
            timestamp: string;
            open: number;
            high: number;
            low: number;
            close: number;
            volume?: number;
            adjustmentFactor?: number;
        }[]
      • Optionaldividends?: {
            exDate: string;
            payDate?: string;
            amount: number;
            currency?: string;
            type?: "regular" | "special";
        }[]
      • Optionalsplits?: { exDate: string; numerator: number; denominator: number }[]
      • Optionalfundamentals?: {
            marketCap?: number;
            sharesOutstanding?: number;
            eps?: number;
            pe?: number;
            dividendYield?: number;
            payoutRatio?: number;
        }