Skip to the record
RVB Partners

Public record · current to 08 Oct 2026 · 209 chained entries

Verify this record

Every marked figure on this site comes from a file in a public repository. Each file carries the hash of its own content and of the previous session, and a third-party timestamp, so the record can be checked independently. The latest broker reading in a portfolio’s header is a current reading rather than an after-close mark, and is not part of the chain.

The record, as published

Chained records
209
Portfolios
7
Published
09 Oct 2026, 11:42 UTC

What the proofs establish

And what they do not.

This proves

that no published number has been edited in place, that no session has been removed from a chain without breaking it, and that each record existed no later than the block its timestamp is anchored in. The equity curve is published in full, with each figure’s convention and risk-free rate, so any figure can be recomputed from nav.csv.

This does not prove

future performance, or that a simulated fill would have happened in a live market. A chain shows that no session has been removed since its first record. A timestamp shows that a file existed by a given block, not how much earlier. The hash chain, timestamps, signed commits and branch ruleset are used together for that reason.

What each piece rests on

Hash chain
A clone of the data repository.
Timestamps
A Bitcoin block, read with ots verify.
Commit signatures
GitHub’s signature verification.
Branch ruleset
GitHub’s repository settings.

Check it yourself, on a clone

Two commands.

The first command copies the whole published record. The second re-hashes every file the chain lists, compares each hash with the chain’s record of it, and follows each portfolio’s prev_hash back to its first record. It needs only git and python.

git clone https://github.com/rvbpartners-commits/rvbpartners-track-record-data.git
cd rvbpartners-track-record-data
python -c "
import json,hashlib,pathlib
prev={}
for line in open('CHAIN.jsonl',encoding='utf-8'):
    e=json.loads(line); p=pathlib.Path(e['file']); raw=p.read_bytes()
    assert hashlib.sha256(raw).hexdigest()==e['sha256'], p
    rec=json.loads(raw.decode())
    assert rec['prev_hash']==prev.get(e['book'],'0'*64), p
    prev[e['book']]=rec['hash']
print('chain ok:', {k:v[:12] for k,v in prev.items()})
"

This runs checks 1 and 2 below. A timestamp is checked with ots verify <file>.ots, and check 4 is a recomputation from nav.csv.

What the last line prints

RVB-GROWTH-AGG
5da317d1e8bd
RVB-GROWTH-100K
06536bb0368f
RVB-BLEND-CORE
7bde39715370
RVB-BLEND-100K
48817e68c304
RVB-DD-DEF
c078d31ac3c4
RVB-SR-STAB
6ef44c347f5c
RVB-MAKER-01
d9c6df9f43d8

Each portfolio’s chain head, as published in its meta.json. The command computes the same twelve characters from the files themselves.

The four checks

What each one proves, and in which direction.

  1. 1
    Each record hashes its own content

    Every snapshot carries a hash: the SHA-256 of its canonical JSON with the hash field removed. Change any published number and it stops matching.

  2. 2
    The records are chained

    Each snapshot’s prev_hash is the previous session’s hash. A timestamp shows that a file existed; the chain shows that the series is complete from its first record. Because each session commits to the one before it, a session cannot be removed later without breaking every record after it.

  3. 3
    A record cannot have been written later than its proof

    Each snapshot has an OpenTimestamps proof beside it, anchored in the Bitcoin blockchain. Run ots verify <file>.ots. A proof establishes that the file existed no later than the block it is anchored in. The Recorded column in the table below is the chain’s own ts for each entry, the day the record joined the chain, printed beside the session it covers.

  4. 4
    The numbers follow from the inputs

    nav.csv is the whole equity curve, and every metric is computed from it with standard definitions. The convention and the risk-free rate are published in metrics.json, so any figure can be recomputed independently.

The first two are what the clone check above runs. The third is a stamp beside each file. The fourth is yours to run, on the curve.

Every snapshot in the current chains

The register itself, newest first.

SessionRecord hashFiles
21 Sept 20266ef44c347f5c…JSON·.ots·commits
18 Sept 20268987613a4151…JSON·.ots·commits
17 Sept 20268efe168bef3a…JSON·.ots·commits
16 Sept 20262f100ffc6549…JSON·.ots·commits
15 Sept 20265fe5d405ef9b…JSON·.ots·commits
14 Sept 2026f5dece0bec56…JSON·.ots·commits
11 Sept 2026a746f75b18eb…JSON·.ots·commits
10 Sept 2026595e472b5b02…JSON·.ots·commits
09 Sept 20269766f53a4673…JSON·.ots·commits
08 Sept 20268689da051600…JSON·.ots·commits
07 Sept 20261fab8efdccf0…JSON·.ots·commits
04 Sept 202624e1664acdad…JSON·.ots·commits
03 Sept 20265ed1ae38bbb0…JSON·.ots·commits
02 Sept 202634137e0ee187…JSON·.ots·commits
01 Sept 20264cb67e91d997…JSON·.ots·commits
31 Aug 2026a05a4b8bda44…JSON·.ots·commits
28 Aug 2026e0fc0948875d…JSON·.ots·commits
27 Aug 202686f054001c4f…JSON·.ots·commits
26 Aug 20263d2cfc5f0d2b…JSON·.ots·commits
25 Aug 20265508acd173de…JSON·.ots·commits
24 Aug 2026c23ac31ad59d…JSON·.ots·commits
21 Aug 20262fcfa2a2a910…JSON·.ots·commits
20 Aug 20264d6a623663aa…JSON·.ots·commits
19 Aug 2026b08c8cf725df…JSON·.ots·commits
18 Aug 2026ba84ce3b000c…JSON·.ots·commits
17 Aug 2026a07344b14949…JSON·.ots·commits
14 Aug 202696e6c7d6f774…JSON·.ots·commits
13 Aug 20264f709d3622f0…JSON·.ots·commits
12 Aug 20265ea3ddf09efc…JSON·.ots·commits
11 Aug 2026414810758bf5…JSON·.ots·commits
Records 1–30 of 31 for RVB-SR-STAB · the complete list is CHAIN.jsonl, one line per record.

What the register covers

Portfolios
7
First session
08 Aug 2026
Latest session
08 Oct 2026
Filtered to
RVB-SR-STAB

Where everything lives

The repositories, and how to reach the firm.

The data is in rvbpartners-commits/rvbpartners-track-record-data and this site is in rvbpartners-commits/rvbpartners-track-record-site. Both are public. Their main branches carry a ruleset that requires signed commits and linear history, and blocks deletion and force-pushes. Each publish commit is signed with an SSH key and shown by GitHub as Verified. Publication runs on the firm’s trading server; GitHub holds no broker credential.

Questions

If a check fails or a figure does not reconcile, open an issue on either repository or write to contact@rvbpartners.fr. The company is identified on the legal notice.