# Outcome $1M Rewards (/outcome-rewards)



<div className="ml-outcome-hero not-prose">
  <div className="ml-outcome-hero-copy">
    <span>
      Outcome × Market Lab
    </span>

    <strong>
      Farm Outcome’s $1M reward pool.
    </strong>

    <p>
      Pick an eligible market and start a Market Lab bot. It keeps buy and sell orders running while you compete for rewards.
    </p>
  </div>

  <div className="ml-outcome-hero-reward">
    <strong>
      $1M
    </strong>

    <span>
      liquidity rewards
    </span>

    <span>
      0% builder fee
    </span>
  </div>
</div>

Outcome is paying traders who help selected markets stay active. You can earn for keeping orders open and when those orders fill. Market Lab handles the buying and selling for you.

## 1. Join the campaign [#1-join-the-campaign]

Run this once:

```bash
mlab auth set hyperliquid \
  --builder 0xab5dbc057628bc18523c4cdfc0e1e2ebdbecb704
```

The builder address is how Outcome knows which orders should count toward the campaign. Market Lab adds it to every Hyperliquid mainnet order and sets the builder fee to `0%`.

Already connected to Hyperliquid? Run the same command. Your current API wallet stays in place and only the campaign builder is added or changed.

```bash
mlab auth status
```

Your main wallet key is used only for approval and is never stored. Normal Hyperliquid trading fees and maker rebates still apply.

## 2. Find a market paying rewards [#2-find-a-market-paying-rewards]

See the available Outcome markets:

```bash
mlab markets --exchange hyperliquid --hip 4 --deployer out
```

Looking for something specific?

```bash
mlab markets --exchange hyperliquid --hip 4 --deployer out --search BTC
```

If the result shows `1427:0` and `1427:1`, the bot ID is `1427`. You do not need to choose Yes or No because the bot places both buy and sell orders.

Outcome chooses which markets pay rewards and when they pay. Check the [current campaign list](https://docs.outcome.xyz/outcome-liquidity-rewards#what-is-published-before-scoring-starts) before starting; not every Outcome market earns rewards.

## 3. Choose how you want to farm [#3-choose-how-you-want-to-farm]

New to market making? Start with **Mid-Price**. It follows the current market price and keeps a buy and sell order running around it.

| Bot                                            | Use it when                                                               |
| ---------------------------------------------- | ------------------------------------------------------------------------- |
| [Mid-Price](/bots/mid-price#outcome-markets)   | Best starting point. It keeps orders close to the changing market price.  |
| [Volume-Mid](/bots/volume-mid#outcome-markets) | Leaves orders open longer to increase their chance of filling.            |
| [Grid](/bots/grid#outcome-markets)             | Places orders at fixed levels. Best when the market moves back and forth. |

Outcome markets do not use leverage. The examples below only preview the bot. Remove `--dry-run` when you are ready to go live.

### Mid-Price [#mid-price]

```bash
mlab bot run mid-price 1427 \
  --venue hyperliquid \
  --margin 100 \
  --duration 3600 \
  --spread-bps 20 \
  --stop-loss-pct 5 \
  --dry-run
```

### Volume-Mid [#volume-mid]

```bash
mlab bot run volume-mid 1427 \
  --venue hyperliquid \
  --margin 100 \
  --duration 3600 \
  --spread-bps 20 \
  --refresh-time 2 \
  --refresh-tolerance-bps 1 \
  --stop-loss-pct 5 \
  --dry-run
```

### Grid [#grid]

```bash
mlab bot run grid 1427 \
  --venue hyperliquid \
  --margin 100 \
  --duration 3600 \
  --levels 5 \
  --step-bps 20 \
  --stop-loss-pct 5 \
  --dry-run
```

Replace `1427` with the selected market ID. Inspect the plan, then remove `--dry-run` to start the job.

## Give yourself a better chance [#give-yourself-a-better-chance]

* **Choose a market currently paying rewards.** Orders placed before or after its campaign window earn nothing.
* **Keep orders close to the current price.** The closer they are, the more they can earn. Orders too far away do not count.
* **Keep at least `$50` active across your buy and sell orders.** Check the bot plan before going live.
* **Keep both sides active.** A balanced buy and sell setup can score up to `3x` more than only one side. Market Lab bots do this automatically.
* **Watch fixed grids.** Grid prices do not follow the market. If price moves away, those orders may stop earning until it returns.
* **Do not trade with yourself.** Wash trading and circular volume are excluded.

Orders only score while the market price is between `2¢` and `98¢`. Start small, follow the bot logs, and stop the job if the market no longer suits your setup.

## Where the $1M goes [#where-the-1m-goes]

| Share | How you earn it                                                  |
| ----: | ---------------------------------------------------------------- |
|   40% | Keep qualifying buy and sell orders open near the current price. |
|   30% | Another trader fills one of your bot's open orders.              |
|   30% | Make a trade that immediately fills against an existing order.   |

Market Lab's bots mainly compete for the first two pools. Outcome divides each pool among everyone who qualifies, based on their score. The `$1M` is the total campaign pool, not a guaranteed personal payout.

Rewards do not remove trading risk. A bot can earn rewards and still lose money from price movement or fees.

Want the exact rules? Read Outcome's pages for [eligibility](https://docs.outcome.xyz/outcome-liquidity-rewards#reward-eligibility), [earning from open orders](https://docs.outcome.xyz/outcome-liquidity-rewards#quote-depth-score), [earning from fills](https://docs.outcome.xyz/outcome-liquidity-rewards#maker-fill-reward), and [activity that does not count](https://docs.outcome.xyz/outcome-liquidity-rewards#exclusions).
