Do not trust us. Check it.
Most published track records are self-asserted: you have to take the publisher's word that what they show you today is what they actually said yesterday. Shishin removes that trust requirement. Every day, the published signals and net asset value are written into a public, tamper-evident, timestamped record that anyone can check with open tools. The source of truth is the public log, not this page.
What this proves, and what it does not
It proves that each day's published signals and NAV were committed to at a specific time, so calling a move in advance is provable, and that the published record has not been altered since.
It does not prove that any trade was a real broker fill. The Shishin track record is paper-traded. This record attests the predictions, not executions, and it says nothing about future profitability. What it gives you is falsifiability of the published record, which is the claim a research publisher should be held to.
How it works: commit, then reveal
Each trading day is recorded in two steps, on two clocks. A cryptographic hash reveals nothing about its input, which is what makes this possible.
- Commit, the same day. The day's payload (signals, NAV, a ledger digest, and a random nonce) is hashed together with the previous day's hash, and only that hash is published, then timestamped against the Bitcoin blockchain with OpenTimestamps. The random nonce makes the picks impossible to brute-force, so this leaks no signal while locking in what was chosen and when.
- Reveal, after the free-tier delay. Once a day's signals are already available to free users, the full payload is published, so the public log never front-runs the paywall. Anyone can then recompute the hash and confirm it matches the commitment that was timestamped earlier.
The hash chain
Each day folds in the previous day's hash, so altering any past day breaks every later hash:
H[t] = SHA256( canonical(payload[t]) || "|" || H[t-1] )
canonical is the payload serialized as compact JSON with sorted keys and every number written as a string, so the result is reproducible in any language. The first day chains from a documented genesis value, SHA256("shishin-attestation/v1").
Verify it yourself
- Open the public log: github.com/Azoq/shishin-attestation.
- Pick a revealed day in
reveals/and its commitment inchain/. - Run the included
verify.py(standard library only), or recompute the SHA-256 by hand:python verify.py 2026-06-27
- It recomputes the chained hash from the revealed payload and the previous day's hash and checks it against the published commitment. To confirm the timestamp independently, install the OpenTimestamps client and run
ots verify chain/<date>.json.ots.
The same evidence underpins the track record: a published backtest and a live, paper-traded forward record, with the daily predictions now independently falsifiable rather than asserted.
The ledger, in raw form
The full paper-traded trade ledger behind the record, every entry, exit, hold time, and result, is published as machine-readable data: JSON or CSV. It is the same locked ledger rendered on the track record, so the page and the download can never disagree.
Frequently asked
What does Shishin's /verify page prove?
It proves that each day's published signals and NAV were committed to at a specific time and have not been altered since. Shishin publishes a SHA-256 hash of each day's record, chained to the previous day and timestamped against the Bitcoin blockchain, in a public repository. Anyone can recompute the hash from the later-revealed data and confirm it matches the timestamped commitment.
Does verification prove the trades were real?
No. The Shishin track record is paper-traded. The attestation proves the predictions existed at a given time and are unaltered; it does not prove that money changed hands. It is falsifiability of the published record, which is the claim that matters for a research publisher, not proof of live execution.
Why are the signals revealed on a delay?
The committed hash is published immediately and reveals nothing about the picks (a random nonce makes them impossible to brute-force), so calling a move in advance is provable on the day. The readable signals are revealed only after the free-tier delay, so the public log never gives paid subscribers' signals away early.
How can I check it myself?
Open the public attestation repository, pick a revealed day, and run the included verify.py (standard library only) or recompute the SHA-256 by hand. It reads the revealed payload and the previous day's hash, recomputes the chained hash, and checks it against the published commitment. The OpenTimestamps proof confirms the timestamp independently of Shishin.