El repositorio xbtlin/ai-berkshire lleva semanas circulando en círculos de inversión cuantitativa. La premisa es tentadora: un sistema para Claude Code y Codex CLI que codifica las metodologías de cuatro inversores value — Warren Buffett, Charlie Munger, Duan Yongping y Li Lu — en 18 prompts estructurados más tools Python de apoyo.

No es un bot de trading ni un backtesting framework. Es un sistema de investigación asistida por IA: le das un ticker, y el agente aplica los filtros de estos cuatro inversores para evaluar si una acción merece análisis profundo. El repositorio promete una aproximación multi-perspectiva que mitiga el sesgo de quedarte atrapado en un solo marco de análisis.

He pasado el fin de semana revisando el código, ejecutando las tools y evaluando los resultados. Esto es lo que encontré.

La arquitectura: dos capas, cuatro tools, 18 skills

El sistema se estructura en dos niveles bien diferenciados:

Capa 1: Momentum Discovery

Un screener técnico que busca señales de breakout en el universo de tickers. Tres criterios:

  • 60-day high: close > max(high[-60:]) — el precio ha superado su máximo de 60 días
  • Volume surge: volumen 5d > volumen 20d × 1.5 — el interés está aumentando
  • 30d return: contexto para evaluar la fuerza del movimiento

Esta capa es puramente técnica y funciona de forma completamente autónoma: solo necesita datos de precio y volumen.

Capa 2: Value Verification

Seis checks fundamentales que replican el filtro de los cuatro inversores value. Cada check es binario (pasa/falla) y el score final determina la señal:

  • Revenue acelerando (YoY mejora vs trimestre anterior)
  • Margen bruto expandiéndose
  • EPS beat > 10%
  • Revenue growth > 15%
  • Margen bruto > 40%
  • Margen mejora 2 trimestres consecutivos

El score /6 define la señal:

5-6BUY_8% — posición fuerte 4BUY_5% — estándar 3BUY_3% — tanteo Independent passBUY_3% — si margen 2Q mejora o EPS beat > 30%

Las tools Python (4)

El repositorio incluye cuatro herramientas funcionales que merecen análisis individual:

financial_rigor.py — La más interesante. Implementa aritmética con decimal.Decimal (no float) para cálculos financieros exactos. Verifica market cap, calcula múltiplos, hace validación cruzada multi-fuente, aplica la Ley de Benford para detección de manipulación contable, y ejecuta valoración por 3 escenarios. Es la pieza de código más sólida del repositorio.

stock_screener.py — Screener en vivo que escanea tickers específicos o una watchlist completa desde un JSON. Puede actualizar datos fundamentales de un ticker individual. Su limitación principal: sin alimentar fundamentals.json a mano, el value check (Capa 2) no funciona. Las señales se quedan en WATCH — momentum sin fundamentales.

momentum_backtest.py — Backtest histórico sobre NVDA, AMD y MU con datos hardcodeados más datos reales de Yahoo Finance. Es la tool que más revela sobre las limitaciones del framework.

🔑 Hallazgo crítico: El backtest NO detectó NVDA en su breakout de 2023 (+240% ese año). El criterio de 60d high + 1.5x volumen fue demasiado restrictivo. Una acción que subió 240% en un año no pasó el filtro del screener. Esto no es un bug — es un diseño intencionalmente conservador que elimina falsos positivos pero también se pierde los grandes movimientos.

Lo que el framework hace bien

El repositorio tiene virtudes que merecen reconocimiento:

  • Multi-perspectiva de inversión: codificar cuatro filosofías distintas (Buffett, Munger, Duan, Li Lu) en prompts separados fuerza al agente a considerar múltiples marcos antes de emitir un juicio. Es un anti-sesgo bien diseñado.
  • Mecanismos anti-sesgo integrados: el sistema incluye un info richness rating (¿cuánta información tienes realmente?), un mirror test (¿estás buscando datos que confirmen tu hipótesis?) y reverse thinking (¿qué tendría que ser cierto para que NO invirtieras?). Son patrones que cualquier gestor de riesgos conoce pero que rara vez se ven implementados en código.
  • Aritmética financiera rigurosa: el uso de Decimal en vez de float para operaciones financieras es un detalle que solo alguien que ha perdido dinero por errores de redondeo incluye.
  • Reportes multi-fuente: las herramientas de validación cruzada cruzan datos de múltiples fuentes (anuncios oficiales, agregadores financieros) y reportan discrepancias.

