En SIKURI diseñamos GoldModel, un framework cuantitativo basado en finanzas conductuales (behavioral finance) que modela el precio del oro a través de dos dimensiones: el sentimiento del mercado (Animal Spirits Index) y las condiciones macroeconómicas (Financial Index). Este artículo desglosa la arquitectura, las fuentes, las reglas de señal y los resultados del backtest.
ADVERTENCIA: GoldModel es software educativo únicamente. No constituye asesoría de inversión ni recomendación de compra o venta de activos financieros. No es un caso de estudio ni una validación empírica de una estrategia de trading. El desempeño pasado no garantiza resultados futuros. Consulte a un asesor financiero autorizado antes de tomar decisiones de inversión.
Premisa central: El oro no se comporta como un activo financiero tradicional. Su precio responde a variables de sentimiento (miedo/euforia colectiva) y a variables macro (tasas reales, dólar, inflación). GoldModel captura ambas dimensiones en un solo framework accionable.
Arquitectura del modelo
GoldModel opera en tres capas: (1) extracción automatizada de datos desde fuentes primarias, (2) normalización y ponderación de índices, y (3) generación de señales con tamaño de posición discreto. El output principal es un archivo Excel con 9 hojas de trabajo que incluyen el modelo principal, backtest mensual, señales históricas y métricas comparativas.
Fuentes de datos
| Fuente | Dato | Cobertura |
|---|---|---|
| LBMA | Precio del oro (fixing AM/PM) | 1971–presente |
| FRED | TIPS yield, DXY, Credit Spread, Breakeven Inflation | Variable por serie |
| CFTC | Posicionamiento institucional (Managed Money) | 2006–presente |
| Yahoo Finance | GDX ETF (minería de oro) | 2004–presente |
Animal Spirits Index (V4.1)
Inspirado en el concepto de "animal spirits" de Keynes, este índice mide el sentimiento del mercado a través de tres componentes ponderados:
| Componente | Peso | Fundamento |
|---|---|---|
| Gold vs MA 12M | 40% | Momentum técnico: desviación del precio respecto a su media anual |
| GDX / Gold Ratio | 25% | Sentimiento del sector minero: las mineras anticipan movimientos del oro |
| COT Managed Money | 35% | Posicionamiento neto institucional (CFTC Commitment of Traders) |
El índice se normaliza en una escala 0–100. La interpretación sigue una lógica contraria: lecturas extremas indican puntos de inflexión.
| Rango | Interpretación | Implicancia |
|---|---|---|
| 0–25 | Pánico | Señal de compra contraria — el mercado está sobrevendido |
| 25–50 | Miedo racional | Zona de acumulación |
| 50–75 | Optimismo | Zona de distribución |
| 75–100 | Euforia | Señal de venta contraria — el mercado está sobrecomprado |
Financial Index (V4.1)
Este índice captura el entorno macroeconómico que tradicionalmente afecta al oro. Los componentes están invertidos donde corresponde (TIPS y DXY) para que un valor alto del índice indique condiciones favorables para el oro.
| Componente | Peso | Relación con el oro |
|---|---|---|
| TIPS Real Yield | 40% | Inversa — tasas reales bajas → oro sube |
| DXY (Dólar index) | 25% | Inversa — dólar débil → oro sube |
| Credit Spread | 15% | Directa — estrés crediticio → refugio en oro |
| Breakeven Inflation | 10% | Directa — expectativas de inflación → oro sube |
| GDX / Gold Ratio | 10% | Directa — mineras lideran al oro |
| Rango | Entorno macro |
|---|---|
| 0–30 | Desfavorable para el oro |
| 30–50 | Neutral débil |
| 50–70 | Neutral fuerte |
| 70–100 | Favorable para el oro |
Reglas de señal y posicionamiento
La señal final combina ambos índices. El tamaño de posición sugerido sigue principios de gestión de riesgo conservadora:
Financial > 65
Financial > 50
escenario
Financial < 50
Financial < 35
Implementación técnica
GoldModel está escrito en Python 3.8+ con dependencias mínimas. Se distribuye como paquete instalable vía pip y también puede ejecutarse directamente desde la línea de comandos.
Instalación
git clone https://github.com/Writecode4/goldmodel.git
cd goldmodel
pip install -e .
Python API
import goldmodel
results = goldmodel.run_model()
print(results['model_metrics']['CAGR_%'])
print(results['excel_path'])
CLI
python -m goldmodel
python -m goldmodel --output analisis_oro.xlsx
python -m goldmodel --no-cot --no-gdx
Output: Excel con 9 hojas de análisis
El modelo genera un archivo Excel listo para auditoría y presentación:
| Hoja | Contenido |
|---|---|
| Modelo Principal V4.1 | Todos los indicadores alineados por fecha |
| Componentes Animal Spirits | Desglose de los 3 subcomponentes del índice de sentimiento |
| Componentes Financial Index | Desglose de los 5 subcomponentes del índice macro |
| Señales Históricas | Registro completo de señales generadas |
| Backtest V4.1 | Resultados mes a mes del backtest histórico |
| Métricas Comparativas | Modelo vs benchmark (buy-and-hold de oro) |
| Reglas de Inversión | Explicación detallada de cada regla de señal |
| Metodología | Documentación del framework |
| Fuentes de Datos | Descripción y trazabilidad de cada fuente |
Métricas de backtest
Modelo V4.1 vs Buy & Hold Oro — métricas comparativas
Distribución de señales (660 meses)
Nota importante: El modelo es conservador por diseño. El 89% de las señales son NEUTRO, lo que significa que el modelo pasa la mayor parte del tiempo fuera del mercado. En el backtest histórico, no supera al buy-and-hold. Esto no invalida el framework: su valor está en la gestión de riesgo y en la identificación de los puntos extremos del ciclo de sentimiento.
Limitaciones conocidas
- Subperformance vs buy-and-hold: El modelo prioriza preservación de capital sobre rentabilidad absoluta.
- Señales mayoritariamente NEUTRO: La zona de "no hacer nada" domina, lo que puede frustrar a operadores activos.
- Validación out-of-sample limitada: El número de señales extremas es reducido, lo que dificulta la significancia estadística.
- Gaps de datos: Algunas series (TIPS, DXY) tienen cobertura histórica incompleta.
- Frecuencia mensual: El modelo opera con datos mensuales; no captura oportunidades intradía o semanales.
¿Por qué usamos behavioral finance?
Los modelos tradicionales de valoración (DCF, múltiplos) funcionan mal con el oro porque el oro no genera flujos de caja. Su precio está determinado por la psicología colectiva y las condiciones macro. GoldModel aborda esto desde dos ángulos:
- Animal Spirits: Captura el ruido emocional del mercado — el miedo y la codicia que mueven los flujos institucionales.
- Financial Index: Ancla el modelo a la realidad macro — tasas reales, dólar, inflación y riesgo crediticio.
La combinación de ambos índices permite identificar escenarios donde el sentimiento y la macro están alineados (señales fuertes) o en conflicto (NEUTRO). Es en esos momentos de alineación donde el modelo agrega valor real.
Próximos pasos
- Incorporación de datos on-chain (flujos de ETF de oro)
- Frecuencia semanal en lugar de mensual
- Machine Learning para calibración dinámica de pesos
- Señales por régimen de mercado (risk-on / risk-off)
- APIs en tiempo real para integración con dashboards