## dYdX v4: How to Interpret the Block Data for Trades

In dYdX Chain trading, quantities and prices are represented in quantums (for quantities) and subticks (for prices), which need conversion for practical understanding.

### Quantums

The smallest increment of position size. Determined from `atomicResolution`

.

atomicResolution - Determines the size of a quantum. For example (opens in a new tab), an `atomicResolution`

of -10 for `BTC`

, means that 1 quantum is `1e-10`

`BTC`

.

### Subticks

Human-readable units: `USDC/<currency>`

e.g. USDC/BTC

Units in V4 protocol: `quote quantums/base quantums`

e.g. (`1e-14 USDC/1e-10 BTC`

)

Determined by `quantum_conversion_exponent`

, this allows for flexibility in the case that an asset’s prices plummet, since prices are represent in subticks, decreasing `subticks_per_tick`

would allow for ticks to denote smaller increments between prices.

E.g. 1 `subtick`

= `1e-14 USDC/1e-10 BTC`

and if BTC was at 20,000 USDC/BTC, a `tick`

being 100 USDC/BTC (`subtick_per_tick`

= 10000) may make sense.

If BTC drops to 200 USDC/BTC, a `tick`

being 100 USDC/BTC no longer makes sense, and we may want a `tick`

to be 1 USDC/BTC, which lets us set `subtick_per_tick`

to 100 to get to a `tick`

size of 1 USDC/BTC.

### Now back to the interpretation of the above image:

- First, notice column I is negative. That means this trade is a sell by the taker account. If It was positive, it would be a buy.

Result: Determined if this is a buy or a sell

- Next, look at column N. The perpetual_id is 7, which maps to AVAX-USD market. You can see all the mappings from this endpoint for the dYdX Chain deployment by dYdX Operations Services Ltd. https://indexer.dydx.trade/v4/perpetualMarkets (opens in a new tab) where the clobPairId is the perpetual_id.

Result: Determined the market

- Next, we need to get the decimals for this market. First, get the atomicResolution from that endpoint above which we see is -7. Now we can get the size of the trade. From column I and J, take this number -500000000 and multiply by 10^(AtomicResolution) and you get: -500000000 x 10^-7 = 50, so the quantity is 50.

Result: Determined the quantity

- Next, look at columns, E, F, G, H, I, and J

The price of the trade is either `abs((G+E)/I)*10e(-6 - AtomicResolution)`

, or `abs((H+F)/J)*10e(-6 - AtomicResolution)`

, either one is the same. Note that the ‘-6’ is because the AtomicResolution of USDC is -6.

`abs((1479130125 + 369875)/-500000000)*10e(-6 + 7) = 29.59`

`abs((-1479337255 - 162745)/500000000)*10e(-6 +7) = 29.59`

Result: Determined the price

### Conclusion

In conclusion, we have determined that this trade is SELL 50 AVAX-USD at price $29.59