docs: Add stake programming documentation (#14529)

* Add stake programming documentation

We had some questions about stake programming documentation, and there
wasn't a place that contained information about the stake-o-matic and
other stake development in one place.  This adds a page with that
information.

* Update docs/src/staking/stake-programming.md

Co-authored-by: Eric Williams <eric@solana.com>

* Update docs/src/staking/stake-programming.md

Co-authored-by: Eric Williams <eric@solana.com>

* Update docs/src/staking/stake-programming.md

Co-authored-by: Eric Williams <eric@solana.com>

* Update docs/src/staking/stake-programming.md

Co-authored-by: Eric Williams <eric@solana.com>

* Update docs/src/staking/stake-programming.md

Co-authored-by: Eric Williams <eric@solana.com>

* Apply suggestions from code review

* Remove trailing whitespace

Co-authored-by: Eric Williams <eric@solana.com>
This commit is contained in:
Jon Cinque 2021-01-14 17:04:04 +01:00 committed by GitHub
parent 3ed83b53a5
commit b37dbed479
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 26 additions and 0 deletions

View File

@ -45,6 +45,7 @@ module.exports = {
"Staking": [
"staking",
"staking/stake-accounts",
"staking/stake-programming",
],
"Command Line": [
"cli",

View File

@ -0,0 +1,25 @@
---
title: Stake Programming
---
To maximize stake distribution, decentralization, and censorship resistance on
the Solana network, staking can be performed programmatically. The team
and community have developed several on-chain and off-chain programs to make
stakes easier to manage.
#### Stake-o-matic aka Auto-delegation Bots
This off-chain program manages a large population of validators staked by a
central authority. The Solana Foundation uses an auto-delegation bot to regularly delegate its
stake to "non-delinquent" validators that meet specified performance requirements. More information can be found on the
[official announcement](https://forums.solana.com/t/stake-o-matic-delegation-matching-program/790).
#### Stake Pools
This on-chain program pools together SOL to be staked by a manager, allowing SOL
holders to stake and earn rewards without managing stakes.
Users deposit SOL in exchange for SPL tokens (staking derivatives) that represent their ownership in the stake pool. The pool
manager stakes deposited SOL according to their strategy, perhaps using a variant
of an auto-delegation bot as described above. As stakes earn rewards, the pool and pool tokens
grow proportionally in value. Finally, pool token holders can send SPL tokens
back to the stake pool to redeem SOL, thereby participating in decentralization with much
less work required. More information can be found at the
[SPL stake pool documentation](https://spl.solana.com/stake-pool).