Open a paper position
arena_openOpens a paper position with play money in a real pool, laid out at the pool's price on the chain right now. Use after arena_join, with a pool from arena_pools or the token's default; for a real position from a wallet use plan_build. Returns: opened (the position: id, pair, band, askedUsd, putInUsd, valueUsd, holds), cashUsd, open (how many are open), say (how to explain it). Behavior: writes to the account; the token side is bought at the pool's real quote, so putInUsd can be under askedUsd and the rest stays cash; the position then earns the pool's real fees swap by swap, moves with the real price, and costs what a real one costs (0.25% to open, 5% of the fees). Heavy: costs 4 units and a heavy slot. Errors: refused when cash is short of amountUsd, 20 positions are already open, the band holds no rung, or the token has no pool.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| pool | No | The pool id from arena_pools. Left out: the token's default pool, the first one listed. | |
| rungs | No | How many rungs the band is cut into, 1 to 40; default 16. | |
| shape | No | How the money is spread over the rungs: spot (even), curve (most at the price), bidask (most at the edges), hybrid (between), custom (weights); default hybrid. | |
| token | Yes | The token's address. | |
| lowPct | Yes | the band's bottom, percent from the price (negative) | |
| highPct | Yes | the band's top, percent from the price | |
| weights | No | With shape custom: a relative height per rung, low price to high, any scale; resampled to the rung count. | |
| amountUsd | Yes | Play dollars to put in, 1 to 100000, from the account's cash. | |
| fullRange | No | True lays the whole price range instead of the band; lowPct and highPct are then ignored. |