Manual de operación
Funcionamiento, fuentes, operación diaria, estrategias, señales y cómo pasar por fases hacia operar en vivo. Versión del 17 de octubre de 2026.
1. Qué es y qué no es
Es un comité de inversión simulado: varios analistas (modelos cuantitativos y agentes de IA con la filosofía de inversionistas conocidos) opinan sobre acciones de EE. UU., y reglas deterministas convierten esas opiniones en una cartera objetivo con su riesgo controlado. Todo opera en modo paper: dinero ficticio, datos reales.
No es asesoría de inversión, ni un gestor de dinero, ni un robot que opere tu cuenta. Ninguna parte de la plataforma envía órdenes a un broker. Las señales son información para que tú decidas.
2. Cómo funciona
Cada análisis recorre siempre la misma tubería, en vivo y en backtest:
Datos point-in-time → Analistas (votos −1…+1) → Director de riesgo (CRO) → Comité (pesos) → Régimen de mercado → Límites duros → Ejecución T+1 → Bitácora
- Datos: solo se usa información publicada en la fecha del análisis. Un trimestre cuenta desde que la empresa lo presentó a la SEC, no desde que cerró.
- Analistas: cada uno devuelve una convicción entre −1 (muy bajista) y +1 (muy alcista) y su razonamiento. Si no tiene datos suficientes, se abstiene y no vota.
- CRO: calcula volatilidad, VaR, CVaR, caída máxima, beta y liquidez de cada acción, y revisa los vetos.
- Comité: combina los votos (sección 5) y propone pesos.
- Régimen: si el mercado está en modo de riesgo, multiplica toda la exposición por un factor entre 0.35 y 1.0. Nunca apalanca.
- Límites duros: máximo por posición y exposición bruta máxima. Lo que exceden queda en efectivo.
- Ejecución: una decisión tomada con el cierre del día T se ejecuta al cierre del día T+1. Así nadie opera con un precio que ya usó para decidir.
- Bitácora: cada voto se guarda y, pasadas 20 sesiones, se compara con lo que realmente pasó.
3. Fuentes de datos
Todas son públicas y gratuitas. No requieren llaves.
| Fuente | Qué aporta | Actualización | Point-in-time |
|---|---|---|---|
| Yahoo Finance | Precios diarios OHLCV ajustados por splits; eventos de split | Cada 4 h | Sí (por fecha de sesión) |
| SEC EDGAR XBRL | Ingresos, utilidades, márgenes, balance y flujo; métricas TTM (P/U, ROE, ROIC, FCF yield, deuda/capital, crecimiento) | Cada 12 h | Sí: por la fecha filed de la primera publicación |
| SEC 8-K (ítem 2.02) | Fecha real del anuncio de resultados | Cada 6 h | Sí |
| SEC Form 4 | Compras y ventas de directivos en mercado abierto | Cada 6 h | Sí (fecha de presentación) |
| FRED (Reserva Federal de San Luis) | VIX, spread high-yield, curva 10a-2a, Treasury 10a | Cada 6 h | Sí (por fecha de observación; sin revisiones) |
| Yahoo / Google News (RSS) | Titulares de los últimos 14 días | Cada 30 min | Solo recientes: en backtests el analista de noticias se abstiene |
4. Los analistas
| Analista | Tipo | Qué mira | Puede proponer cortos |
|---|---|---|---|
| Tendencia y momentum | Cuant | Precio vs. media de 200 días, momentum 12-1, cercanía al máximo de 52 semanas, cruce 50/200 | Sí |
| Calidad-valor (Magic Formula) | Cuant | Rendimiento de utilidades, retorno sobre capital, FCF yield | No |
| Piotroski F-Score | Cuant | Nueve pruebas de salud financiera año contra año | Sí |
| Compras de insiders | Cuant | Compras en mercado abierto de directivos en 90 días (las ventas pesan poco) | Sí |
| Deriva post-resultados | Cuant | Sorpresa de UPA en los 4 días siguientes al anuncio | Sí |
| Buffett, Munger, Graham, Lynch | IA | Fundamentales históricos con la filosofía de cada uno | No |
| Druckenmiller | IA | Inflexiones y asimetría | Sí |
| Chanos (forense) | IA | Calidad de utilidades, acumulaciones, deuda y dilución | Sí |
| Noticias | IA | Catalizadores en titulares recientes | Sí |
Los analistas de IA necesitan una llave de modelo configurada por un administrador. En backtests corren “a ciegas”: sin nombre de empresa ni fechas, para que no usen lo que recuerdan del futuro.
5. Cómo decide el comité
- Calibración: la confianza de las IA se multiplica por 0.8 (los modelos de lenguaje tienden a sobreestimarla).
- Confiabilidad: el peso de cada analista se ajusta según su historial (IC de rango contra el retorno a 20 sesiones), encogido hacia 1 cuando hay pocas observaciones.
- Convicción: promedio ponderado de los votos. Un analista que solo puede ir largo no puede, con un voto negativo, crear un corto.
- Consenso: se multiplica por un factor de acuerdo: si los analistas se contradicen, la convicción baja (hasta ×0.3).
- Vetos: los duros (iliquidez, precio menor a $3, cuchillo cayendo, estrés de deuda) ponen el lado largo en cero; los suaves (riesgo de cola, quema de caja) lo reducen a la mitad. No se promedian.
- Volatilidad: el score se escala por
vol objetivo / vol de 60 días(entre ×0.4 y ×1.5). - Zona muerta: scores menores a 0.06 no se operan.
- Exposición según convicción: si la convicción promedio es débil, la cartera guarda efectivo en lugar de invertirlo todo.
- Tope por convicción: ninguna acción recibe más peso que su propio score.
Después vienen el régimen de mercado y los límites duros. En la plataforma, haz clic en cualquier fila de decisiones para ver esta cascada con los números reales.
6. Operación diaria
Cada mañana (06:00 hora de la Ciudad de México)
- Las estrategias programadas corren con el último cierre y envían su señal por Telegram o webhook.
- Revisa el régimen: si pasó a “cautela” o “risk-off”, espera menos exposición.
- Revisa los cambios (entradas, salidas, aumentos, reducciones). Una señal sin cambios es normal.
- Si actúas, hazlo cerca del cierre (la plataforma asume ejecución al cierre de T+1).
Cada semana
- Abre Historial y pulsa “Actualizar retornos” para evaluar los votos de hace 20 sesiones.
- Revisa la confiabilidad: un analista en “deteriorado” pierde peso automáticamente; considera quitarlo.
- Compara la señal de la semana contra lo que esperabas del backtest.
Cada mes
- Corre de nuevo el backtest de cada estrategia con la ventana más reciente. Si el veredicto empeora, investiga antes de seguir.
- Revisa la correlación entre tus acciones: muchas correlacionadas son en realidad una sola apuesta.
7. Crear estrategias
- En Comité, elige tickers y analistas (o una estrategia de la biblioteca) y convoca. Si te convence, pulsa Guardar como estrategia. También puedes ir a Estrategias → Nueva estrategia.
- Ponle nombre, revisa el universo, los analistas y los controles de riesgo.
- Activa Programar a diario y elige los canales (Telegram, webhook).
- Pulsa Generar señal ahora para ver la primera señal.
Buenas prácticas
- Usa entre 5 y 25 acciones líquidas (más de $20 millones diarios negociados).
- Mezcla analistas que miren cosas distintas (tendencia + calidad + insiders) en lugar de varios parecidos.
- Antes de programar, corre un backtest de al menos 3 años y exige un veredicto defendible.
- Cuenta cuántas configuraciones probaste y escríbelo en “Configs probadas”: el Sharpe deflactado castiga el exceso de pruebas.
- Cambiar la estrategia cada semana para perseguir resultados es la forma más rápida de sobreajustar.
8. Señales
Una señal contiene la cartera objetivo para el siguiente cierre, los cambios frente a la señal anterior (con un umbral de 1 punto porcentual), el régimen, la exposición y, si hay IA, el memo del comité.
Telegram
- Un administrador crea un bot con @BotFather y guarda su token en Ajustes.
- Escríbele cualquier mensaje al bot desde tu Telegram.
- Obtén tu chat id (por ejemplo con @userinfobot) y guárdalo en Perfil. Pulsa “Enviar prueba”.
Webhook
Guarda una URL https:// en tu perfil. Recibirás un POST con este cuerpo:
{
"strategy": {"id": 3, "name": "Megacaps de calidad"},
"as_of": "2026-10-16", "execute_on": "siguiente cierre (T+1)",
"regime": {"label": "neutral", "multiplier": 0.933},
"gross": 0.61, "net": 0.61,
"positions": [{"ticker": "AAPL", "action": "COMPRAR", "weight": 0.163, "conviction": 0.15, "price": 343.46, "vetoes": []}],
"changes": [{"ticker": "AAPL", "type": "ENTRADA", "from": 0.0, "to": 0.163}],
"memo": "…", "disclaimer": "…"
}
El encabezado X-HF-Signature trae el HMAC-SHA256 del cuerpo calculado con tu clave de verificación, que aparece en tu Perfil. Para validarla en Python:
import hmac, hashlib
ok = hmac.compare_digest(
hmac.new(CLAVE.encode(), cuerpo_crudo, hashlib.sha256).hexdigest(),
request.headers["X-HF-Signature"])
9. Backtests y veredictos
El backtest usa exactamente el mismo código que el comité en vivo, con datos point-in-time y ejecución T+1. Cada prueba se divide por tiempo: la parte inicial (dentro de muestra) y la final (fuera de muestra, por defecto el último 30%).
| Veredicto | Significa | Qué hacer |
|---|---|---|
| DATA VALIDATED | Gana al índice en CAGR y en Sharpe, dentro y fuera de muestra | Candidata a paper forward (fase 1) |
| TRADE-OFF | Fuera de muestra gana en uno de los dos | Decide si te importa más el retorno o el riesgo; típico: menos retorno con mucha menos caída |
| NO EDGE | Fuera de muestra no gana en ninguno | No la operes. Ajustarla hasta que “funcione” es sobreajuste |
Otras métricas: PSR (probabilidad de que el Sharpe real sea positivo), Sharpe deflactado (descuenta las configuraciones que probaste), IC95 bootstrap del Sharpe y walk-forward (porcentaje de 5 ventanas consecutivas en que la estrategia superó al índice).
10. Ruta a operación en vivo
Pasar de paper a dinero real se hace por fases. Cada fase tiene una puerta de salida medible; si no se cumple, no se avanza.
Investigación
Puerta: backtest de 3+ años con veredicto DATA VALIDATED (o TRADE-OFF con caída máxima claramente menor), fuera de muestra de al menos 1 año, Sharpe deflactado ≥ 0.90 con el número honesto de configuraciones probadas, y walk-forward ≥ 60%.
Paper forward
Cómo: programa la estrategia a diario y no la toques.
Puerta: 60 sesiones o más de señales; rendimiento paper dentro del rango esperado por el backtest; ningún analista clave en “deteriorado”; cero incidentes de datos sin explicar.
Señal + ejecución manual
Cómo: ejecuta tú mismo las señales en tu broker con como máximo el 5% de tu patrimonio invertible. Registra precio de señal, precio de ejecución y comisión.
Puerta: 3 meses; el deslizamiento promedio no se come más de un tercio de la ventaja esperada; disciplina de seguir la señal ≥ 90%.
Semiautomática
Cómo (técnico): implementar un broker vivo que cumpla el protocolo
hedge_fund/brokers/protocol.py (positions(), cash(), place_order(): o llena completo o lanza error) sobre la API de Alpaca o Interactive Brokers, usando órdenes al cierre (MOC) para respetar la ejecución T+1. Reutilizar el libro paper con bitácora encadenada por hash (aihf paper), que reconcilia contra el broker y se detiene ante cualquier diferencia. Cada orden pasa por una pantalla de aprobación.Controles obligatorios: interruptor de apagado, pérdida diaria máxima, nocional máximo por orden, lista permitida de tickers, reconciliación diaria y alertas.
Estado: implementada sobre Alpaca PAPER (ver “Cómo activar la fase 3” abajo).
Puerta: 3 meses sin incidentes de reconciliación.
Automática
Cómo: un mandato escrito con vigencia (por ejemplo 30 días) que fija capital, límites y horarios; monitoreo continuo; revisión mensual obligatoria del veredicto y de la confiabilidad.
Regla: cualquier incumplimiento del mandato regresa la estrategia a la fase 3.
Cómo activar la fase 3 (Alpaca PAPER)
La fase 3 ya está implementada sobre la cuenta paper de Alpaca. El código solo acepta el endpoint https://paper-api.alpaca.markets y cuentas paper (número PA…); no existe interruptor para dinero real.
- Llaves. Crea llaves de paper trading en Alpaca y guárdalas en Ajustes → Alpaca PAPER (o como
ALPACA_API_KEY_ID/ALPACA_API_SECRET_KEYen el entorno del servidor). - Cuenta limpia. Resetea la cuenta paper al capital exacto del mandato, sin posiciones: la bitácora y Alpaca se concilian al centavo. Una cuenta por fondo.
- Desplegar. En el servidor:
aihf paper create <nombre> --mandate … --universe … --broker alpaca. Se crean las guardas con valores conservadores. - Programar la mañana (hora de Nueva York, lunes a viernes):
aihf paper tick <nombre> && aihf paper propose <nombre>. El tick registra la sesión de ayer y decide; propose convierte la decisión en órdenes pendientes. También puedes pulsar “Proponer órdenes de hoy”. - Aprobar. En la pestaña Órdenes (solo admin) aprueba o rechaza cada orden antes de las 15:50 ET. Al aprobar se revisan las guardas y la orden se envía a Alpaca como market-on-close: se ejecuta al cierre de ese día (T+1 respecto a la decisión). Lo no aprobado expira.
- Conciliar. El tick del día siguiente recoge los llenados (completos o error, sin parciales), verifica que Alpaca tenga exactamente la bitácora más esas órdenes y registra la sesión. Cualquier diferencia detiene el fondo.
Guardas (editables en la tarjeta del fondo): nocional máximo por orden, pérdida diaria máxima de la cuenta, lista permitida de tickers; además, ninguna orden puede voltear una posición de larga a corta. El kill switch detiene el fondo y cancela en Alpaca las órdenes aprobadas que sigan abiertas; “Reanudar” lo levanta después de revisar la bitácora.
Requisitos antes de tocar dinero de terceros
Mejoras de datos recomendadas para operar en vivo
- Base de datos sin sesgo de supervivencia y con estimados de consenso (por ejemplo Financial Datasets, ya soportado por el código).
- Modelo de costos y deslizamiento en el backtest.
- Rendimiento del efectivo a la tasa de bonos del Tesoro.
11. Administración
- Invitaciones: en Admin → Nueva invitación. Opcionalmente amarra el código a un correo, elige rol, vigencia (3–90 días) y cantidad. Cada código funciona una sola vez; puedes revocar los que no se han usado.
- Usuarios: suspende o reactiva cuentas y otorga o retira el rol de administrador. Nadie puede suspenderse a sí mismo.
- Ajustes: modelo de IA, llaves de proveedores y token del bot de Telegram. Las llaves se guardan en el servidor con permisos 600 y nunca se muestran completas.
- Programador: en Admin se ve su último pulso y el último error. Si una estrategia falla, no se reintenta hasta el día siguiente (para no gastar llamadas de IA en bucle).
- Servidor: droplet
hedge-1en DigitalOcean con snapshot diario; serviciohedge-webdetrás de nginx con HTTPS (Let's Encrypt, renovación automática). Despliegue conbash deploy/deploy.sh.
12. Riesgos y limitaciones
- Las señales provienen de modelos que pueden equivocarse; los modelos de lenguaje pueden inventar razonamientos aunque solo vean los datos entregados.
- Los resultados pasados, simulados o reales, no garantizan resultados futuros. Puedes perder parte o la totalidad de lo que inviertas.
- Los datos gratuitos pueden llegar tarde, faltar o contener errores; la plataforma falla de forma visible en lugar de inventar datos, pero no puede detectarlo todo.
- Las estrategias pueden deteriorarse cuando muchos participantes descubren la misma ventaja.
- La plataforma no conoce tu situación financiera, tus impuestos ni tu tolerancia al riesgo: no es una recomendación personalizada.
13. Glosario
| Point-in-time | Usar solo información que existía en la fecha analizada. |
| T+1 | Decidir con el cierre de hoy y ejecutar con el cierre de mañana. |
| Sharpe | Rendimiento por unidad de volatilidad (anualizado). Mayor es mejor. |
| PSR | Probabilidad de que el Sharpe verdadero sea mayor que cero. |
| Sharpe deflactado | PSR que descuenta haber probado muchas configuraciones. |
| VaR / CVaR 95% | Pérdida diaria que solo se supera el 5% de los días / pérdida promedio en ese 5% peor. |
| Caída máxima | Peor caída desde un máximo hasta un mínimo. |
| IC | Correlación de rango entre lo que dijo un analista y lo que pasó después. |
| Régimen | Estado del mercado (risk-on, neutral, cautela, risk-off) según VIX, crédito, curva y tendencia. |
| Exposición bruta / neta | Suma de los pesos en valor absoluto / largos menos cortos. |