Institutional Quant Analyser Modo Iberia · SABI · v9.1.0
METODOLOGÍA

Cómo MALLA Quant valora una empresa

DCF Monte Carlo Scoring 0-100 Backtest histórico

Pipeline de análisis

3 motores · 1 puntuación
  1. Ingesta. Export SABI Informa de una empresa privada española. Se cruzan 5 años de cuenta de PyG, balance y cash-flow.
  2. Valoración. DCF Monte Carlo de 10 000 escenarios. Dos etapas (5 años proyección + valor terminal Gordon Growth). WACC vía CAPM con parámetros configurables por entorno geográfico.
  3. Calidad & salud. ROIC, márgenes, Piotroski F-Score, Altman Z, ratios de cobertura. CapEx outliers y tendencias de deterioro disparan alertas en el DCF.
  4. Valoración alternativa. EV/EBITDA sectorial + NAV. Se eleva a recomendada cuando el DCF deja de ser fiable.
  5. IberiaScore 0-100. Tres tiers (50/30/20) con métricas adaptadas a empresa privada: pilares del valor, estructura/riesgo y crecimiento/DCF.

Fórmulas del modelo

DCF · WACC · Gordon · Piotroski · Altman
Valor intrínseco DCF dos etapas (lo que devuelve P10/P50/P90): $$\text{Valor}_0 \;=\; \sum_{t=1}^{N} \frac{\text{FCF}_0\,(1+g)^t}{(1+\text{WACC})^t} \;+\; \frac{\text{FCF}_N\,(1+g_T)}{(\text{WACC} - g_T)\,(1+\text{WACC})^N}$$ N=5 años de proyección y g_T es una distribución triangular en [1.5%, 3.5%]. Cada simulación Monte Carlo (10 000) sortea WACC ~ N(μ, σ) y g ~ N(μ, σ).
WACC vía CAPM apalancado con escudo fiscal: $$\text{WACC} \;=\; \frac{E}{V}\,k_e \;+\; \frac{D}{V}\,k_d\,(1-\tau)$$ con k_e = R_f + β\,\text{ERP} (cost of equity vía CAPM), k_d = gastos financieros/deuda, τ = tipo efectivo desde Impuestos sociedades / BAI (cap 40%).
Valor terminal (Gordon Growth, perpetuidad): $$\text{VT} \;=\; \frac{\text{FCF}_{N+1}}{\text{WACC} - g_T} \quad\text{con}\quad g_T < \text{WACC}$$ Si WACC ≤ g_T (anomalía), aplicamos múltiplo de salida 15× FCF como fallback.
Margen de Seguridad (Iberia): $$\text{MoS} \;=\; \frac{\text{DCF}_{P50} - \text{EV}_{\text{real}}}{\text{DCF}_{P50}}$$ EV real = Equity + Deuda financiera − Caja (no equity contable). Si EV ≤ 0 (caja neta > deuda) → MoS = 100%.
Altman Z' (modelo para empresas privadas — Z' = 0.717·X1 + 0.847·X2 + 3.107·X3 + 0.420·X4 + 0.998·X5): $$Z' \;=\; 0.717\,\frac{\text{WC}}{\text{TA}} + 0.847\,\frac{\text{RE}}{\text{TA}} + 3.107\,\frac{\text{EBIT}}{\text{TA}} + 0.420\,\frac{\text{Equity}}{\text{Liab.}} + 0.998\,\frac{\text{Sales}}{\text{TA}}$$ Bandas: Z' > 2.9 zona segura · 1.23-2.9 gris · < 1.23 alto riesgo de quiebra.
EV/EBITDA implícito (valoración alternativa, con haircut por iliquidez): $$\text{EV}_{\text{implícito}} \;=\; \text{múltiplo}_{\text{sector}} \times \text{EBITDA} \times (1 - h_{\text{iliquid}})$$ h = 25% en empresas privadas (convención Damodaran), 0% en cotizadas. Equity implícito = EV − Deuda neta.
Crecimiento sostenible (SGR = Reinvestment × ROE): $$\text{SGR} \;=\; \text{ROE} \times b \quad\text{con}\quad b = 1 - \text{Payout} = \frac{\Delta\,\text{Equity}}{\text{Net Income}}$$ El máximo que la empresa puede crecer sin recurrir a financiación externa adicional.
Estabilidad del margen (v10, calidad de beneficios): $$\text{CV} \;=\; \frac{\sigma(\text{Op Margin}_{1..n})}{\overline{\text{Op Margin}}_{1..n}}$$ Bajo CV = beneficios predecibles = calidad alta. Bandas: CV < 0.15 muy estable, CV < 0.30 estable, CV > 0.80 muy volátil.
OCF ajustado por circulante (v10.2, empresas SABI): $$\text{OCF} \;=\; (\text{Resultado neto} + \text{Amortización}) \times (1 - h_{WC})$$ La línea Cash flow de SABI es solo resultado neto + amortización: ignora el efectivo que el crecimiento inmoviliza en circulante. Aplicamos un haircut estructural acotado h_WC ∈ [0, 50%]: $$h_{WC} \;=\; \frac{\text{intensidad}_{WC} \times \sum \max(\Delta\text{Ventas}, 0)}{\sum \text{OCF pre-circulante}}$$ con intensidad_WC = (Clientes + Existencias − Proveedores) / Ventas (media ponderada por ventas). El crecimiento de ventas no orgánico (saltos > 100% interanual, típicos de M&A) se acota antes de sumarlo. Es asimétrico: solo el crecimiento drena caja; la liberación de circulante de una empresa en declive es un efecto puntual y no se computa como flujo recurrente.

