Dalil - Guia Completa
Documentacion tecnica de como funciona el sistema de inteligencia inmobiliaria de Dubai. Todo lo que necesitas saber para entender las metricas y decisiones.
🎯 1. Vision General
Dalil es una plataforma de inteligencia inmobiliaria para el mercado de Dubai. Combina datos de listings activos con transacciones reales del Dubai Land Department (DLD) para calcular el valor justo de propiedades y generar senales de inversion.
Que Problema Resuelve
En Dubai, los precios de venta/alquiler publicados son "asking prices" - lo que el vendedor quiere. Pero las transacciones reales (registradas en DLD) muestran lo que realmente se paga. Dalil cruza ambos datos para identificar:
- Propiedades sobrevaloradas - Asking price muy por encima de transacciones reales
- Oportunidades de inversion - Propiedades bajo precio de mercado
- Tendencias de mercado - Zonas subiendo o bajando de precio
Flujo de Datos
📊 2. Fuentes de Datos
PropertyListing (Listings Activos)
Propiedades actualmente en venta o alquiler. Se obtienen de PropertyFinder via scraping.
| Campo | Descripcion |
|---|---|
price | Precio pedido (asking price) en AED |
purpose | for-sale o for-rent |
bedrooms | Numero de habitaciones (0 = Studio) |
area_sqft | Area en pies cuadrados |
location | Referencia a Location (zona) |
completion_status | ready u off-plan |
furnished | furnished, unfurnished, partly |
listed_date | Fecha de publicacion |
signal | Senal calculada (STRONG_BUY, BUY, etc.) |
investment_score | Puntuacion 0-100 |
PropertyTransaction (Transacciones Reales)
Transacciones registradas en Dubai Land Department. Estos son precios reales pagados, no asking prices. Es nuestra fuente de verdad para calcular fair value.
| Campo | Descripcion |
|---|---|
price | Precio real de la transaccion en AED |
transaction_date | Fecha de la transaccion |
purpose | for-sale o for-rent |
location | Zona donde ocurrio |
building_name | Nombre del edificio |
bedrooms | Numero de habitaciones |
area_sqft | Area de la propiedad |
Conclusion: El listing esta un 14% por encima del mercado real.
Location (Jerarquia de Zonas)
Dubai se organiza jerarquicamente. Cada location tiene un parent.
💰 3. Fair Value (Valor Justo)
El Fair Value es nuestra estimacion del precio real de mercado basado en transacciones. No es el asking price, sino lo que realmente se paga por propiedades similares.
Como se Calcula
Por que mediana y no promedio? La mediana es mas robusta ante outliers. Si hay una transaccion atipica de 500K entre varias de 150K, el promedio se distorsiona pero la mediana no.
Fuentes de Fair Value (en orden de prioridad)
| Prioridad | Fuente | Confianza |
|---|---|---|
| 1 | Transacciones en mismo edificio + mismo BR | Alta |
| 2 | Transacciones en misma subcommunity + mismo BR | Media-Alta |
| 3 | Transacciones en community padre + mismo BR | Media |
| 4 | Listings activos similares (fallback) | Baja |
Ejemplo Completo
Paso 1: Buscar transacciones de alquiler en Sadaf 4, 2BR, ultimos 6 meses
Resultado: 3 transacciones - 125K, 130K, 128K
Paso 2: Calcular mediana = 128,000 AED
Paso 3: Generar rango
- Low: 115,200 (128K * 0.90)
- Median: 128,000
- High: 140,800 (128K * 1.10)
Conclusion: El asking price de 140K esta justo en el limite alto. Es negociable hacia 128-130K.
🚦 4. Signals (Senales de Inversion)
Los Signals son recomendaciones de inversion basadas en multiples factores. Van mas alla del precio - consideran yield, momentum, riesgo, etc.
Tipos de Signal
| Signal | Badge | Significado | Accion |
|---|---|---|---|
STRONG_BUY |
Comprar | Oportunidad excepcional. Precio muy bajo, buenos fundamentales. | Actuar rapido, hacer oferta |
BUY |
Buena Opcion | Buen deal. Precio bajo mercado con riesgo aceptable. | Considerar seriamente |
NEGOTIATE |
Negociar | Precio justo pero hay margen. Mercado equilibrado. | Negociar 5-10% descuento |
WAIT |
Esperar | Precio alto o condiciones desfavorables. Puede bajar. | Monitorear, no urgente |
AVOID |
Evitar | Sobreprecio significativo o alto riesgo. | Buscar alternativas |
Factores que Afectan el Signal
Ejemplo de Generacion de Signal
Fair Value: 88K (mediana de transacciones)
Diferencia: +8% sobre mercado
Factores adicionales:
- Zona con momentum positivo (+5% ultimos 30 dias)
- Alto volumen de transacciones (12/mes)
- Listing lleva 45 dias (moderado)
Signal: NEGOTIATE
Razon: Precio ligeramente alto pero zona en tendencia positiva. Negociar hacia 88-90K seria fair.
🎯 5. Deal Score (Puntuacion)
El Deal Score es una puntuacion de 0-100 que indica que tan buena es la oportunidad. Es un resumen numerico de multiples factores.
Rangos de Score
| Rango | Visual | Interpretacion |
|---|---|---|
| 70-100 | 85 | Excelente. Oportunidad clara, precio bajo mercado. |
| 40-69 | 55 | Moderado. Precio justo, considerar negociacion. |
| 0-39 | 25 | Bajo. Sobreprecio o riesgo alto. Precaucion. |
Formula de Calculo
📈 6. Confidence Level (Nivel de Confianza)
El Confidence Level indica que tan fiables son nuestros calculos. Depende principalmente de cuantas transacciones comparables tenemos.
Niveles
| Nivel | Transacciones | Significado |
|---|---|---|
| HIGH | 5+ transacciones | Datos solidos. Fair value muy confiable. |
| MEDIUM | 3-4 transacciones | Datos razonables. Fair value aproximado. |
| LOW | 1-2 transacciones | Pocos datos. Usar con precaucion. |
Importante: Cuando confidence es LOW, el deal score se penaliza automaticamente (multiplicado por 0.85). Esto refleja la incertidumbre en nuestras estimaciones.
🏘️ 7. Comparables (Comps)
Los Comparables son transacciones similares que usamos como referencia. Son la base de todo el analisis de fair value.
Tipos de Comps
Criterios de Comparabilidad
| Criterio | Importancia | Tolerancia |
|---|---|---|
| Misma location | Critico | Exacto o parent |
| Mismo purpose (rent/sale) | Critico | Exacto |
| Mismo bedrooms | Alto | Exacto |
| Fecha reciente | Alto | Ultimos 180 dias |
| Property type | Medio | Similar |
| Area sqft | Medio | +/- 20% |
📉 8. Metricas de Mercado
Days on Market (DOM)
Dias desde que se publico el listing. Indica demanda y pricing correcto.
| DOM | Interpretacion |
|---|---|
| 0-14 dias | Listing fresco. Posible alta demanda o buen precio. |
| 15-45 dias | Normal. Tiempo tipico de mercado. |
| 46-90 dias | Prolongado. Posible sobreprecio. |
| 90+ dias | Stale. Probablemente sobrevalorado. Buen poder de negociacion. |
Market Momentum
Compara ultimos 30 dias vs 30 dias anteriores para detectar tendencias.
Inventory Pressure
Meses de inventario disponible. Indica si es mercado de compradores o vendedores.
Rental Yield (Para compra)
Retorno anual del alquiler vs precio de compra. Metrica clave para inversores.
🔍 9. Filtros y Busqueda
Filtros Disponibles
| Filtro | Valores | Descripcion |
|---|---|---|
| Purpose | for-rent, for-sale | Alquiler o compra |
| Bedrooms | 0 (Studio), 1, 2, 3, 4, 5+ | Numero de habitaciones |
| Price Range | Min - Max AED | Rango de precio |
| Property Type | Apartment, Villa, Townhouse, etc. | Tipo de propiedad |
| Furnished | furnished, unfurnished, partly | Estado de amueblado |
| Completion | ready, off-plan | Listo o en construccion |
| Occupancy | VAC (Vacant), TEN (Tenant) | Ocupado o vacio |
| Amenities | BA, GY, SP, SV, etc. | Caracteristicas especificas |
Codigos de Amenities
| Codigo | Amenity |
|---|---|
| BA | Balcon |
| MR | Maid Room |
| PG | Private Garden |
| PP | Private Pool |
| GY | Gimnasio |
| SP | Shared Pool |
| SV | Sea View |
| MV | Marina View |
| BKV | Burj Khalifa View |
| HFL | High Floor |
| PA | Pets Allowed |
| CP | Covered Parking |
| SC | Security 24h |
| VAC | Vacant (disponible) |
| TEN | Tenanted (alquilado) |
⚙️ 10. Arquitectura Tecnica
Stack Tecnologico
| Componente | Tecnologia |
|---|---|
| Backend | Django 5.x + Python 3.12 |
| Database | PostgreSQL |
| Server | Gunicorn + Nginx |
| Frontend | Django Templates + Vanilla JS |
| Scraping | Management Commands |
Modelos Principales
Servicios Clave
core/services/listing_intelligence.pyCalcula fair value, deal score, comps, confidence para cada listing.
core/management/commands/scrape_propertyfinder.pyObtiene listings activos de PropertyFinder y los guarda en DB.
APIs
| Endpoint | Descripcion |
|---|---|
GET /api/search/ | Busqueda de propiedades con filtros |
GET /api/properties/ | Lista de propiedades (legacy) |
GET /api/properties/{id}/ | Detalle de propiedad |
GET /api/locations/search/ | Autocomplete de zonas |
GET /api/stats/ | Estadisticas generales |
URLs Principales
| URL | Vista | Descripcion |
|---|---|---|
/ | Lab Dashboard | Dashboard principal con metricas |
/search/ | Property Search | Buscador estilo marketplace |
/properties/{id}/ | Property Detail | Detalle con analisis completo |
/trading/ | Trading View | Vista para traders/inversores |
/market/ | Market Explorer | Explorador de mercado |
/glossary/ | Glossary | Esta pagina |