Overview
Alkimiya is a blockspace markets protocol that facilitates the creation, trading, and settlement of synthetic blockspace resources via a peer-to-peer system of smart contracts.
Public blockchains have finite capacity for blockspace resources, and therefore all on-chain actions compete for inclusions and orderings with transaction fees. The supply of blockspace is inelastic, and the demand is driven by exogenous factors. While scaling solutions can reduce the amount of full-node resources consumed, pricing the right to access them real-time is a fundamentally market-based challenge at global scale. As activities grow, the volatility of resource pricing hinders the growth of organizations that frequently settle on-chain, and leaks negative externalities that affect regular users.
Addressing market-based challenges requires market-based solutions. By abstracting attributes that represent blockspace resources (e.g. network average BTC Tx Fees), Alkimiya protocol makes accurate price discovery on blockspace resources possible for everyone.
Who should trade BTC Tx Fees?
- Miners: miners can lock-in future revenue stream by shorting BTC Tx Fees.
- Services (wallets, exchanges, market-makers, bridges, L2 operators): on-chain services that frequently settle on BTC can hedge against the volatility by longing BTC Tx Fees.
- Ordinals/BRC-20/Runes: active collectors can offset high mint fees by longing BTC Tx Fees.
- On-chain events traders: traders who analyze on-chain events or network activities trends can trade BTC Tx Fees.
Key Concepts
- BTC Tx Fees Index: The BTC Tx Fees Index is underlying benchmark. The index tracks the median BTC/kB per block, which takes the Sat/vB of all txs within a block, finds the median, and then covert into BTC/kB (by dividing 10^5).
The index is constructed by collecting and organizing data from Bitcoin network nodes, primarily through the use of the
getBlockStats()
RPC endpoint. The data source retrieves the median sat/vB for each block.
- Alkimiya Pool: An Alkimiya Pool is the set of all long and short positions within the same period (e.g. April 1 - April 30). Users can enter, trade, or close their positions anytime during the Pool’s period. The Pool tracks the rolling average of the index since the start (e.g. April 1). Upon settlement (e.g. April 30), the final payout is based on the average of the median BTC/kB per block across all blocks during the Pool’s period.
- Orders: Orders allow users to enter into long or short positions at specific prices. Users can create limit orders indicating their breakeven price (in BTC/kB) and order size (in kB). If other users find this order favorable, they can fill it to take on the opposite side. Users can also fill outstanding orders instead of creating their own orders.
- Cap: Cap is a predetermined upper bound on the Pool’s payout. The cap is required to limit the downside of the short positions. The cap’s value is set before the Pool starts, based on recent historical data. The cap is designed to be sufficiently high.
Core Functions
Long: Users who expect the average network transaction fees to increase over the Pool’s period.
-
To enter into a long position, the user has to submit an upfront payment:
Payment = breakevenPrice * size
-
The user will receive a number of NFTs that represent their long positions in the Pool. The user can then freely trade these NFTs. All long positions in the same Pool are fungible regardless of their breakeven price.
-
Upon settlement, the user burns the NFTs to claim their payout:
Payout = max(cap, avg.(index in Pool’s Period)) * size