feat: calibrate regional adoption model with research-backed parameters
Update REGIONAL_LAGS with data from LightCounting, vendor earnings, OFC market sessions, and Chinese IPO prospectuses. Add price index per region and segment mix (hyperscaler/telco/enterprise) for more accurate regional revenue modeling.
This commit is contained in:
parent
70447def02
commit
280bf8f50a
@ -197,12 +197,53 @@ export interface RegionalAdoption {
|
|||||||
estimatedPeakYear: number;
|
estimatedPeakYear: number;
|
||||||
}
|
}
|
||||||
|
|
||||||
const REGIONAL_LAGS: ReadonlyArray<{ region: string; lagYears: number; marketSharePct: number }> = [
|
/**
|
||||||
{ region: "North America (Hyperscale)", lagYears: 0, marketSharePct: 35 },
|
* Regional lag coefficients calibrated from research (2026-03-28).
|
||||||
{ region: "China (BAT/Hyperscale)", lagYears: 0.5, marketSharePct: 30 },
|
* Sources: LightCounting, vendor earnings, OFC market sessions, Chinese IPO prospectuses.
|
||||||
{ region: "APAC (ex-China)", lagYears: 1.5, marketSharePct: 15 },
|
* Lag in years (converted from quarters: NA=0, CN=0.5Q≈0.125yr, EU=4Q=1yr, etc.)
|
||||||
{ region: "Europe", lagYears: 1.0, marketSharePct: 12 },
|
*/
|
||||||
{ region: "Rest of World", lagYears: 2.5, marketSharePct: 8 },
|
const REGIONAL_LAGS: ReadonlyArray<{
|
||||||
|
region: string;
|
||||||
|
lagYears: number;
|
||||||
|
marketSharePct: number;
|
||||||
|
priceIndex: number;
|
||||||
|
segmentMix: { hyperscaler: number; telco: number; enterprise: number };
|
||||||
|
}> = [
|
||||||
|
{
|
||||||
|
region: "North America (Hyperscale)",
|
||||||
|
lagYears: 0,
|
||||||
|
marketSharePct: 32,
|
||||||
|
priceIndex: 1.0,
|
||||||
|
segmentMix: { hyperscaler: 0.65, telco: 0.20, enterprise: 0.15 },
|
||||||
|
},
|
||||||
|
{
|
||||||
|
region: "China (BAT/Hyperscale)",
|
||||||
|
lagYears: 0.125, // 0.5 quarters = near-parity, sometimes leads on volume
|
||||||
|
marketSharePct: 38,
|
||||||
|
priceIndex: 0.58, // 42% cheaper domestically
|
||||||
|
segmentMix: { hyperscaler: 0.50, telco: 0.35, enterprise: 0.15 },
|
||||||
|
},
|
||||||
|
{
|
||||||
|
region: "APAC (ex-China)",
|
||||||
|
lagYears: 0.625, // 2.5 quarters
|
||||||
|
marketSharePct: 13,
|
||||||
|
priceIndex: 1.0,
|
||||||
|
segmentMix: { hyperscaler: 0.35, telco: 0.40, enterprise: 0.25 },
|
||||||
|
},
|
||||||
|
{
|
||||||
|
region: "Europe",
|
||||||
|
lagYears: 1.0, // 4 quarters — telco procurement cycles, regulatory compliance
|
||||||
|
marketSharePct: 14,
|
||||||
|
priceIndex: 1.12, // 12% premium (CE/RoHS compliance, smaller volumes, channel markup)
|
||||||
|
segmentMix: { hyperscaler: 0.25, telco: 0.45, enterprise: 0.30 },
|
||||||
|
},
|
||||||
|
{
|
||||||
|
region: "Rest of World",
|
||||||
|
lagYears: 1.5, // 6 quarters
|
||||||
|
marketSharePct: 3,
|
||||||
|
priceIndex: 1.05,
|
||||||
|
segmentMix: { hyperscaler: 0.20, telco: 0.50, enterprise: 0.30 },
|
||||||
|
},
|
||||||
];
|
];
|
||||||
|
|
||||||
export function computeRegionalAdoption(
|
export function computeRegionalAdoption(
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user