# Copy of Trading Rewards and Rewards Module

## Overview

Trading Rewards are 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                                                                               |
| ---------------------------------------------------------------------------------------------------------------------------------------------- | ----------------- | ---------------------------------------------------------------------------------------- |
| [treasury\_account](https://github.com/dydxopsdao/networks/blob/fd7ee6e63e7e4b3ffab4fe600ac7cdb77c28d88d/dydx-mainnet-1/genesis.json#L3756)    | rewards\_treasury | The account which Trading Rewards are funded from                                        |
| [denom](https://github.com/dydxopsdao/networks/blob/fd7ee6e63e7e4b3ffab4fe600ac7cdb77c28d88d/dydx-mainnet-1/genesis.json#L3757)                | adydx             | The token that Trading Rewards are funded in                                             |
| [denom\_exponent](https://github.com/dydxopsdao/networks/blob/fd7ee6e63e7e4b3ffab4fe600ac7cdb77c28d88d/dydx-mainnet-1/genesis.json#L3758)      | -18               | The decimals of the Trading Rewards token                                                |
| [market\_id](https://github.com/dydxopsdao/networks/blob/fd7ee6e63e7e4b3ffab4fe600ac7cdb77c28d88d/dydx-mainnet-1/genesis.json#L3759)           | 1000001           | The market which tracks the oracle price of the token that Trading Rewards are funded in |
| [fee\_multiplier\_ppm](https://github.com/dydxopsdao/networks/blob/fd7ee6e63e7e4b3ffab4fe600ac7cdb77c28d88d/dydx-mainnet-1/genesis.json#L3760) | 0                 | 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

<table data-header-hidden data-full-width="true"><thead><tr><th width="136"></th><th width="403"></th><th width="396"></th><th width="149"></th><th width="139"></th><th width="139"></th></tr></thead><tbody><tr><td>Field Name</td><td><a href="https://github.com/dydxopsdao/networks/blob/fd7ee6e63e7e4b3ffab4fe600ac7cdb77c28d88d/dydx-mainnet-1/genesis.json#L3820">vester_account</a></td><td><a href="https://github.com/dydxopsdao/networks/blob/fd7ee6e63e7e4b3ffab4fe600ac7cdb77c28d88d/dydx-mainnet-1/genesis.json#L3821">treasury_account</a></td><td><a href="https://github.com/dydxopsdao/networks/blob/fd7ee6e63e7e4b3ffab4fe600ac7cdb77c28d88d/dydx-mainnet-1/genesis.json#L3822">denom</a></td><td><a href="https://github.com/dydxopsdao/networks/blob/fd7ee6e63e7e4b3ffab4fe600ac7cdb77c28d88d/dydx-mainnet-1/genesis.json#L3823">start_time</a></td><td><a href="https://github.com/dydxopsdao/networks/blob/fd7ee6e63e7e4b3ffab4fe600ac7cdb77c28d88d/dydx-mainnet-1/genesis.json#L3824">end_time</a></td></tr><tr><td>Description</td><td>The account to vest tokens from</td><td>The account to vest tokens to</td><td>The token that is vested</td><td>The start time of vesting</td><td>The end time of vesting</td></tr><tr><td>Value</td><td>rewards_vester</td><td>rewards_treasury</td><td>adydx</td><td>2021-08-03T15:00:00Z</td><td>2026-08-03T15:00:00Z</td></tr><tr><td>Account</td><td>dydx1ltyc6y4skclzafvpznpt2qjwmfwgsndp458rmp</td><td>dydx16wrau2x4tsg033xfrrdpae6kxfn9kyuerr5jjp</td><td></td><td></td><td></td></tr></tbody></table>

## Rewards Vester

In [DIP 2](https://www.mintscan.io/dydx/proposals/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](https://docs.dydx.community/dydx-governance/start-here/dydx-allocations) for Trading Rewards from [DIP 29](https://dydx.community/dashboard/proposal/16) on dYdX v3.

## Rewards Treasury

DYDX vests every second from the [Rewards Treasury Vester](https://www.mintscan.io/dydx/address/dydx1ltyc6y4skclzafvpznpt2qjwmfwgsndp458rmp) to the [Rewards Treasury](https://www.mintscan.io/dydx/address/dydx16wrau2x4tsg033xfrrdpae6kxfn9kyuerr5jjp). At the end of a given block vested DYDX (Trading Rewards) will be automatically distributed to a trader’s dYdX Chain account to maintain consistency and transparency.

<figure><img src="https://lh7-eu.googleusercontent.com/s2Gclbxm3RUqHhXr23DB0Mc_NIcVVUmuXlMKR5gb6FPASPRKhFU7Bd53RJV7d_yFN2v7Y-iXZOxA9K4gIJ8ZHkaX_7xqupnCN3oWWx1BLTgXhqTmZ508rWaDCKkrLZTOUsBEWLg3-bMwulRAxYyaREk" alt=""><figcaption><p>Visual representation of the rewards distribution on dYdX</p></figcaption></figure>

## Trading Rewards Formula

More information on the trading rewards formula can be found [here](https://docs.dydx.exchange/users-rewards/trading_rewards).&#x20;

This [page](https://help.dydx.trade/en/articles/249387-dydx-trading-rewards) provides a comprehensive explanation of how the trading rewards formula differs between makers and takers.

## FAQ

<details>

<summary><strong>How does DYDX vest from the Rewards Vester to the Rewards Treasury?</strong></summary>

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.

</details>

<details>

<summary><strong>How much DYDX will I earn in Trading Rewards?</strong></summary>

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](https://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.

</details>

<details>

<summary><strong>Can the dYdX community change the Trader Rewards formula?</strong></summary>

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.

</details>

<details>

<summary><strong>How much Trading Rewards will be distributed?</strong></summary>

In [DIP 2](https://www.mintscan.io/dydx/proposals/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](https://docs.dydx.community/dydx-governance/start-here/dydx-allocations) for Trading Rewards from [DIP 29](https://dydx.community/dashboard/proposal/16) 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.

</details>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.dydx.community/dydx/modules/copy-of-trading-rewards-and-rewards-module.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
