liksy/ methodologyview all sources →

LIKSY METHODOLOGY · v1.1

How Liksy computes its indices.

Liksy publishes derived indicators on top of its 990K+ price database: the Food Inflation Index (ARII), Country Food-Risk Score, cross-country correlation, and supply-chain stress signals. We also surface official reference indices from third parties (Eurostat HICP, USDA AMS, FAOSTAT) alongside our own. This page documents the data pipeline, statistical choices, and known limitations.

1. Data sources

The Liksy database integrates six source families. See /sources for full coverage tables, refresh cadences, and per-source documentation.

SourceTypeCoverageCadence
WFP Price DatabaseCrisis monitoring12 countries, ~190K rowsMonthly
Eurostat HICPOfficial EU index37 countries, ~123K rows, since 1996Monthly
USDA AMSUS wholesale & retailUS national + 8 regions, ~110K rowsWeekly
FAOSTAT CPConsumer price indices180+ countries, ~190K rowsMonthly/yearly
WB Pink SheetCommodity pricesGlobal, ~30K rows, since 1960Monthly
Liksy collectors + Open PricesCrowdsourcedPilot, growingReal-time

Every record is tagged with a data_source field for provenance. Methodology choices below apply to Liksy-derived indices (ARII, Risk Score). Reference indices from Eurostat, USDA, and FAOSTAT pass through unchanged with attribution.

2. Food Inflation Index (ARII)

A monthly, country-specific index of food basket cost denominated in USD, normalized to a baseline of 100. ARII is Liksy's own computation; for EU countries, the official Eurostat HICP food index (CP011) is also returned in the same response under reference.eurostat_hicp.

2.1 Basket composition

Each country has a basket defined by subcategory weights, mirroring the WFP Minimum Food Basket framework. Default global weights:

grains: 0.30 pulses: 0.15 oils: 0.15 dairy: 0.10 meat: 0.10 vegetables: 0.10 produce: 0.05 bakery: 0.05

Country-specific overrides exist for all 12 WFP-covered countries. For example, Ethiopia weights cereals heavier (0.45) due to higher grain consumption share, while Lebanon weights dairy higher (0.15) reflecting Mediterranean diet patterns.

2.2 Unit normalization

Raw WFP records mix units (KG, "90 KG" sacks, L, "12 PCS"...). Liksy parses the unit field and computes a kg/L-normalized price_per_unit for every applicable row. Inflation index calculation uses only kg/L-normalized records, ensuring apples-to-apples comparison across collection events.

2.3 Outlier filtering

Within each subcategory and time window, prices outside the 5th–95th percentile range are excluded. This trims data-entry errors and exceptional one-off transactions while preserving genuine price signals. Confidence threshold: >= 0.75.

2.4 Aggregation formula

for each subcategory s in basket: current_median[s] = median(price_per_unit) in target month, IQR-trimmed baseline_median[s] = median(price_per_unit) in baseline window, IQR-trimmed basket_cost = SUM(current_median[s] * weight[s]) over s present in both periods baseline_cost = SUM(baseline_median[s] * weight[s]) over s present in both periods effective_weight = SUM(weight[s]) over s present in both periods if effective_weight < 0.40: return null // coverage threshold index_value = (basket_cost / effective_weight) / (baseline_cost / effective_weight) * 100

The division by effective_weight is critical: it normalizes across periods where some subcategories may be missing, preventing apples-to-oranges comparison.

2.5 Baseline date

Default baseline: January 2020 (BIS/IMF convention, pre-COVID benchmark). For subcategories with no January 2020 data, a fallback baseline is used: the earliest 6-month window with valid measurements for that country/subcategory pair.

2.6 Coverage threshold

A country-month index is computed only when the subcategories with measurable prices represent at least 40% of basket weight. Below this threshold the index is suppressed (null), since a basket dominated by 1–2 components is not representative.

3. Reference indices (third-party)

Where official statistics agencies publish food price indices, Liksy returns them alongside ARII for benchmarking. These pass through unchanged with full attribution.

3.1 Eurostat HICP food index

For 37 countries (EU27 + EFTA + EU candidates including Türkiye), the Eurostat Harmonised Index of Consumer Prices, Food (CP011) is included in /api/v1/inflation responses under reference.eurostat_hicp. Base period 2015 = 100, monthly cadence, history back to 1996. We return YoY % change computed from a 12-month lookback.

Why both ARII and HICP? ARII is USD-denominated and uses a globally-comparable basket (good for cross-country EM analysis). HICP is local-currency, country-specific basket, official statistical methodology. They diverge during currency events — Türkiye Dec 2025: ARII reflects USD-stable food prices, HICP shows +27.8% YoY in TRY. Both are correct; they answer different questions.

3.2 USDA AMS feeds

Weekly grocery feature activity (Beef, Lamb, Veal, Goat, Specialty Crops) for US national + 8 regions are stored as price observations in price_data with data_source = 'usda_ams'. Each row carries price_min/avg/max and store_count. Available via /api/v1/prices?data_source=usda_ams.

3.3 FAOSTAT consumer prices

FAO Consumer Price Indices for ~180 countries, monthly and yearly granularity, in external_indices with data_source = 'faostat_cp'. Used as fallback inflation reference for non-EU countries.

4. Country Food-Risk Score

A composite 0–100 indicator with S&P-style letter grade, designed for trade credit insurance, sovereign macro analysis, and EM hedge fund overlays. Computed on demand per country.

4.1 Components

ComponentWeightDefinition
Inflation volatility40%Coefficient of variation of monthly index over rolling 24-month window
Absolute inflation30%Average distance of index from baseline (100), capped
Anomaly density20%Count of > 25% price deviations vs 30-day baseline in last 90 days
Data freshness10%Days since latest inflation data point, scaled to 0–100

4.2 Composite formula

composite = 0.40 * volatility_score + 0.30 * inflation_score + 0.20 * anomaly_score + 0.10 * freshness_score each component normalized to 0-100 before weighting. minimum 6 months of inflation data required.

4.3 Letter grade scale

ScoreGradeInterpretation
< 10AAAStable, low food-driven risk
10–19AAVery low risk
20–29ALow risk, mild pressure
30–44BBBModerate, monitor
45–59BBElevated risk
60–74BHigh risk
75–89CCCSevere risk, expect disruption
≥ 90DCrisis-level price instability
NRInsufficient recent data (< 6 months in 24-month window)

4.4 Rolling window

Risk score uses a 24-month rolling window to maximize country coverage while remaining responsive. Sigortacılar typically operate on 1–2 year horizons; this window aligns. Countries with no data in the window receive NR.

5. Limitations & known issues

6. Versioning

Current version: v1.1 (April 2026)
v1.1: Added Eurostat HICP, USDA AMS, FAOSTAT CP, WB Pink Sheet as integrated reference sources. Six total source families.
v1.0: Initial ARII and Risk Score methodology.
Methodology changes are versioned. Breaking changes increment major version, parameter tweaks increment minor. Historical index values are recomputed on methodology updates; raw price data is immutable.

7. References

Contact

Methodology questions, dataset access, partnership inquiries: emir@delmundo.hu

Liksy · Del Mundo Kft. · Budapestv1.1 · April 2026