The 0x protocol was recently upgraded to version 3.0 on the Ethereum mainnet, giving 0x token holders the ability to delegate their tokens to market makers and earn trading fees. 0x is an open protocol that allows any developer to create a decentralized exchange on the Ethereum blockchain.
In this new model, market makers are incentivized to provide liquidity to 0x-based exchanges. They receive rewards proportional to the amount of liquidity they provide to the market and the size of their ZRX stake.
Market makers who don't have enough ZRX to collect liquidity rewards can form a staking pool via third-party delegators, like you! Staking can be done via the 0x Portal.
One major change in 0x version 3.0, is that protocol fees are paid for each trade. These fees are collected and paid out automatically to the market makers at the end of each epoch, which is a 10 day period. The market maker then shares a portion of the rewards with the delegators, relative to the amount of ZRX they have staked with them.
ZRX token holders will also be able to vote on governance proposals using the 0x Portal, giving them a say in future upgrades to the protocol.
If you prefer an animated explanation, check out this slick video, recently released by the 0x team. After, I'll show you how to delegate your ZRX tokens using the 0x Staking Portal.
How to Delegate Your Tokens
First of all, visit the beta 0x Staking Portal.
Begin the staking process by clicking on the "Connect your wallet" button.

Currently Metamask is the only supported wallet, but you can follow these instructions to connect via a Ledger hardware wallet.
Next, click on the Get Started button.

If you don't have any ZRX tokens in your Metamask Ethereum wallet, you will see the message "You have no ZRX balance". In that case, you will either need to transfer some ZRX from another Ethereum wallet to Metamask, or purchase some from an exchange.
The wizard will automatically select the best staking pool for you based on the number of tokens you want to stake. You can stick with it, or click "Full list" and browse the other staking pools.
The closer the "Staked" percentage of the pool is to 100%, the greater the number of rewards will be paid out per ZRX token.

Once you've found your preferred staking pool, select the percentage of tokens you wish to stake, and click the Next button.

You will then be asked to confirm the amount of ZRX you are staking, and the pool to which you are staking it.

The first time you stake, you will have to sign a transaction allowing the 0x smart contract to take control of your 0x tokens. Once you have completed that step, you can sign the transaction to stake your tokens.
You should see the message "Locking your tokens into staking pool", which will take a few seconds.
After that, you should see a congratulatory message indicating that your tokens have been successfully locked to the pool!
Keep in mind that you have to wait until the next epoch before your staking becomes active and you start to accrue awards.
Now you can view your dashboard:

Here you can see your delegations to the various pools, along with a tally of how much ETH you've received in rewards.
This upgrade of the 0x protocol is a great step forward for decentralized exchanges. Token holders are now able to essentially vote for their favorite market makers and receive a portion of the fees as a reward. The 0x team seems to be composed of very talented people, who are leading the decentralized exchange industry towards a very bright future.