FAQ - Exposure Limits and Open Positions FAQ's

What is an exposure limit?

Exposure limits track open positions and are given to designated liquidity providers. The exposure limits are based on a liquidity provider's Net Open Position (NOP). This will be communicated to liquidity providers by the Zero Hash operations team and will be a static overall USD amount.

How can I calculate my current NOP and remaining exposure?

Platforms may use the following endpoints to fetch the net settlement amount:

The USD value returned in the position_all_open_trades field is your current NOP.

Your remaining exposure can be calculated with the following formula:

  • Static Exposure Limit - abs(position_all_open_trades) = Remaining Exposure

Example: If your exposure limit is $100,000, and your current net open position is -$25,000, your remaining exposure is $75,000.

  • 100,000 - abs(-25,000) = 75,000

Note: position_all_open_trades should be converted to an absolute number and then subtracted from your exposure limit.

How can I check the trades that make my open position?

Using GET /trades

To fetch the net settlement amount using the GET /trades endpoint, Platforms should:

Include the parameter trade_state=active and trade_state=accepted. This parameter will filter trades with an active status and with accepted status. This request needs to be sent per trade_state separately.

More details on the trade_states below:

  • Accepted: The transaction has been received by Zero Hash but is not yet due to settle. A trade will update to 'Active' or 'Terminated' state based on the settlement schedule agreed with the liquidity provider.
  • Active: Zero Hash has attempted to settle the transaction but was unable to. Typically this is due to one or both of the counterparties being underfunded.
  • Terminated: The transaction is in a terminal state, and has a settlement_state of either settled or defaulted.
    • settled means the trade has fully settled, and each counterparty has been credited with the funds that were owed to them.
    • defaulted means that the trade could not be settled by the expiry time, and so is deemed in default.

Can I filter for just CLOB or RFQ trades?

Using GET /trades

To fetch the trade type amount using the GET /trades endpoint, Platforms should:

  • Include the parameter submission_method=clob. This parameter will only return trades executed via the Zero Hash CLOB.
  • Include the parameter submission_method=liquidity. This parameter will only return trades executed via the Zero Hash RFQ system.

Can I query the /positions endpoint for just my CLOB positions?

To track your positions separately, a liquidity provider can request an additional platform to be setup. This would enable RFQ and CLOB activity to be completely separated.

This means that RFQ and CLOB trades can no longer Net Settle, and would require separate settlement schedules. For example, delivering NDOs to distinct addresses and withdrawing funds per account.

The exposure limits for liquidity providers are based on the overall volume of all trades, so to calculate the correct remaining exposure, no trades should be excluded depending on CLOB or RFQ flow.

Example: If your exposure limit is $100,000, and your current net open position is $25,000 from RFQ trading, your remaining exposure is $75,000 for CLOB and RFQ trading combined.

If RFQ or CLOB was excluded, the remaining exposure would be calculated incorrectly.