Cómo verificar el historial de Vectorial Stocks
Cada pick anunciado de Vectorial Stocks queda en una cadena de hashes SHA-256 —ticker, precio y fecha, cada uno enlazado al anterior— y cada eslabón se atestigua en Ethereum Attestation Service sobre la red Base. Cualquiera puede descargar /picks-ledger.json, recalcular la cadena con el script de esta página y compararla con las atestaciones en Base. La verificación prueba que un pick no se editó después; no prueba cuándo se decidió ni incluye la tesis.
La cadena hoy
La cadena pública tiene 179 picks anunciados y 179 de ellos tienen su atestación en Base. Solo incluye picks ya anunciados: cada pick entra a la cadena pública el día en que se anuncia.
Hash del último eslabón (el script debe imprimir este mismo valor):
b287ddbbeac6a73a151899f2b91efda82d33a2743689a7caa29383aada5a8cf5La fórmula
Cada eslabón se calcula con los datos del pick y el hash del eslabón anterior. El primero parte de 64 ceros.
hash₀ = 0000…0000 (64 ceros)
hashₙ = SHA-256( ticker | precio | fecha | hashₙ₋₁ )- ticker: el símbolo tal como aparece en el libro, por ejemplo UBS.
- precio: el precio de entrada por acción en dólares, como número sin ceros de relleno (39.76, no 39.760; 100, no 100.00).
- fecha: el día de la decisión, en formato AAAA-MM-DD.
- Los cuatro campos se unen con una barra vertical (|), sin espacios; se aplica SHA-256 al texto en UTF-8 y el resultado, en hexadecimal, es el hash del pick.
Ejemplo resuelto con el pick #1 (UBS, 39.76, 4 de marzo de 2026):
SHA-256("UBS|39.76|2026-03-04|0000…0000")
= a6cedc77391539cd8653bb1a61430ca3fb2fd5abbf58cc00185e35e065e7892dLa atestación en Base
Además, cada pick se registra en Ethereum Attestation Service (EAS), un contrato público en Base, la red de capa 2 de Ethereum. La atestación guarda el ticker, el precio, la fecha, el número de pick y el hash de la cadena, y no se puede revocar ni editar.
- Red y contrato EAS
- Base · EAS 0x4200000000000000000000000000000000000021
- Esquema
- string ticker, uint256 price, string date, uint256 pickNumber, bytes32 chainHash
- UID del esquema
- 0x7e94bb9245e7dd9242e4f251ed5b28a00ac6fcefd6f8f403a33dd18893cc8494
- Atestador (la cuenta que firma)
- 0x3fB301C378EdfF40d957E2Eec7ec2EEF969cda18
- Revocable
- No
En la atestación el precio va en centavos, como número entero (39.76 → 3976), porque el campo es uint256. El número de pick es la posición en la cadena: 1, 2, 3…
Ejemplo: la atestación del pick #1 en el explorador de EAS. Ver la atestación del pick #1 (UBS)
Recalcula la cadena tú mismo
Este script descarga /picks-ledger.json y recalcula cada hash desde cero. Guárdalo como verificar.mjs y ejecútalo con Node 18 o más reciente; no necesita dependencias.
// Node 18+: node verificar.mjs
import { createHash } from "node:crypto";
const url = "https://vectorialdata.com/picks-ledger.json";
const ledger = await (await fetch(url)).json();
let prev = "0".repeat(64); // génesis: 64 ceros
for (const p of ledger) {
const input = `${p.ticker}|${p.price}|${p.date}|${prev}`;
const hash = createHash("sha256").update(input).digest("hex");
if (p.previous_hash !== prev || p.hash !== hash) {
throw new Error(`Pick #${p.pick_number} (${p.ticker}): el hash no coincide`);
}
prev = hash;
}
console.log("OK", ledger.length, "picks", prev);Si termina con OK, cada hash del libro corresponde a su ticker, su precio y su fecha, y cada eslabón apunta al anterior. El último hash impreso debe coincidir con el de «La cadena hoy».
Compara con Base
- Descarga la lista de picks con el UID de la atestación de cada uno: /api/v1/verify/picks
- Busca un UID en base.easscan.org y comprueba que el atestador y el UID del esquema sean los de arriba.
- Compara el campo chainHash de la atestación con el hash que calculó el script para ese pick; la atestación lo muestra con el prefijo 0x.
También puedes revisar los picks uno por uno en la página de verificación
Límites: lo que esta verificación no prueba
Preferimos decirlo nosotros.
- La tesis no se atestigua. La cadena y la atestación solo cubren ticker, precio, fecha, número de pick y hash. El texto de la tesis y del riesgo no forma parte de la cadena, así que la cadena no prueba que no haya cambiado.
- Los primeros 27 picks se atestiguaron en lote. Los picks #1 a #27 (del 4 al 31 de marzo de 2026) se registraron en Base el 1 de abril de 2026, entre las 13:00 y las 13:04 UTC. Desde el #28, cada pick se atestigua el mismo día de su fecha de decisión o al día siguiente (hora de Ciudad de México).
- La atestación es posterior a la apertura. El precio registrado es el de apertura del día de la decisión, y la atestación se hace horas después, a veces tras el cierre del mercado. Prueba que el pick no se editó desde ese momento; no prueba que se decidió antes de que abriera el mercado.
- El modelo entra antes del anuncio. El portafolio modelo registra cada pick en su fecha de decisión, al precio de apertura de ese día. Los anuncios salen después y en orden, por una fila de un pick por día hábil (entre las 9:00 y las 12:59, hora de Ciudad de México), así que un pick puede anunciarse días o semanas después de entrar al modelo. Quien compra al recibir el anuncio paga otro precio.
- Algunos picks tienen más de una atestación. Por reintentos al registrar, 17 números de pick (por ejemplo, #28 y #29) tienen dos o más atestaciones en Base con los mismos datos. La que cuenta es la que aparece en /api/v1/verify/picks.
- Es un historial joven. El primer pick es del 4 de marzo de 2026. Una cadena verificable muestra qué se publicó y cuándo; no dice si la estrategia funciona.
Cómo se calcula el rendimiento del modelo: Metodología