Ce depot contient un parcours pedagogique en francais dans docs/fr/ : lecture commentee du code de Balancer v1, un mecanisme par chapitre, sans aucune installation ni execution du projet.
Balancer is an automated portfolio manager, liquidity provider, and price sensor.
Balancer turns the concept of an index fund on its head: instead of a paying fees to portfolio managers to rebalance your portfolio, you collect fees from traders, who rebalance your portfolio by following arbitrage opportunities.
Balancer is based on an N-dimensional invariant surface which is a generalization of the constant product formula described by Vitalik Buterin and proven viable by the popular Uniswap dapp.
The 🍂Bronze Release🍂 is the first of 3 planned releases of the Balancer Protocol. Bronze emphasizes code clarity for audit and verification, and does not go to great lengths to optimize for gas.
The ❄️Silver Release❄️ will bring many gas optimizations and architecture changes that will reduce transaction overhead and enable more flexibility for managed pools.
The ☀️Golden Release☀️ will introduce a curious new liquidity mechanism to the market.
The full documentation can be found at https://docs.balancer.finance
Most users will want to consume the ABI definitions for BFactory and BPool.
This project follows the standard Truffle project structure.
yarn compile # build artifacts to `build/contracts`
yarn testrpc # run ganache
yarn test # run the tests
Tests can be run verbosely to view approximation diffs:
yarn test:verbose
Contract: BPool
With fees
pAi
expected: 10.891089108910892)
actual : 10.891089106783580001)
relDif : 1.9532588879656032e-10)
Pool Balance
expected: 98010000000000030000)
actual : 98010000001320543977)
relDif : 1.3473294888276702e-11)
Dirt Balance
expected: 3921200210105053000)
actual : 3921200210099248361)
relDif : 1.480428360949332e-12)
Rock Balance
expected: 11763600630315160000)
actual : 11763600630334527239)
relDif : 1.6464292361378058e-12)
✓ exitswap_ExternAmountOut (537ms)
Complete API docs are available at https://docs.balancer.finance/smart-contracts/api
⊙
