Links

Trading Rewards and Rewards Module

An overview of Trading Rewards and the Rewards Module.

Overview

Trading Rewards will be distributed to users who trade on dYdX Chain based on the Trading Rewards formula. The objective of Trading Rewards is to (1) incentivize all traders to use the dYdX Chain and (2) accelerate market liquidity and overall product usage.

Parameters

Title
Value
Definition
rewards_treasury
The account which Trading Rewards are funded from
denom
adydx
The token that Trading Rewards are funded in
-18
The decimals of the Trading Rewards token
market_id
1000001
The market which tracks the oracle price of the token that Trading Rewards are funded in
0.33
The protocol constant “ C” for the Trading Rewards

Module Accounts

Module
Name
Address
x/rewards
`rewards_treasury`
dydx16wrau2x4tsg033xfrrdpae6kxfn9kyuerr5jjp
x/rewards
`rewards_vester`
dydx1ltyc6y4skclzafvpznpt2qjwmfwgsndp458rmp

Vest Module

Field Name
denom
end_time
Description
The account to vest tokens from
The account to vest tokens to
The token that is vested
The start time of vesting
The end time of vesting
Value
rewards_vester
rewards_treasury
adydx
2021-08-03T15:00:00Z
2026-08-03T15:00:00Z
Account
dydx1ltyc6y4skclzafvpznpt2qjwmfwgsndp458rmp
dydx16wrau2x4tsg033xfrrdpae6kxfn9kyuerr5jjp

Trading Rewards Formula

The characteristics of the dYdX Chain Trading Rewards are as follows:
  • self-trading should not be profitable,
  • any distributed rewards should be proportional to fees paid to the protocol,
  • trading rewards should be deterministic,
  • trading rewards should be settled and distributed every block,
  • trading rewards should limit the protocol overspending on trading activity.
DYDX will be distributed to traders on the dYdX Chain using the formula below. DYDX from Trading Rewards will be sent directly to a given user’s account after each order fill (which takes place at the end of a given block). Users can earn trading rewards up to, but not exceeding, 100% of a fill’s net trading fees. As such, Trading Rewards distributed by the protocol, each block, are capped at the dollar equivalent of the total net trading fees generated by the protocol that block.
Term
Definition
A
Amount of tokens distributed from T in a given block.
C
Constant value ranging from 0 to 1.
T
The size of the Rewards Treasury pool, which fluctuates according to protocol activity and contains vested DYDX tokens.
p
Price of DYDX
S
Sum of all trader’s scores
The calculation of the trader scores (S) incorporates the following elements:
The sum of all traders’ rewards scores at a given block (“S”) is essentially the amount of total fees paid accounting for maker rebates and fees.
In the event there is a remaining amount of DYDX in the Rewards Treasury (T-A), such DYDX will remain in the Rewards Treasury and be distributed to traders in a proceeding block.

Rewards Treasury

DYDX vests every second from the Rewards Treasury Vester to the Rewards Treasury. At the end of a given block vested DYDX (Trading Rewards) will be automatically distributed to a trader’s dYdX Chain account.

Rewards Vester

In DIP 2 on the dYdX Chain, the dYdX community voted to credit the dYdX Chain Rewards Vester with 54,077,073 unvested DYDX tokens based on the remaining allocation for Trading Rewards from DIP 29 on dYdX v3.

FAQ

How does DYDX vest from the Rewards Vester to the Rewards Treasury?
The Vest Module allows the vesting process to happen on the dYdX Chain. The module is responsible for determining the rate of tokens that vest from Vester Accounts to other accounts such as a community_treasury and a rewards_treasury. The rate of token transfers is linear with respect to time. Thus, block timestamps are used to vest tokens.
The dYdX Community through a governance vote has the ability to create, update, or delete vest_entries through a governance vote.
Based on the start_time and end_time, DYDX will vest from the Rewards Vester to the Rewards Treasury at approximately ~0.64 DYDX per second.
How much DYDX will I earn in Trading Rewards?
Immediately following the execution of each trade, the dYdX Chain protocol calculates the projected amount of trading rewards related to such trade. The dydx.trade user interface displays the maximum potential rewards for a given trade size before the trade occurs. It's important to note that users can accumulate trading rewards from 0-100% of the net trading fees of a fill, paid in DYDX, but not exceeding this limit.
Can the dYdX community change the Trader Rewards formula?
Yes, the Trading Rewards formula can be modified by the dYdX community through a dYdX Chain Software Upgrade Proposal. If the dYdX community wishes to change any of the parameters outlined in the Parameters section above, e.g. the fee_multiplier_ppm, it can be done through a dYdX Chain Parameter Change Proposal.
How much Trading Rewards will be distributed?
In DIP 2 on the dYdX Chain, the dYdX community voted to credit the dYdX Chain Rewards Vester with 54,077,073 unvested DYDX tokens based on the remaining allocation for Trading Rewards from DIP 29 on dYdX v3.
The dYdX community could choose to transfer more vested DYDX from the dYdX Chain Community Treasury to the Rewards Vester through a Community Spend Proposal, e.g. to increase trading rewards in the future.