Subnet 35: OxMarkets
OxMarkets is Bittensor Subnet 35. Public Cartha validator materials describe it as a liquidity-focused subnet where miner rewards are tied to verified USDC liquidity commitments rather than model output or generated content.
What OxMarkets Provides
The Cartha Validator README describes a validator system that scores miners from USDC liquidity positions, computes weights, and publishes those weights to Bittensor. The core scoring inputs are the size of the liquidity commitment, the duration of the lock, and the pool weight for that position.
The architecture guide frames the validator as a bridge from verified liquidity positions to Bittensor weight publication. Subnet 35 turns durable liquidity commitments into the scoring signal that determines miner weight.
Miner and Validator Roles
Miners participate through liquidity positions that the validator system can verify for a scoring period. A miner’s useful contribution is not inference, data labeling, or compute execution; it is maintaining eligible liquidity that the subnet can measure.
Validators run the scoring and publication side of the subnet. The README describes validator work as calculating miner scores from liquidity positions, normalizing those scores into weights, and publishing the resulting weights to the Bittensor network.
Relationship to Yuma Consensus
OxMarkets connects its liquidity scoring to Bittensor through validator weight publication. The Cartha Validator README describes validator-side scoring from eligible liquidity positions and weight publication to the Bittensor network, while the architecture guide describes those weights as the normalized output of the scoring process.
Those published weights are the subnet-level input that Yuma Consensus aggregates when determining miner consensus weights. The Emission documentation describes how those consensus weights determine each participant’s share of subnet emission, so the OxMarkets-specific contribution remains the liquidity-derived score before that Bittensor-wide consensus and emission layer.
Evaluation Context
OxMarkets’ evaluation context is DeFi liquidity commitment. The scoring signal is designed to favor positions that contribute more liquidity for longer periods, while excluding positions that no longer qualify under the validator’s eligibility rules.
This makes Subnet 35 different from model-evaluation subnets. A miner is not rewarded for a prediction, generated answer, or scientific simulation; the subnet measures an externally verifiable financial position and converts that position into on-chain reward weight.
The architecture guide also explains that individual positions can contribute separately to a miner’s score. That matters because a miner’s final weight can reflect a portfolio of commitments, not only one aggregate balance.
Weekly Epoch and Position Context
The Cartha Validator README describes OxMarkets scoring as a weekly epoch process. At the start of an epoch, validator-side logic works from an epoch-frozen view of eligible miner liquidity positions. That snapshot framing matters because the subnet is scoring durable commitments, not momentary balances that can be moved just before a validator publishes weights.
The architecture guide adds that positions are scored individually rather than collapsed into one average per miner. A miner can therefore be represented by multiple active positions, each with its own amount, pool context, and lock-duration contribution. The final miner score reflects the sum of qualifying positions that remain eligible for the epoch.
This gives Subnet 35 a portfolio-like reward surface. A miner with one large commitment and a miner with several smaller commitments are both evaluated through the positions that are actually eligible. Longer lock commitments can contribute more than shorter ones, while expired positions or deregistered hotkeys can be removed from the scoring set before weights are republished.
The architecture source also describes cached weights during the weekly cycle, with daily checks for expiry changes. In plain terms, OxMarkets can keep publishing weights from the current epoch while still removing commitments that stop qualifying during that period. That keeps the reward signal attached to active liquidity rather than stale position records.
For readers, the important distinction is that OxMarkets is not measuring trading predictions or model output. It measures verified liquidity commitments over an epoch and turns those commitments into Bittensor weights. The weekly snapshot, per-position accounting, and eligibility filtering are the source-backed pieces that connect external liquidity behavior to the subnet’s on-chain reward signal.
On-Chain Identity
Live SN35 subnet data is available on TaoStats. The source-backed liquidity-position and validator-weighting details in this article come from public Cartha validator materials rather than from live identity fields.
Development Stage Context
The Introduction to Bittensor describes subnet development as moving from localnet to testnet and then mainnet. For OxMarkets (SN35), that sequence changes how readers should interpret liquidity position examples and market scoring evaluation outcomes.
In localnet, OxMarkets-compatible miners and validators can be developed and tested in an isolated environment. Localnet position scores and emission outcomes do not represent production subnet performance.
On testnet, OxMarkets-compatible components can be exercised in a shared, non-production network. Testnet liquidity evaluations and validator scores are separate from mainnet subnet state.
On mainnet, OxMarkets (SN35) is the live production subnet where miners maintain positions and validators score those positions to determine real Bittensor emissions. The Cartha Validator README describes the mechanism that applies on the production network.
The Bittensor Networks reference separates mainnet, testnet, and localnet. A liquidity position result or emission outcome from one environment should not be read as representing production subnet performance in another environment.
Netuid 35 Identifies the Subnet On-Chain
Bittensor assigns every subnet a unique numeric identifier called a netuid, and Subnet 35 is the subnet registered at netuid 35 (Glossary: Netuid). The Understanding Subnets reference explains that each subnet runs its own incentive mechanism while sharing the same underlying Subtensor chain, so the netuid is the stable handle that distinguishes OxMarkets from every other subnet.
For a reader, this means “Subnet 35” and “netuid 35” refer to the same on-chain slot. A claim about OxMarkets should be tied to that netuid rather than to the registered name alone, because the name field can be changed on-chain while the netuid stays fixed.
Reader Boundary
Subnet 35 OxMarkets should not be read as generic Bittensor subnet documentation, financial, trading, or investment advice, or a substitute for the subnet’s own primary sources. It names the on-chain subnet registered at netuid 35 under the identity “OxMarkets” (Understanding Subnets, Glossary: Netuid).