I have been burned by APY calculators a whole bunch of times. They just don’t seem to ever be close to accurate to what I actually get. Came across the below tweet a few minutes ago and it seems it’s a bigger issue. What’s the issue? I’ve been trying to figure out how to accurately calculate APY. Any recommendations?
[
If APY>10% then APY<0.
They are accurate as long as nothing changes, fixed point in time, problem of course is that things always are.
Not sure what you’re investing in but if it involves liquidity pools, impermanent could be a big factor
Two things are happening here:
1. conditions change. This is probably the most common, i.e. There are 1000 tokens for staking per year. If 1 person stakes 1 token they get 100000% APY. But if 1000 other people join now its just 100%
2. Assumptions about compounding, for example Lets say the annual interest ***rate*** is 5%. If we assume monthly compounding this means Annual ***Yield*** is (1+.05/12)^12 – 1 = 5.116% APY
If we assume daily compounding the formula is (1+.05/365)^365 – 1= 5.126% APY
If we assume per block compounding the formula is (1 + .05/2628000)^2628000 – 1= 5.131% APY
These are not that much different but when the APR is 100% now we get:
* APY monthly compounding: 161.202%
– APY daily compounding: 171:456%
– APY per block compounding: 172.035%
A lot of times compounding happens each time someone interacts with the contract so it is not deterministic