Las banderas rojas

Ningún análisis honesto puede ignorar los puntos débiles, y este repositorio tiene varios:

🚩 Returns auto-reportados sin verificación: El repo declara +69% en 2024 y +66% en 2025. Estos números son auto-reportados. No hay trade log, ni Sharpe ratio, ni maximum drawdown, ni win rate de la cuenta real. En mercados, los returns sin métricas de riesgo no son returns — son anécdotas.

  • Datos fundamentales introducidos a mano: la Capa 2 (Value Verification) depende de datos que alguien introduce manualmente en un JSON. Esto introduce subjetividad y selection bias. Un screener que filtra según datos que tú mismo introduces no está filtrando — está confirmando tus sesgos.
  • Sin costes de transacción ni slippage: el backtest ignora el coste real de ejecutar las operaciones. En acciones de alta liquidez como NVDA puede ser despreciable, pero el principio es peligroso: un backtest que no modela costes sobreestima sistemáticamente los retornos.
  • NVDA se perdió completamente: el hallazgo más preocupante. Un framework de inversión en tech que no detectó el mayor breakout tech de 2023 tiene un problema de diseño. No es que el criterio sea conservador — es que el criterio está calibrado para un tipo de mercado diferente.
  • 18 skills no son 18 estrategias: las skills son variaciones de prompts sobre las mismas cuatro filosofías. No hay 18 estrategias de inversión distintas. Son 18 formas de preguntar lo mismo, lo que puede crear una falsa sensación de diversidad analítica.

Para dejarlo corriendo: tres opciones

El análisis del repositorio identifica tres caminos viables para ponerlo en producción:

A) Screener diario de momentum puro (sin value layer) — Funciona 100% autónomo. Solo alerta de breakouts técnicos. No necesita datos fundamentales. Setup: 5 minutos.

B) Backtest extendido — Reescribir momentum_backtest.py con Sharpe ratio, maximum drawdown y win rate real sobre un universo amplio de tickers (no solo NVDA/AMD/MU). El código actual es demasiado limitado para conclusiones significativas.

C) Screener completo — Requiere alimentar fundamentals.json manualmente cada trimestre. Es la opción más ambiciosa pero también la que requiere más mantenimiento. El valor añadido de la Capa 2 solo se materializa si los datos son precisos y actualizados.

Mi recomendación personal: empezar con la Opción A para tener señales en marcha, y migrar a C progresivamente si las señales de momentum demuestran ser útiles. La Capa 2 sin datos frescos es ruido.

Qué aprender de este repositorio

AI Berkshire no es un sistema para copiar y pegar. Es un caso de estudio de cómo los coding agents están cambiando la investigación de inversiones. Lo que hace interesante no es que funcione (los resultados son mixtos), sino que alguien haya codificado el proceso mental de cuatro inversores legendarios en prompts y tools Python.

Eso, por sí solo, ya es un avance. Hace dos años, replicar el proceso de análisis de Buffett requería leer decenas de cartas a accionistas, años de experiencia y un equipo de analistas. Ahora es un prompt de 500 líneas y una tool de validación. La calidad del análisis sigue dependiendo del usuario, pero la barrera de entrada se ha reducido drásticamente.

El repositorio tiene bugs, limitaciones y claims no verificados. Pero también tiene ideas que merecen la pena: la multi-perspectiva como anti-sesgo, la validación cruzada de fuentes, la Ley de Benford para detección de fraude, y el diseño en dos capas (momentum + value) que separa señal técnica de verificación fundamental.

Si algo demuestra AI Berkshire es que el futuro de la inversión value no está en ignorar la IA, sino en enseñarle a los agentes a pensar como los inversores que más admiramos. Y luego someterlos al mismo escrutinio al que someteríamos a cualquier analista humano.

Repo: github.com/xbtlin/ai-berkshire