8. Asset selection and portfolio composition¶
The engine applies the same methodology to any liquid instrument. What makes an asset eligible, how to choose between eligible assets, and which parameters need an operator's judgment are three separate questions, so they are treated separately here.
8.1 Eligibility¶
An asset can be traded if three things hold.
- Sufficient liquidity. Enough orderbook depth to fill at the configured quantities without excessive slippage.
- Sufficient volatility. Price must oscillate at the timescale the strategy trades, or there is nothing to capture.
- Venue support. The asset must be tradeable on one of the five supported venues (section 6).
The engine treats each trading pair as an independent instance. Different assets can run different strategy files, different accumulation parameters, and different oracle overrides at the same time, subject to the shared quote pool on their venue.
8.2 Choosing among eligible assets¶
Eligibility does not imply a good candidate. Under the oracle's methodology, which depends entirely on the price history an asset has produced, the difference matters.
- Length of clean history. The drawdown reference, the survival replay, and the aggressiveness bias are all computed from merged history, so a longer and cleaner series produces better-calibrated sizing.
- Market capitalization-based stability. Larger caps tend to show more reliable mean reversion and lower tail risk.
- Fundamental quality. Assets should have real utility and durable demand. Purely speculative instruments carry a higher probability of permanent impairment, which no survivability model can hedge, because the model is calibrated on the asset's own past and a permanent impairment is by definition outside it.
- Yield-bearing assets (optional). Relevant only if the operator wants to compound through dividends, coupons, staking, or lending. Nothing in the engine changes based on it.
8.3 Parameters needing operator judgment¶
- Order sizing relative to depth. The configured
qtyanchors the oracle's search lower bound and should stay small relative to orderbook depth at the target levels, or the engine will move the market it is trying to trade in. - Volatility profile. An asset that trends in one direction for extended periods accumulates without realizing profits. The oracle widens spacing and shrinks size as the drawdown deepens, but it cannot manufacture a reversal, so this is the assumption most worth checking per asset (section 2.1).
- Fee structure. Fees enter the survival replay on both sides of every fill and are charged against the realized profit that drives the accumulation reserve. On venues that honour post-only, fill cost is the maker fee, so fee tiers matter more than spread conditions.
The engine supports any number of concurrent pairs, limited by API rate limits and available capital. Each is configured independently.