# Trading Reward Programme

Consider the following notation:

<table><thead><tr><th width="192">Term</th><th>Definition</th></tr></thead><tbody><tr><td><span class="math">R(h)</span></td><td>Reward for a specific trader h.</td></tr><tr><td><span class="math">R</span></td><td>Total Trading Reward for the epoch for the respective product. This reward will be split amongst all traders, with allocation dictated by a formula.</td></tr><tr><td><span class="math">f</span></td><td>Fees paid by the trader on this product over the epoch.</td></tr><tr><td><span class="math">w(h)</span></td><td>The score of the particular trader h over the epoch.</td></tr><tr><td><span class="math">d(h)</span></td><td>A trader’s average open interest measured as every minute (at random) across all markets for a given product over this epoch.</td></tr><tr><td><span class="math">k</span></td><td>Total number of traders in this epoch.</td></tr><tr><td><span class="math">alpha</span></td><td>A constant which balances the geometric weight between fees versus open interest. The value is set at 0.7.</td></tr></tbody></table>

### **Futures/Perpetuals**

The formulas for calculating rewards for trading are as follows. Each trader $$h$$:

$$w\_h= f\_h^{\alpha} \times d\_h^{1-\alpha}$$

$$R\_h= R \times \frac{w\_h}{\sum\_n w\_n}$$ with $$n = 1, 2, ..., k$$

* The total reward '$$R$$' is in PB tokens.
* The formula for '$$R\_h$$' specifies how the reward for that period is split amongst all participants. This is like game theory: if you are the only player in town, you get all the bounty, so long as you have at least a bit of an open interest over the period and at least done some trading.
* For more participants, it splits the bounty proportionally to their **level of participation,** measured as a function of fees and open interest as described by the formula.

### **Options**

Notice that for Options, the open interest is measured as follows every minute by:

$$d\_h,*{min} = \sum*{i=1}^n \sum\_{j=1}^m {O(C,K\_i,T\_j)+ O(P,K\_i,T\_j)}$$

$$d\_h=\sum\_{j=1}^J d\_{min}(j)$$

The time of snapshotting the open interest is **random** over the minute, so to avoid any systematic bias.

* Net the Open Interest by strikes and expiries, for each call and put:\
  \
  $$O(C,K\_i,T\_j) = abs(netPosition(C,K\_i,T\_j))$$\
  \
  $$O(C,K\_i,T\_j) = abs(netPosition(P,K\_i,T\_j))$$\
  \
  Where Open Interest refers to the net Notional Value of the particular option.
* So for each strike, expiry and call/put category, net the positions and take absolute value (assuming we are indifferent to net long/short).
* Client Total Open Interest:
  * Open interest, sampled every minute:\
    \
    $$d\_h,{min} = \sum{i=1}^n \sum\_{j=1}^m {O(C,K\_i,T\_j)+ O(P,K\_i,T\_j)}$$\
    \
    measured as an average over every minute across the month/14 days (sampled randomly in every minute).\\
  * $$d\_h=\sum\_{j=1}^J d\_{h,min}(j)$$ where J is the total number of minutes over the period (14 days ).
  * $$f\_h$$ = total fees$ paid over the month/14 days, but fees taken in absolute value.
  * $$\alpha= 0.7$$
  * Trader score $$w = f^{\alpha} \times d^{(1-\alpha)}$$
  * Portion of reward per trader:\\

    $$R\_h= R \times \frac{w\_h}{\sum\_n w\_n}$$ with $$n = 1, 2, ..., k$$\\
* Rationale for the way to account for options: a long call/short put same strike results in a synthetic forward, so Put/Call cannot be accounted for in same bucket.
* Likewise for calls with same expiry and different strikes: they represent a "spread" which means they are valid trades, not netting out. Similar for calendar spreads.
* By taking into account all products, we are incentivising traders to have positions across all strikes/expires.

### **Spot**

* Notice that traders would be rewarded for trades executed, hence AMMs would only be compensated if their range is relevant and takers trade over that period.
* Even though fees for Market Makers are zero, a "virtual fee" to reward makers is used for the reward calculation when their trades are executed. This is for now set at:
  * $$f^{virtual}\_{maker}=0.07%$$
  * The system keeps track of which trades are from maker / taker.
* For spot, $$\alpha$$ = $$1$$.
  * Trader score $$w = f^{\alpha}$$ , where $$f$$ is different for trades which are market orders (taker) or limit orders (maker).
  * Portion of reward per trader:\
    \
    $$R\_h = R \times \frac{w\_h}{\sum\_{i=n}^N w\_n}$$ with $$n= 1, 2,..., k$$


---

# 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://support.power.trade/ptf-token/token-specifications/trading-reward-programme.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.
