Test Data and Results
The files on this page are the inputs and the printed results of the tests behind the findings on Strategies. The tests last ran on 2026-09-23 (UTC). The daily pool history runs through 2026-09-19, the swap record through block 27,597,775 (2026-09-21), and the manager contract’s event record through block 27,597,224 (2026-09-20). The method and the equations are under How These Were Tested. The results come from five scripts — strategy-arithmetic.py, strategy-backtest.py, strategy-eight.py, strategy-modeled.py and strategy-forensic.py — which share one rule module, strategy_bench.py.
Results
Each file is the table a script printed, saved as plain text. Sizes are in bytes.
- arithmetic.txt · 17,066 bytes · 2026-09-23 · strategy-arithmetic.pyContract math on the run day's curve: stake rates by length, break-even prices, loans and minting, from the market snapshot and the payout record.
- backtest.txt · 41,469 bytes · 2026-09-23 · strategy-backtest.pyEvery daily close since launch: each price rule applied on every day it fired, against a stake of the same length opened the same day.
- eight.txt · 12,331 bytes · 2026-09-23 · strategy-eight.pyThe Basic Eight: staking's realized yield, the ladder's Longer Pays Better cost, LP fees and the vault record.
- modeled.txt · 18,393 bytes · 2026-09-23 · strategy-modeled.pyThe site's own modeled strategies, built from the contract's mechanics, tested on the record.
- forensic.txt · 7,715 bytes · 2026-09-23 · strategy-forensic.pyThe manager contract's event record: stakes ended by someone other than the owner, who created each maturity, auction-won HSIs; wallet address prefixes shown as numbered labels.
- harness.txt · 4,113 bytes · 2026-09-23 · strategy-harness.pyThe figures on /strategies that describe the run day, re-derived with the passes' own math and compared with the built page.
Test Data
Each file is gzip-compressed. The size and the sha256 are the compressed file’s; under each name is the path the scripts read the file from once it is decompressed. manifest.json lists every file on this page with its size, sha256 and rows, and the sha256 of each file decompressed.
Single Files
- htt-hex-history.json.gz · 315,913 bytes · 2026-09-23Every HTT/HEX pool's two reserves and price at the closing block of each UTC day since 2024-10-08 (PulseX and 9mm V3 pools).Read from
data/htt-hex-history.jsonsha256 0cd7d79d339447c1440b0d1d6732ff8831b48be6310804ac96c9094b73418bce - lp-supply-history.json.gz · 65,108 bytes · 2026-09-23Each PulseX HTT/HEX pool's LP-token supply, and the farm's allocation, at each daily closing block.Read from
data/lp-supply-history.jsonsha256 ea0bec12950c96f75562f2bcdbeca9b6162a2ba543f89acac663e8c9b8fdc8cb - block-at-day.json.gz · 25,457 bytes · 2026-09-23The closing block and its timestamp for each UTC day, PulseChain and Ethereum.Read from
data/block-at-day.jsonsha256 4efd013e38c8cb6634e92a783ebe5bafc1307938ad2f410d9a86e84424107232 - market-snapshot.ts.gz · 7,213 bytes · 2026-09-23The market snapshot the arithmetic pass and the harness read: each series' price in HEX, pool value and days left.Read from
src/data/market-snapshot.tssha256 c7213b26073b0f223ec16c7da3bd38195d0c3174a3cb529e9ebce12855fdd309
Not Published: The Records That Hold Wallet Addresses
Four inputs hold wallet addresses as the chain logs them, and this site publishes no wallet address: the swap record (166,255 rows), the HTT manager contract’s event record (17,189 rows), the forensic script’s receipt cache, and the HSI census rows that script reads. Each rebuilds from any PulseChain archive node: pull-htt-swaps.py and pull-httm-events.py write the two records, and the forensic script fetches its own receipts on its first run. A rebuilt record matches the one the tests read when its sha256 matches: swaps 8636d65ca6d002c8b1971d3a33fb09e41cbd561dd8248d61a1d12b845c8a6e2d, events 4823563ebbee2d0f83236451ec50cf4af280be6852df15b17b126eb98c921271 (rows in block, then log-index order).
Inputs Already on the Site
The scripts also read 7 files the site publishes and refreshes every day. The sha256 is each file as the tests read it on 2026-09-23; each daily refresh after that date changes the file and its sha256.
- /data/hex-payout.json · 239,465 bytes · read by all five passesHEX's daily payout and total T-Shares, by contract day.sha256 b28673a6f44558fe61826fbd775e309045dba6b81fd074393a45944250b202d6
- /data/hex-share-rate.json · 48,721 bytes · read by all five passesHEX's share rate by date: HEX per T-Share to open a stake.sha256 1ae8d7113c66f7e6729eab9f41bb16c50241a90361c59ff0f5438ec57f9ecd9b
- /data/pair-history.json · 250,388 bytes · read by all five passesDaily closes of the ACTR/PLS and HEX/PLS pairs (ACTR priced in HEX by UTC day).sha256 338be69442134be4f58f4d610914a7e5fe1024cec653a92cf004e74637ef9d8c
- /data/farm-apr.json · 17,254 bytes · read by all five passesThe farm, fee and vault rates by maturity on the refresh day, and ACTR in HEX.sha256 511825d5c035cecf54bc47db042efac4acef4dff3234b904b0528ac9c76c8a98
- /data/htt-registry.json · 5,832 bytes · read by all five passesEvery HTT series the factory created, with its maturity date.sha256 5a64a8cfcd7885e2f5d8c43bc57e44963f70504117fa31dbb2a5f15b0f37d367
- /data/earn-history.json · 322,800 bytes · read by backtest, eight, modeledVault deposits, withdrawals and claims, and the mint-fee stream, by maturity and UTC day.sha256 0116cf5fcfa9d7ab051b2820fbbe45872ef5ad7f8fe57419424c8590c27b6c42
- /data/lp-depth.json · 1,558,098 bytes · read by modeledPool depth by token on the refresh day (the ACTR pool).sha256 ef955aa27614b97202b66704e323fa8c1133be1c976f12d7b32e19809d1be44b
How the Files Are Made
The pool history and the LP supply are read from a PulseChain archive node at the closing block of each UTC day, the blocks listed in block-at-day.json; the swap and event records are the contracts’ logs, read from the same node, and are not published because they hold wallet addresses. Prices come from PulseX’s constant-product pools; the 9mm V3 pools are in the history and the swap record, and the scripts leave them out of prices. The figures on Strategies that describe the current day are recomputed at every daily build of that page; the history is read again and every test rerun each Monday, and in full after 2026-09-26 and 2026-10-09. The results on this page were printed by a run with the network blocked, so every figure in them comes from the files listed here. Every size is in bytes, of the gzip-compressed file; a monthly file is rewritten only when its rows change, so a finished month keeps its sha256.
Test Scripts
The repository link appears here when the repository is public.
The scripts are Python 3 and use its standard library only: strategy_bench.py holds the shared rules, the five scripts named above print the results, and strategy-harness.py compares the figures that describe the current day with the built Strategies page. Each script reads the paths shown under the files above, with the site’s own files under public/data/, and prints its tables. With those files and the two rebuilt records in place the scripts read nothing from the chain, except the forensic script, which fetches the receipts it reads on its first run; it also reads the keccak section of tshare-census.py.
