portfolIQ
Documentation

Multi-tier data sourcing strategy

How portfolIQ structures its data sources across three tiers — free redistribution, internal fusion, and paid auto-trigger — and why it matters for your B2B use case.

Multi-tier data sourcing strategy

Disclaimer: Data provided by portfolIQ is factual and descriptive. It does not constitute financial advice or investment recommendations. Not financial advice. Methodology disclosed.

Overview

portfolIQ organises all its data sources into three tiers based on licensing, redistribution rights, and availability. This architecture ensures that every byte you receive from the portfolIQ API is legally redistributable — a critical requirement for B2B fintech applications.

TierNameWho sees the raw datalicensed_for_commercial_use
Tier 0Free redistributionExposed directly in APItrue
Tier 1Internal fusionNever exposed raw — only derivativestrue (when ≥2 sources, weight ≤40% per source)
Tier 2Paid auto-triggerDerivatives only, conditionallytrue (if licence permits)

Every API response includes meta.source_primary and meta.licensed_for_commercial_use so you can audit the provenance of each field.

Tier 0 — Free redistribution (primary)

These sources carry explicit open-data or public-domain licences. portfolIQ exposes data derived from them directly in API payloads.

SourceCoverageLicenceportfolIQ use
SEC EDGARUS equities (~8,500 companies), ETF N-PORT filingsPublic domain (17 CFR §200.80)Stock + ETF metadata, XBRL fundamentals
FRED (Federal Reserve St. Louis)~800k macro series, WTI oil, natural gasFree redistribution with attributionCommodities spot, macro indicators
ECB SDWEUR/*, inflation, M3, interest ratesOpen dataForex EUR pairs, EU macro
metals.devGold, silver, platinum spot (1.79€/month)Commercial licence includedXAU, XAG spot prices
ESMA FIRDSISIN/MIC/instrument reference EUOpen data (MiFID II)ISIN cross-reference
Companies House UKUK company fundamentalsOpen Government LicenceUK equity metadata (Sprint 30)
AMF info-financièreEuronext Paris listed companiesOpen data (régulateur FR)FR equity events (Sprint 30)
LSE DelayedUK equity prices (15-min delay)Redistributable delayed feedUK OHLCV (Sprint 30)
EDINET (Japan FSA)Japanese XBRL filingsPDL 1.0 (redistribuable)TSE fundamentals (Sprint 32)
DART (Korea FSS)Korean company filingsOpen data (régulateur KR)KOSPI fundamentals (Sprint 32)
TWSE OpenAPITaiwan Stock ExchangeOpen Government Licence TWTaiwan metadata (Sprint 32)
SC Malaysia Shariah list~750 halal-certified securitiesRégulateur SAC biannuelHalal certification flag (Sprint 32)
IDX ISSI (Indonesia)Indonesia Sharia Stock IndexOJK (régulateur officiel)Halal certification flag (Sprint 32)

Attribution policy: Tier 0 sources are always attributed in meta.source_primary. Example: "edgar_xbrl_v1", "fred_v1", "metals_dev_v1".

Tier 1 — Internal fusion (derivatives only)

These sources have terms of service that prohibit direct redistribution of raw data, but permit internal use to compute derivatives. portfolIQ uses them to build consensus prices and enriched signals — the derived output (not the raw input) is what gets served to you.

SourceUseportfolIQ role
Tiingo (free, 1,000 tickers/day)US equity OHLCVFusion input — NEVER in payload
Polygon.io (free tier)US equity OHLCVFusion input — NEVER in payload
FMP (Financial Modeling Prep, free)US equity OHLCVFusion input — NEVER in payload
Twelve Data (free)US equity OHLCVFusion input — NEVER in payload

Fusion methodology: portfolIQ applies a weighted VWAP consensus across Tier 1 sources:

  1. Each source contributes a price + volume.
  2. Sources with price deviation > 5% from the inter-source median are excluded.
  3. No single source may contribute more than 40% of the total weight (analogous to the 50% cap on the crypto VWAP basket).
  4. If fewer than 2 sources remain after exclusions, no consensus price is published for that ticker on that day (data_quality: "insufficient_sources").

The consensus output is stored in sat_stock_price_consensus and exposed as meta.data_methodology: "stock_consensus_v1".

Why this matters for your app: The raw Tiingo/Polygon/FMP prices are never in the API response. What you receive is a licenced derivative that portfolIQ computed. You can redistribute this derivative to your end users.

Tier 2 — Paid auto-trigger (last resort)

Tier 2 is activated automatically, on a ticker-by-ticker basis, only when Tier 0 + Tier 1 coverage drops below the quality threshold.

SourceTrigger conditionCost model
Alpha Vantage Standard (~50$/month)coverage < 90% OR Tier 1 ToS NO-GOActivates per-ticker, strict budget cap
EODHD Standard (~19$/month)Asia-Pacific tickers not covered by Tier 0Sprint 32 auto-trigger for ASEAN

Trigger conditions for Tier 2:

  • Tier 1 fusion has fewer than 2 sources for a given ticker.
  • A Tier 1 source ToS changes and expert-legal issues a NO-GO.
  • A ticker is newly listed and not yet covered by Tier 0/1.

What you see in the response: If a field was sourced from a Tier 2 provider with a commercial redistribution licence, meta.source_primary reflects this ("alpha_vantage_standard_v1") and meta.licensed_for_commercial_use remains true. If the Tier 2 licence does not cover redistribution, the field is withheld and meta.data_quality is set to "unavailable".

Budget guardrail: Tier 2 spending is capped at 50$/month per provider. If the cap is reached, affected tickers fall back to data_quality: "insufficient_sources" rather than overrunning the budget.

Why this architecture matters for your B2B use case

Legal clarity: Every field in every portfolIQ response can be traced to a Tier 0 or licenced Tier 1/2 source. You don't need to audit each upstream ToS — portfolIQ has done it for you.

Predictable data quality: The meta.data_quality field ("full", "partial", "stale", "insufficient_sources") lets you build conditional logic in your application without silent failures.

Compliance-ready attribution: meta.source_primary provides the audit trail required by MiFID II Article 27 for best execution documentation and AIFMD Article 26 for valuation independence.

Cost transparency: portfolIQ publishes the cost structure of its data sourcing. If a paid Tier 2 source is active for a ticker you consume, you'll see it in the source_primary field.


Not financial advice. Methodology disclosed. portfolIQ is not a registered investment advisor.