This won't help you beat the best, but it will at least make you competitive.
It's better than the Renegotiation Wizard, that's for sure:
https://docs.google.com/spreadsheets/d/1Q55KFbWqyfgSsc-A3uHfXlWR_yj9xSvKwOQ9dcYEofI/edit?usp=sharing1. Put in 0% as the bonus amount.
2. Hit "Submit Offer." You offer will of course be rejected, but this will tell you the minimum bonus amount the player will accept.
3. Put the resulting bonus amount and the desired years into the spreadsheet. You can tinker with the length of the contract if you like. Just remember that if you change the length of the contract, the player's bonus demands will change.
4. Plug each season's salary back into the Renegotiate Contract Box.
5. Plug the Total Bonus back into the Manual Override section. If you reverse steps 4 and 5, the AI will "fix" your offer for you, and I guarantee you'll hate it.
Let me know if the link doesn't work. I'm kind of new to Google Sheets.