Permissionless initialization
Create a new outcome market
This form mirrors the program rules: the market is derived from the selected Pyth feed, `start_time`, `end_time`, and the precise market type encoding.
Choose the underlying feed and the market type that will determine settlement.
End time controls settlement. Start time is only configurable for Up / Down markets.
For threshold and range markets, the selected feed's configured exponent is used during initialization.
YES and NO will inherit the selected token's mint decimals.
Derived accounts
Start time is generated at submission for this market type, so PDAs are finalized when the transaction is built.
Program rule check
The client validates the same high-level rules as the program: valid timing, valid range bounds, collateral token mint existence, and a future `end_time`.
Final enforcement still happens on-chain. If the cluster clock or account state changed between preview and submission, the program will reject the transaction.
