The Nosana Rewards Program allow stakers to earn rewards. Anyone that has staked NOS tokens can enter the rewards program.
The following are some of the Nosana Rewards program's characteristics:
- A staker's xNOS score determines the portion of the fees a user will receive.
- You have to explicitly
enterthe rewards program to participate. The rewards you receive are the percentage of your xNOS compared to that of all the other participants.
- When new fees are added to the program, they are distributed to all current participants.
- The program uses a token reflection model to distribute: fees are accounted for "live" as they come in and no loops necessary.
- Anyone can send in new fees to be distributed using
- You can
claimyour earned rewards at any time (does not require an unstake).
- If you
unstakeyour reward account is voided. It is critical that you claim rewards before unstaking.
- If you
extenda stake your rewards program is not updated. You will have to
claimupate your reward to make use of your new xNOS score.
- A user can only have 1 active rewards entry at a time.
- The rewards a user earns are automatically added to the percentage of rewards they receive. Earned rewards are added to their xNOS score (with a multiplier of 1) - but can be claimed without any delay. They gain a slight advandage from this, and it's a great feature as well. Also it's easy to
upstakeyour rewards directly in order to receive a bigger multiplier.
- One can close their own reward account at any time. If there are any unclaimed rewards on the account, they will be cancelled (and distributed to all other participants).
- Anyone is permitted to close a user's reward account if they've unstaked. This feature prevents "ghost" accounts from accumulating rewards.
|Build Status||Anchor Verified|
A number of 6 instruction are defined in the Nosana Rewards program.
To load the program with Anchor.
const programId = new PublicKey('nosRB8DUV67oLNrL45bo2pFLrmsWPiewe2Lk2DRNYCp'); const idl = await Program.fetchIdl(programId.toString()); const program = new Program(idl, programId);
A number of 3 accounts make up for the Nosana Rewards Program's state.