Parámetros del modelo

Defaults editables vía env vars
Rf US
4.50%
^TNX live o fallback · MALLA_US_RISK_FREE_RATE
ERP US
5.50%
Damodaran · MALLA_US_EQUITY_RISK_PREMIUM
Rf EUR
2.50%
Bund 10Y — live vía ECB, fallback 2.50% · MALLA_EUR_RISK_FREE_RATE
ERP EUR
6.50%
Damodaran España · MALLA_EUR_EQUITY_RISK_PREMIUM
Tax EUR
25%
España · MALLA_EUR_CORP_TAX_RATE
Sims Monte Carlo
10 000
Por análisis

Limitaciones conocidas

Transparencia metodológica
  • v10.2 — OCF ajustado por circulante: la línea Cash flow de SABI (resultado neto + amortización) ignora la variación de circulante, así que sobrestima la caja operativa de una empresa en crecimiento — que financia la expansión inmovilizando efectivo en clientes y existencias. Aplicamos un haircut estructural acotado a [0, 50%]: la intensidad de circulante (Clientes+Existencias−Proveedores sobre Ventas, ponderada por ventas) multiplicada por el crecimiento orgánico acumulado de ventas, dividida por el OCF pre-circulante acumulado. No usamos el delta de balance año-contra-año en crudo: en los exports SABI ese delta es ruido dominado por reclasificaciones (ACERINOX muestra un salto de circulante de €239M en un año sobre €1.7B de ventas). El haircut es multiplicativo y no negativo: solo reduce el OCF, nunca lo infla ni convierte en positivo un año operativo negativo. Es asimétrico — la liberación de circulante de una empresa en contracción es un efecto stock puntual, no un flujo sostenible, y no se acredita (acreditarlo inflaría el DCF de empresas en declive: Pescanova mostraría OCF +€28M en un año de pérdidas de −€14M). Efecto: DCF más bajos en todas las privadas y, en serial loss-makers como ACERINOX o Pescanova, un DCF correctamente degenerado a cero.
  • v10.1 — Scoring suavizado (sin cliffs): las funciones de puntuación pasaron de buckets escalonados (una empresa al 14.9% de margen sacaba 60, al 15.1% sacaba 80 — un salto absurdo de 20 puntos por 0.2pp) a interpolación lineal por tramos. Los anchor points se mantienen en los umbrales calibrados; solo se suaviza el espacio intermedio. El score es ahora continuo y monótono.
  • v9.6 — SGR plowback acotado a [0, 1]: ΔEquity contiene ampliaciones de capital, reducciones y conversiones de divisa, así que retained/NI en crudo puede dar 6.47 (Merlin: ampliación) o −0.13 (Iberdrola: reducción). Clampeamos al rango institucional para evitar que un evento financiero infle el growth rate del DCF.
  • v9.6 — Base FCF time-weighted con cap y floor: el viejo max(median, recent×0.7) sobrevaloraba empresas en declive (FCFs [100,120,100,40,20] daba 100). Ahora media ponderada (recientes pesan más), techo en 1.5× mediana (anti-outlier asset-sale), suelo en 0.5× promedio-2-años (respeto a la tendencia).
  • v9.6 — Terminal g EUR tightened a triangular(1.0%, 2.0%, 3.0%): antes hasta 3.5% que implicaría que la empresa crece más que toda la economía española. Ahora mode = ECB target 2%, max = techo nominal EU.
  • v9.6 — Illiquidity haircut dinámico por EBITDA scale: en lugar del 25% fijo, la escala va de 35% (EBITDA < 2M) a 10% (> 50M). Refleja que vender una micro-PyME es mucho más difícil que vender una mid-market.
  • v9.6 — NAV conservador: nueva métrica fallback = equity − intangibles − goodwill. Floor de liquidación que un fondo de turnaround usaría. Visible junto al NAV contable.
  • v9.6 — WACC economic-equity proxy: para empresas privadas con book equity << EBITDA-implied econ. equity (Iberdrola, Escribano), usamos la equity económica en los pesos del WACC. Evita underweight artificial del equity caro y sobrevaloración por debt barata. Single-pass conservador (½× sector multiple).
  • Deuda total estricta: total_debt = "Deudas financieras" + "Acreedores a L. P." y nada más. Empresas asset-light sin deuda bancaria (típico de distribuidoras pequeñas) tendrán total_debt = 0, D/E = 0 y WACC = pura cost of equity. NO mezclamos proveedores ni acreedores comerciales en la métrica de deuda — eso falsearía la leverage real. Aceptamos las variantes Deudas con entidades de crédito y Préstamos a corto/largo plazo como sinónimos.
  • SABI no proporciona un estado de flujos de caja desglosado: el OCF se aproxima desde su línea Cash flow (resultado neto + amortización), corregida por el haircut de circulante (ver v10.2 arriba). CapEx se estima como Δ(inmovilizado) + amortización con fallbacks sectoriales.
  • Backtest 1 año vía yfinance: los estados financieros pueden contener restatement. Mitigamos quitando el TTM y el ejercicio más reciente, pero look-ahead residual existe.
  • Beta = 1.0 por defecto en empresas privadas (no hay precio histórico de mercado).
  • Sentiment NLP solo disponible para tickers cotizados con news flow.
  • Una sola observación temporal no es estadísticamente significativa: usa ≥10 tickers en el backtest agregado.
Hosting UE · cifrado · Madrid · Build 9.1.0