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
18 Sept 2026d01c0d016239…JSON·.ots·commits
18 Sept 20268987613a4151…JSON·.ots·commits
18 Sept 2026ebc7bc3277cc…JSON·.ots·commits
17 Sept 20269fe932bc0f79…JSON·.ots·commits
17 Sept 202614ee60609d5e…JSON·.ots·commits
17 Sept 2026ac9c27a6f30d…JSON·.ots·commits
17 Sept 2026db0fe302f4bf…JSON·.ots·commits
17 Sept 2026a04984fda14b…JSON·.ots·commits
17 Sept 20268efe168bef3a…JSON·.ots·commits
17 Sept 2026f750569dce6d…JSON·.ots·commits
16 Sept 2026ba552fa92f28…JSON·.ots·commits
16 Sept 2026d795350ff5ad…JSON·.ots·commits
16 Sept 202628456b538b56…JSON·.ots·commits
16 Sept 2026050602686c81…JSON·.ots·commits
16 Sept 202658d96ea03ece…JSON·.ots·commits
16 Sept 20262f100ffc6549…JSON·.ots·commits
16 Sept 2026629b9d24a183…JSON·.ots·commits
15 Sept 2026f436da1724fd…JSON·.ots·commits
15 Sept 2026b5a21f6b8cdd…JSON·.ots·commits
15 Sept 2026b5bd3613c672…JSON·.ots·commits
15 Sept 20263ace274c18d0…JSON·.ots·commits
15 Sept 2026e0d498e1a681…JSON·.ots·commits
15 Sept 20265fe5d405ef9b…JSON·.ots·commits
15 Sept 20260e9a86eb266e…JSON·.ots·commits
14 Sept 20260108590b4d3d…JSON·.ots·commits
14 Sept 2026e9f48f9f11ac…JSON·.ots·commits
14 Sept 2026a118f168ceff…JSON·.ots·commits
14 Sept 2026c55ef7cd56d1…JSON·.ots·commits
14 Sept 20267eb899fe4e7c…JSON·.ots·commits
14 Sept 2026f5dece0bec56…JSON·.ots·commits
Records 31–60 of 209 · 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

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.