Bỏ qua để đến nội dung

Yield backtest

Nội dung này hiện chưa có sẵn bằng ngôn ngữ của bạn.

How much would a Tako pool have paid over the last year of TON mainnet, compared with what Tonstakers and Hipo holders actually got? This page answers with on-chain data and a script anyone can rerun.

Over 12 months, 2025-10-29 to 2026-10-27, 479 validation rounds:

APY Share of the network’s reward that reached holders
Network: every reward kept, all Gram at work 11.87% 100%
Tako, testnet parameters, modeled 9.41% 79.3%
Tonstakers, realized 8.68% 73.2%
Hipo, realized 10.37% 87.3%
Window Network Tako Tonstakers Hipo
12 months 11.87% 9.41% 8.68% 10.37%
6 months 18.03% 14.21% 13.32% 16.06%
3 months 17.24% 13.60% 12.38% 17.05%
1 month 17.25% 13.61% 12.52% 16.96%

The jump between the 12-month and 6-month numbers is the network itself: in April 2026 the reward per round rose about fourfold.

  • Tako stays ahead of Tonstakers in every window.
  • With the testnet parameters, Hipo pays more. The difference is Tako’s own choice: 10% of the pool’s take to the insurance fund and 5% to keepers.
  • Hipo is close to the ceiling in the last months, and no Tako setting beats it there.

Tonstakers lends at an interest rate its manager sets by hand, now 0.0564% per round. Over the year that rate was on average 88% of what the network paid per round; validators kept the rest. Tonstakers then keeps a 16% fee. 88% × 84% ≈ 74%, close to the 73% its holders got. The rate does follow the network: it was raised the same month the reward jumped.

Tako has no rate to set. Validators bid, and the pool keeps at least 97.25% of what each loan earned. What it then gives up is the insurance and keeper shares.

Insurance / keepers 12 months 6 months 3 months 1 month
10% / 5% (testnet) 9.41% 14.21% 13.60% 13.61%
5% / 2% 10.34% 15.65% 14.98% 14.98%
2% / 1% 10.81% 16.38% 15.67% 15.67%
0% / 0% 11.16% 16.92% 16.19% 16.20%
Tonstakers, realized 8.68% 13.32% 12.38% 12.52%
Hipo, realized 10.37% 16.06% 17.05% 16.96%

The mainnet shares are chosen with this table in mind.

  • Network reward. For every election, the Elector’s past_elections entry is read at the last archival block before its stakes unfreeze, when the reward is final. bonuses / total_stake is what one staked Gram earned that round.
  • Every other round. A stake stays frozen through the round after it validated, so each round half of the working Gram earns that round’s reward. The pool compounds.
  • Tako applies the holders’ share and 97% of the pool at work to the same rounds. Lending is assumed to clear: validators take every loan at the testnet split.
  • Tonstakers and Hipo are their share rates read at the same blocks every four rounds: total_balance / supply from get_pool_full_data and total_coins / total_tokens from get_treasury_state. That is what their holders really got, after every fee and idle Gram.
  • Tako is a model; the others are realized. The biggest assumption is loan demand at the testnet split. If validators need a bigger share, Tako’s yield falls: at 90% kept by the pool and 97% at work, the 12-month figure is 8.68%, equal to Tonstakers.
  • No slashing or failed rounds are modeled for Tako. They are rare, and the insurance fund takes the first loss.
  • The backtest does not explain why Hipo comes so close to the ceiling; its share rate is simply what its holders got.

The script, its tests and the collected data live in the protocol repository under research/backtest:

Terminal window
npx tsx research/backtest/fetch.ts 365 # about half an hour on toncenter's free tier; resumes from the cache
npx tsx research/backtest/report.ts
npx jest tests/backtest.spec.ts