Position Structure
Each user has one position account per market (or none if they haven’t traded):How Shares Work
Buying Shares
When you buy:
- USDC leaves your wallet
- New shares are minted
- Your position increases
- Price rises for that outcome
Selling Shares
When you sell:
- Shares are burned
- USDC returns to your wallet
- Your position decreases
- Price falls for that outcome
Calculating Position Value
Your position’s current value depends on share prices:Payout Calculation
When a market resolves, only the winning outcome’s shares have value:- Standard Resolution
- Unresolvable (255)
Winning shares redeem for $1 each (minus fees):Example: 1000 winning shares with 0.30% fee
- Gross: $1000.00
- Fee: $3.00
- Net payout: $997.00
Multi-Outcome Positions
In markets with more than 2 outcomes, you can hold shares in multiple outcomes simultaneously:Position Creation
Positions are created automatically on your first trade in a market:- User submits buy instruction
- Program checks for existing position
- If none exists, position PDA is created
- Shares are added to position
- Position persists until manually closed (if supported)
Position accounts require rent (~0.002 SOL). This is paid on first trade and refunded if the account is closed.
Fetching Positions
- Single Position
- All User Positions
Best Practices
Check Before Selling
Always verify your position balance before submitting a sell instruction to avoid transaction failures.
Track Multiple Markets
If you’re active in many markets, fetch all positions periodically to monitor exposure.
Redeem Promptly
While there’s no expiration, redeeming promptly frees up your capital for other opportunities.
Account for Fees
Factor in trading and redemption fees when calculating expected returns.