Metodología Última actualización: 8 oct 2026
Cómo se hace Smart Finance
De dónde sale cada número, qué tan fresco está, qué hace y qué no hace la IA, y cómo se corrigen los errores. Esta página cambia cada vez que cambia el sitio.
Datos: qué uso y de quién
Cada superficie muestra un chip de fuente con el proveedor, el retraso y la hora de la última actualización. Estas son las cadencias reales, tomadas del código que sirve los datosla carpeta /api del sitio.
| Superficie | Fuente | Actualización | Retraso / notas |
|---|---|---|---|
| Acciones y ETF de índices (SPY, QQQ, DIA, AAPL, MSFT, NVDA, AMZN) en el pulso del home, /mercado y las fichas | Twelve Data, una sola petición en lote (Yahoo Finance como respaldo) | Cada 15 minutos (caché en servidor y CDN) | Precios con al menos 15 minutos de retraso; el cambio es contra el cierre anterior |
| Cripto (BTC, ETH, XRP, SOL) | CoinGecko | Cada 15 minutos | El cambio son las últimas 24 horas; precio en dólares |
| Divisas (USD/MXN, EUR/MXN, CHF/MXN, EUR/USD, GBP/USD, USD/JPY) y el VIX | Yahoo Finance | Cada 15 minutos | Al menos 15 minutos de retraso |
| El mercado mexicano (S&P/BMV IPC y el ETF NAFTRAC) en /es/mercado y en sus fichas | Yahoo Finance | Cada 15 minutos | Unos 20 minutos de retraso. Hay días en que Yahoo no sirve barras intradía de la BMV: entonces la ficha enseña el último cierre, y el chip de fuente dice de cuándo es ese cierre |
| Gráficas de 1D a 5A y sparklines | Yahoo Finance | Gráficas con caché de 60 segundos; sparklines de 15 minutos | 1D es UNA sesión en barras de 5 minutos, cortada por el día de la propia bolsa, así que en fin de semana ves entero el último día hábil. La gráfica dice qué sesión está enseñando |
| Posiciones del portafolio (/es/portafolio) y del Reto Actinver (/es/actinver) | Yahoo Finance a través del propio endpoint de gráficas del sitio; las posiciones y su tesis son un archivo del código del sitio que edito a mano | La página se sirve con el valor del cierre anterior, que una tarea programada escribe en el repositorio cada noche hábil; el navegador lo refresca después con el último precio | Los precios de la bolsa mexicana van con unos 20 minutos de retraso y los de EE. UU. con al menos 15. El Reto Actinver es un concurso que se juega con dinero ficticio |
| En qué fase va el Reto Actinver (Smart Finance Projects, /es/research) | El calendario 2026 que Actinver publica en retoactinver.com, con la fecha en que se consultó escrita en la página | No está escrita en la página: se calcula con la fecha de hoy en Ciudad de México, en el servidor al construir el sitio y otra vez en tu navegador al abrirla | Ninguno: no se pide ningún dato. La regla vive en un solo módulo con sus pruebas, así que una página que lleve meses sin desplegarse sigue nombrando la fase correcta y no la que era verdad el día en que se construyó |
| Tasas de referencia (tasa objetivo de Banxico, rango de la Fed) | Anuncios del Banco de México y de la Reserva Federal, que capturo a mano | Tras cada decisión; se muestra la fecha de verificación (hoy 2026-10-08) | Se ocultan solas si la verificación tiene más de 60 días |
| Noticias explicadas (/es/noticias) y la historia de hoy en el inicio | RSS de Bloomberg Markets; la explicación la escribe Claude y la revisa con mis reglas, en mi propia sesión de Claude Code — no por la API de Anthropic | Hasta tres al día | Una noticia sale solo si pasa la revisión: su fuente tiene que estar en el feed vivo de Bloomberg (lo comprueba el servidor), cada cifra, nombre y fecha tiene que salir del titular o de su resumen, y no puede recomendar nada. Cada noticia dice quién la revisó y enlaza al original |
| “Explícame esto” (noticias, fichas de activo, gráficas, glosario, lecciones) | Apagado desde el 1 de octubre de 2026 | — | Corría con la API de Anthropic, y este sitio ya no gasta en ella. El código sigue en el sitio (api/_lib/ia.js) por si vuelve |
| Etiquetas de mercado abierto / cerrado | Se calculan con el horario regular de la NYSE (9:30–16:00 ET) y el de la BMV, en un solo módulo con pruebas (src/lib/market/bmv.mjs) | En cada carga de página, en tu navegador | Lunes a viernes, sin feriados: una orientación, no una promesa. La BMV no tiene horario fijo: opera 7:30–14:00 mientras Estados Unidos está en horario de verano y 8:30–15:00 el resto del año, porque homologa su sesión con Nueva York y México ya no cambia de hora. Ninguna de estas horas está escrita en esta página —se calculan—, y el día en que se construyó (31 oct 2026) la sesión era 7:30–14:00 en la Ciudad de México |
| Boletín semanal | Los mismos datos del sitio más la noticia aprobada esa semana; se envía con Resend | Domingos a las 8:00 CDMX (14:00 UTC) | Doble confirmación; enlace para darse de baja en cada correo. Cada número queda además publicado como página en /es/boletin, con los precios que llevaba ese domingo: ahí se congelan, no se actualizan. Fue diario hasta agosto de 2026: el plan gratuito de Resend da 100 correos al día, los mismos que usan las confirmaciones de alta, así que un envío diario casi no dejaba sitio para quien se quisiera suscribir |
Cadena de respaldo y caché
- La caché es COMPARTIDA, en Redis, y ya no una copia por instancia del servidor. La diferencia es todo el asunto: el sitio corre en funciones serverless, y cada arranque en frío empezaba con la caché vacía y volvía a pedirle al proveedor, así que un día con tráfico pagaba el mismo dato muchas veces.
- De cada dato se guardan DOS copias: la fresca durante su ventana normal (15 minutos, o 60 segundos en las gráficas) y otra que dura 48 horas. Cuando el proveedor falla, esa segunda copia es lo que ves, marcada como último dato conocido en vez de un hueco.
- Al caducar una ventana, solo UNA instancia le pide al proveedorun candado de 20 segundos en Redis mientras las demás esperan o sirven la copia anterior. Si no, cada caducidad sería una ráfaga de peticiones idénticas.
- Si no hay copia previa, el chip de fuente dice “sin datos” en vez de enseñar un número inventado, y en una gráfica un aviso encima añade que se reintenta solo.
- Las acciones pasan de Twelve Data a Yahoo Finance como respaldo. Divisas, VIX y gráficas todavía no tienen segundo proveedor; es un hueco conocido.
- La cuota gratuita de Twelve Data (800 créditos al día) se cuenta por proveedor y por día. Pasando los 700 créditos el sitio deja de llamarlo hasta la medianoche UTC y sirve las acciones desde Yahoo Finance — solo, sin que nadie esté mirando.
Qué hace la IA y qué no
Sí
Claude escribe cada noticia explicada a partir de un titular real de Bloomberg y su resumen —qué pasó, por qué importa, qué activos toca y qué lección ayuda a entenderla— y después la revisa con las reglas que fijé antes de que salga. Desde el 1 de octubre de 2026 esto pasa en mi propia sesión de Claude Code y no por la API de Anthropic: el sitio ya no llama solo a ningún modelo de IA (el interruptor es src/data/ia.json). Las noticias que revisé yo dicen “revisada por mí”; las que revisó Claude dicen “revisada por Claude”. También uso Claude como asistente para redactar y editar código y texto.
No
Ninguna cifra de este sitio sale de una IA sin fuente. Las lecciones las escribo yo y listan sus fuentes con la fecha en que las revisé. Los reportes de equity research que escribo en Smart Finance Projects son míos, con Claude como asistente para manejar datos y construir las páginas, y cada número enlaza a un reporte oficial o a un conjunto de datos; la tesis, los supuestos y las conclusiones no se escriben hasta que las escribo yo, y mientras faltan la página lo dice. La IA nunca recomienda nada, y yo tampoco.
El botón “Explícame esto”
Apagado desde el 1 de octubre de 2026. Cada noticia, ficha de activo, gráfica, término del glosario y lección tenía un botón que explicaba en palabras llanas lo que estabas viendo y podía escribir tres preguntas de estudio. Estaba hecho para no poder inventar cifras —el servidor comprobaba cada número de la respuesta contra los datos del propio sitio, y pedirle qué comprar tenía una respuesta fija que mandaba a la lección de errores al invertir—, pero corría con la API de Anthropic, y este sitio ya no gasta en ella. El código sigue en el sitio (api/_lib/ia.js) por si vuelve.
Cómo se publica una noticia
Una IA escribe la noticia y una IA la revisa, con mis reglas. Dejé de aprobarlas una por una el 1 de octubre de 2026. Toda la cadena está en el código del sitioapi/news.js y api/_lib/.
- Una vez al día, Claude, en mi propia sesión de Claude Code, lee el RSS de Bloomberg Markets y escribe hasta tres noticias explicadas, usando solo lo que dicen el titular y el resumen del feed. No pasa por la API de Anthropic, así que una noticia no le cuesta nada al sitio.
- Cada una llega al servidor como borrador. El servidor busca su fuente en el feed vivo de Bloomberg y toma de ahí el titular y la hora, no del borrador; un enlace que no está en el feed se rechaza. Los borradores no son públicos: pedirlos por la vía pública devuelve un error a propósito.
- Claude revisa cada borrador con mis reglas —cada cifra, nombre y fecha tiene que estar en la fuente, nada de recomendaciones, ni pronósticos, ni exageraciones— y lo aprueba o lo rechaza. Si a un borrador le falta algo que la página necesita, aprobarlo falla y dice qué falta.
- Solo lo aprobado se sirve al sitio, y aparece en menos de un minuto. Cada noticia dice quién la revisó: “revisada por mí” las que aprobé yo, “revisada por Claude” las demás. Si reescribo una, su etiqueta cambia a “Escrito por mí”.
- Después, las aprobadas se copian al repositorio, para que cada una tenga su página permanente en el siguiente despliegue. La dirección es la misma antes y después.
Analítica: qué se cuenta y qué no
No pongo cookies y no hay cuentas, así que aquí no hay nada que te siga. Hoy solo mido qué tan rápido cargan las páginas para las visitas reales, con Vercel Speed Insights. Contar qué partes del sitio se usan, con Vercel Web Analytics, ya está listo en el código pero todavía no lo enciendo, así que hoy no se cuentan las visitas por página ni los once eventos de abajo. Los dos se sirven desde este mismo dominio y ninguno guarda un identificador tuyo. Si tu navegador manda Global Privacy Control o Do Not Track, los scripts ni se descargan.
Qué se cuenta cuando esté encendido
- Visitas por página: qué URL, en qué idioma, más o menos de dónde llegó la visita (país y desde qué sitio) y qué tipo de aparato. Sin identificador, sin cookie y sin unir una visita con la siguiente.
- Los Core Web Vitals de visitas reales (cuánto tarda una página en pintarse, si se mueve mientras carga). Para eso es Speed Insights.
- Once eventos con nombre, y solo esos once: reto del día empezado; reto del día terminado, con los puntos y cuántas rondas fueron exactas; lección terminada; pregunta de quiz contestada, con si se acertó; calculadora usada; activo seguido o dejado de seguir; comparación dibujada; término del glosario tocado; alta al boletín aceptada; reporte de research abierto; y hasta dónde se leyó ese reporte (25, 50, 75 o 100 %).
Qué no se cuenta
- Ningún correo, nunca. El alta al boletín manda un evento que dice que hubo un alta y desde qué página; la dirección va al endpoint de suscripción y a ningún otro sitio.
- Ninguno de los números que tecleas en una calculadora. El evento lleva el nombre de la calculadora y nada más.
- Tu watchlist tampoco. Vive en tu navegador y no sale de ahí; lo que se cuenta es que se siguió algún activo, un evento a la vez.
- Nada de texto libre. Cada valor que se manda pasa antes por un filtro que solo deja etiquetas cortas, así que cualquier cosa más larga o más específica se tira antes de salir.
- Sin cookies, sin huella del navegador, sin seguimiento entre sitios, sin publicidad, y nada que se venda o se comparta con nadie.
Por qué tan pocos eventos: el sitio ya tiene lecciones, herramientas, un reto diario, carteras, research y boletín, y hasta ahora nadie sabía cuál de esas cosas usaba alguien. Once preguntas se pueden contestar cada mes y hacer algo con ellas. Treinta serían un tablero que nadie mira.
Correcciones
Si algo está mal, se corrige y se registra aquí, con fecha.
- Corrección: los enlaces al código del sitio en GitHub —en /es/acerca, en esta página, en las dos páginas de cartera y en el reporte de Lululemon— le daban un 404 a cualquiera de fuera, porque el repositorio es privado desde el 6 de septiembre de 2026. Ya no están, y tampoco las frases que todavía lo llamaban público. Para reportar un error, mándame un mensaje en LinkedIn o en TikTok.
- Noticias: ahora Claude escribe cada noticia y la revisa con mis reglas, en mi propia sesión de Claude Code, y cada una dice quién la revisó. El sitio ya no llama a la API de Anthropic: los comentarios con IA en los titulares del inicio y el botón “Explícame esto” están apagados, y la tarea diaria de borradores ya no corre.
- Corrección: esta página decía varias veces que el repositorio del sitio es público. Es privado desde el 6 de septiembre de 2026; el código se describe aquí, pero no se puede consultar desde fuera.
- Corrección: el rango de la Fed del inicio y de la lista de mercados decía 3.50–3.75 %. La Reserva Federal lo subió a 3.75–4.00 % el 16 de septiembre de 2026 y aquí se actualiza ese mismo día, con la tasa de Banxico verificada otra vez (6.50 %, sin cambio el 6 de agosto). Esta página decía también que cuento visitas y once eventos con Vercel Web Analytics, que todavía no está encendido: hoy solo mide Speed Insights, y ahora el texto lo dice.
- El mercado mexicano ya tiene ficha propia: el S&P/BMV IPC y el ETF NAFTRAC, en pesos, desde Yahoo Finance y con unos 20 minutos de retraso. Hasta hoy el sitio no podía enseñar la comparación que más le enseña a quien gana en pesos —un ETF del S&P 500 en dólares contra el índice mexicano en pesos, con el tipo de cambio al lado—. Entran por los mismos endpoints gratuitos que las divisas; no se tocó ninguna cuota de pago.
- Corrección: esta página traía el horario de la BMV escrito a mano, y traía el de invierno los doce meses del año — o sea falso medio año, porque la bolsa homologa su sesión con Nueva York y México ya no cambia de hora. Las horas de la tabla salen ahora del mismo módulo que enciende las etiquetas de abierto / cerrado, así que no pueden volver a quedarse viejas; y la “última actualización” también dejó de escribirse: es la fecha de la entrada más reciente de este registro.
- El botón “Explícame esto” responde la pregunta que escribes en vez de devolverle a todas el mismo resumen del mes: el servidor lee qué se está preguntando (qué es, por qué se movió, cuánto o cuándo, comparar, un término) y arma el bloque de datos para ESA pregunta, así que “¿por qué subió hoy?” recibe la sesión de hoy y las noticias aprobadas, y no el mes.
- Avisos contextuales: una frase corta abajo, en la página donde sirve — el comparador ofrecido con los dos activos ya puestos al abrir la segunda ficha, cómo recorrer la gráfica con el dedo en la primera. Uno a la vez, se pueden cerrar, y el que se ignora tres veces se retira solo.
- La sección de research pasa a llamarse Smart Finance Projects: el equity research arriba y el Reto Actinver debajo. Las direcciones NO cambiaron (/es/research y /es/research/<empresa> son las mismas páginas de siempre), solo el nombre. En el bloque del reto, la fase se calcula con la fecha de hoy en vez de estar escrita, para que la página no pueda acabar diciendo que ya empezó la semana de práctica cuando no ha empezado.
- Publicado el botón “Explícame esto” en las noticias, las fichas de activo, las gráficas, el glosario y las lecciones. Responde solo con los datos que este sitio ya tiene, las cuentas las hace el servidor, cada cifra de la respuesta se comprueba contra esos datos antes de enseñarla, y se niega a decir qué comprar o qué vender.
- Analítica encendida, y escrita: sin cookies, sin cuentas y sin identificador — visitas por página, Core Web Vitals de visitas reales y once eventos con nombre, listados uno por uno en la sección de arriba. Si tu navegador manda Global Privacy Control o Do Not Track, no se carga nada.
- Gráficas: el 1D es ahora una sesión entera, cortada por el día de la propia bolsa, así que nunca sale vacío con el mercado cerrado; una línea encima dice qué sesión estás viendo; se puede recorrer con el dedo en cualquier momento para leer la hora, el precio y cuánto había subido o bajado; y quedan marcados el máximo y el mínimo del periodo.
- El boletín trae ahora una tabla de “qué se movió esta semana” (los que más subieron y bajaron del registro del sitio), chip de fuente en cada cifra, el tiempo de lectura de la lección y un hueco para una línea escrita por mí. Cada número se publica además como página en /es/boletin.
- Se publican las páginas de cartera: /es/portafolio (mis propias posiciones) y /es/actinver (el concurso estudiantil, con dinero ficticio). Cada posición lleva la tesis que escribí al abrirla; el valor de cada cartera se fotografía en el repositorio cada noche hábil, y ese archivo es lo que dibuja la gráfica.
- Cuatro lecciones nuevas (tu primera tarjeta de crédito, qué es una acción, cómo funciona la bolsa y los ETFs), un módulo interactivo de riesgo y retorno, y un quiz de tres preguntas al final de las diez lecciones.
- Noticias explicadas en /es/noticias: los borradores los escribe Claude a partir de titulares de Bloomberg y los reviso uno por uno antes de que salga nada, con enlace a la fuente en cada nota.
- Las lecciones pasan al diseño nuevo con dos o más fuentes verificadas cada una, rutas de aprendizaje y progreso local; glosario con ejemplos en pesos; se publican /acerca y /metodologia.
- Mercados: una ficha por activo con gráfica táctil, chip de fuente y “qué es”; sitemap generado desde el registro de rutas.
- Lecciones: última edición de las versiones anteriores; ajustes de tiempo de lectura y metadatos.
- Se publican seis lecciones en español e inglés.
Conflictos de interés
No tengo patrocinadores, anuncios, enlaces de afiliado ni menciones pagadas. Soy estudiante y no manejo el dinero de nadie. Si algún día tengo una posición en un activo del que escribo, la propia pieza lo dirá. Cualquier portafolio o reto que se publique aquí dirá si el dinero es real o simulado.
Esto no es asesoría
Todo en Smart Finance es educativo. No es asesoría financiera, de inversión ni fiscal, y no es una recomendación de comprar o vender nada. Los datos de mercado llegan con retraso y vienen de terceros; verifícalos en la fuente antes de decidir cualquier cosa. Tu situación es tuya; si necesitas asesoría, habla con un profesional con licencia.
¿Encontraste un error?
Mándame un mensaje en LinkedIn o en TikTok. Di qué página y qué número; lo corrijo y lo agrego al registro de cambios.
Atribuciones
Gráficas con TradingView Lightweight Charts (Apache 2.0). Datos: Yahoo Finance, CoinGecko, Twelve Data, Bloomberg, Banco de México, Reserva Federal. Tipografías: Geist (Vercel) y Fraunces (Undercase Type), ambas bajo la SIL Open Font License.