Cómo construimos cada score, sin caja negra.
Esta página explica las fuentes, transformaciones y pesos que producen el Atalaya Score. Si una decisión de inversión depende de un número, ese número debe ser auditable. Aquí está el modelo entero.
Modelo · heuristic-v2026.04.23 · vision-v1
Fuentes
Once fuentes, ingresadas directamente.
No revendemos listings. Cada activo se ingresa de la fuente original, se normaliza a un esquema único y se expone con trazabilidad por activo. Nunca un dato sin origen. Cobertura: ~37.000 activos activos en toda España.
Solvia
REST API · POST · horario
Inventario ex-Banco Sabadell gestionado por Cerberus. Fuente principal. ~8.200 activos.
Hipoges
REST API · diario
Servicer independiente. 41 carteras bancarias incluyendo Sareb, Cibeles y Tramuntana. ~6.500 activos — segunda fuente por volumen.
Aliseda
REST API · GET · horario
Banco Santander + Blackstone. Aporta referencia catastral, coordenadas y estado de posesión. ~3.100 activos.
Rural Inmobiliario
JSON POST · diario
Grupo Caja Rural: 7 cooperativas (Cajasiete, Banco Cooperativo, Caixa Popular, Caja Viva, CR Jaén, CR Navarra, CR Extremadura). ~2.200 activos.
Servihabitat
Scrape SSR · diario
Servicer de CaixaBank. Catálogo completo scraped diariamente vía Railway. ~1.500 activos.
Unicaja Inmuebles
Listing JSP · diario
Portal REO de Unicaja Banco. Concentrado en Andalucía y Castilla-León. Precios a consultar. ~1.800 activos.
Cimenta2
Salesforce Aura · diario
Cajamar Caja Rural — la caja rural más grande de España. 54% suelos de carteras post-Sareb. ~1.100 activos.
Altamira
REST API · POST · horario
doValue (multi-banco). Subastas extrajudiciales con datos de entidad propietaria y enriquecimiento de precios. ~1.100 activos.
BOE
HTML scrape + LLM
Subastas judiciales del Boletín Oficial del Estado. Texto legal parseado con LLM → fase procesal, acreedor, depósito, ocupante vulnerable. ~760 activos.
Diglo
Drupal SSR · diario
Spin-off de Banco Santander / Yera. ~700 activos residenciales con precio.
Escogecasa
JSP iframe · diario
Portal REO de ABANCA. Foco en noroeste de España: Galicia y Asturias representan el 42% del catálogo. ~92 activos.
Score 0–100
Cinco componentes, pesos fijos, total 100.
Cada activo recibe un score entero entre 0 y 100. La suma de los pesos componentes es exactamente 100; no hay multiplicadores ni boosts ocultos. Un activo que no maximiza una componente pierde literalmente esos puntos.
| Componente | Peso | Qué mide |
|---|---|---|
| Δ vs zona | Diferencia entre €/m² del activo y la mediana €/m² de su zona (cascade postal→municipal). Penaliza activos sobre-precio aunque tengan descuento publicado alto. | |
| Estado físico | Análisis visual de fotos por modelo Haiku. Estados: óptimo, habitable, reformable, ruina. Pending_vision si no hay foto procesada (placeholder 14/25). | |
| Posesión | Libre / ocupado / cedido / dudoso. Señales fuente + parsing BOE + datos catastrales cruzados. | |
| Liquidez zona | Actividad de mercado en la zona del activo: nuevos listings/30d, rotación, demanda. Zonas alta/media/baja. | |
| Cargas legales | Hipotecas vivas, embargos, anotaciones marginales. Tres capas (A/B/C) con peso decreciente. | |
| Total | 100 | Suma fija. Sin boosts ni multiplicadores. |
Niveles del score
90–100
Exceptional
75–89
Excellent
60–74
Good
40–59
Average
20–39
Below avg
0–19
Poor
Cascade zonal
Resolución por niveles, fallback explícito.
El precio de zona usado para Δ-zona se resuelve cascadingamente. Cada nivel se intenta solo si el anterior no tiene muestra suficiente (mín. 20 transacciones por defecto). El nivel resuelto se registra en zoneRefUsed para auditoría posterior.
- 01
01 · Código postal
Mediana €/m² del CP exacto. Más preciso pero exige muestra suficiente. Fuente: dataset interno Atalaya.
- 02
02 · Barrio
Cuando CP no tiene muestra. Para grandes ciudades el barrio captura mejor variación que el municipio.
- 03
03 · Municipio
Mediana €/m² municipal de transacciones reales (no anuncios).
- 04
04 · Provincia
Último nivel del dataset interno cuando municipio no tiene muestra.
- 05
05 · MITMA
Fuente externa oficial: índices municipales del Ministerio de Transportes. Independiente del precio bancario, rompe el sesgo banco-vs-banco. Fallback final.
BOE legal parsing
Texto judicial bruto a campos estructurados.
Cada subasta BOE incluye texto legal denso. Atalaya extrae con un LLM propietario los campos clave que un inversor revisaría manualmente: NIF deudor, situación posesoria, cargas registrales, importe de salida, fecha de cierre. Schema versionado, fallback graceful si el modelo falla.
Ejecución hipotecaria · concurso · ejecución dineraria · administrativa. Define el riesgo procesal y los plazos.
Banco · servicer · administración · particular. Indica perfil del proceso y predisposición negociación.
Importe del depósito requerido para participar en la subasta y plazos asociados.
Bandera de ocupación protegida (familia con menores, persona dependiente). Riesgo regulatorio relevante.
Visión computer-vision
Estado físico inferido de las fotos del listing.
Para los activos con fotos procesadas, un subagente Haiku evalúa: estado de cocina, baños, pintura, suelos, exterior. Salida estructurada con quality score, observations y bandera de alerts. Si no hay foto disponible o el procesamiento aún no se ha ejecutado, el activo queda como pending_vision con score físico placeholder de 14/25 — visible y trazable, nunca silenciado.
Versionado
Trazabilidad por activo, sin re-escribir el pasado.
Cada score lleva el promptVersion del modelo que lo generó. Cuando el modelo cambia, los scores anteriores no se re-escriben silenciosamente: se conserva el histórico y el nuevo cálculo se etiqueta con la nueva versión. El histórico es auditable desde el detalle de cada activo.