SIP 108: Shorting Rewards Source

AuthorMichael Spain
Discussions-Tohttps://research.synthetix.io/t/sip-108-shorting-rewards-trial/292
StatusImplemented
Created2021-02-02

Simple Summary

Incentivise users to open shorts against sBTC and sETH.

Abstract

Users who open shorts will be automatically enrolled into an SNX rewards program.

Initially, the trial will run for a period of 4 weeks. The sDAO will pay 8k SNX per week to sBTC shorts and 8k SNX per week to sETH shorts (16k SNX total per week). Tokens will be distributed on a pro rata basis.

If the user’s position is modified (increased, decreased, liquidated or closed), their rewards balance will be updated for them by the contract.

Motivation

The debt pool is still heavily skewed toward sBTC and sETH, despite active rewards programs for holding iBTC and iETH. In the context of a bull market, this skew represents a significant risk to SNX stakers.

Specification

Overview

The design of Shorting Rewards is structurally identical to that of the current Staking Rewards contracts. The only difference is that instead of staking tokens, positions are created automatically when users open shorts.

Rationale

The Synthetix Staking Rewards contract has become widely used across DEFI. The underlying structure is well understood by the community.

Technical Specification

A new contract ShortingRewards.sol which is a modified version of StakingRewards.sol. It shares the same underlying logic for determining reward amounts. Where it differs is that there is no staking token. Instead, it stores a reference to CollateralShort.sol and allows this contract to enrol and withdraw users.

Two instances of ShortingRewards.sol will be deployed. The first instance will manage rewards for sBTC shorts and the second will manage rewards for sETH shorts.

Test Cases

Test cases are included with the implementation.

Configurable Values (Via SCCP)

For both instances of ShortingRewards.sol, the following variables are configurable.

  • reward the amount of SNX paid out by the contract.
  • rewardsDuration the duration over which the reward is paid out.

Proposed Initial Values

The following values are proposed as the initial configuration.

ShortingRewards sETH

  • reward 32000
  • rewardsDuration 4 weeks

ShortingRewards sBTC

  • reward 32000
  • rewardsDuration 4 weeks

Copyright and related rights waived via CC0.