Multi-Outcome Markets
At a Glance
What This Section Does
Manage multi-outcome prediction markets where one parent event contains multiple child outcome markets. Create parent events with multiple outcomes, review submissions, approve quality events, publish them live, and determine final outcomes when events close.
Who Should Use This
- Market Managers: Create and oversee multi-outcome events
- Senior Admins: Approve and publish multi-outcome events
- Quality Reviewers: Review event quality before approval
Most Common Tasks
- Create a New Multi-Outcome Event: Set up parent event with multiple outcome markets
- Approve an Event: Review and approve submissions
- Publish an Event: Make events live for trading
- Resolve an Event: Determine final outcome among multiple possibilities
- Manage Child Markets: View and manage individual outcome markets within an event
Before You Start
Make sure you have these permissions:
admin_market: Required for all admin market operations.market_multiple_outcome: Required for admin to manage multiple outcomes.- Whitelist: "
Create & Approve Markets": Required to create and publish. - Whitelist: "
Resolve & Approve Resolution": Required to determine outcomes.
Overview
What It Is
A Multi-Outcome Market (Parent) is a prediction market structure where one parent event contains multiple child outcome markets. Unlike binary markets that have only Yes/No outcomes, multi-outcome markets allow traders to bet on one of several possible outcomes. The parent event defines the question, rules, and metadata shared by all child markets, while each child market represents a distinct possible outcome.
Example: "Ullamco cumque volup" (Parent Event)
- Child Market 1: "Keefe Mckee"
- Child Market 2: "Dakota Villarreal"
- Child Market 3: "Ariel Woods"
Why It Exists
Multi-outcome markets exist to enable more complex prediction scenarios that cannot be adequately represented by binary Yes/No questions. They provide flexibility for events with multiple mutually exclusive outcomes, allowing traders to express more nuanced views on complex questions.
When Admins Use It
Admins use multi-outcome markets when:
- Events have multiple distinct, mutually exclusive possible outcomes
- They need to manage complex questions that require more than two options
- They want to provide traders with multiple betting options within a single event framework
- Events require structured outcome definitions (e.g., elections, sports tournaments, awards)
1. Parent Event Fields
The parent event contains the following key fields visible on the Multi-Outcome Markets list page and detail pages:
| Field | Description | Required | Location |
|---|---|---|---|
| Question | The main event question that defines what is being predicted | Yes | Creation form, detail page |
| Cover Image | Visual thumbnail representing the event | No | Creation form, list table |
| Rules | Resolution rules defining how and when the event will be resolved (supports rich text formatting: bold, italic, underline, strikethrough, ordered lists, bullet lists, links) | Yes | Creation form, detail page |
| Category | Primary classification (Tech, Crypto, E-Sports, Trending, Sport, Politics, Entertainment, Economy, Culture) | Yes | Creation form, list table, detail page |
| Tags | Secondary labels for categorization and discovery | No | Creation form, list table |
| Expiration Date | Date and time when trading closes for all child markets | Yes | Creation form, list table, detail page |
| Orderbook Closed Date | Optional date when orderbook stops accepting new orders | No | Creation form |
| Outcomes | List of outcome names that become child markets (minimum 2 required) | Yes | Creation form |
%20(3).png)
Parent Event Fields
2. Parent Event Table Columns
| Column | Description |
|---|---|
| Cover Image | Thumbnail image representing the parent event. Helps users visually identify the event quickly. |
| Event Name | Clickable event title (e.g., “Ullamco cumque volup”). Includes a Toggle outcomes button to expand/collapse all child markets under this parent. |
| Status | Current status of the parent event:
|
| Category | Primary classification for the event (e.g., “Tech”, “Politics”, “Esports”). |
| Tags | Associated tags displayed inline. Can be empty. Helps filter and categorize events. |
| Markets | Total number of child markets/outcomes under the parent (e.g., 3). |
| Owner | Username of the creator (e.g., PEPESURFING). Clickable to open user profile. |
| Created At | Timestamp when the event was created (e.g., 12/1/2025). Sortable column (▾ indicator). |
| Expires At | Parent-level expiration date and time (e.g., 12/2/2025 00:00). |
| Actions | Quick action buttons depending on status:
|
3. Child Markets Table Columns
| Column | Description |
|---|---|
| Outcome | Child market name (e.g., “Keefe Mckee”, “Dakota Villarreal”, “Ariel Woods”).
|
| Status | Current status of the child market. Examples:
|
| Resolution Outcome | Displays:
|
| Liquidity | Available liquidity for this specific child market (e.g., 0). Aggregated independently per outcome. |
| Volume | Total trading volume for this child market (e.g., 0). |
| Owner | Username of the market creator (e.g., PEPESURFING). |
| Expires At | Expiration timestamp for the child market (usually inherited from parent). Example: 02/12/2025 00:00 |
| Last Updated At | Timestamp of the most recent update on this child market. Example: 01/12/2025 15:05 |
| Actions | Quick actions available per child market:
Row actions (three-dots
|
.png)
Child Markets Table Columns
4. Child Outcome Markets
Each outcome specified in the parent event becomes a separate child market with the following characteristics:
| Column | Description |
|---|---|
| Shared Attributes | All child markets share the parent's expiration date, category, tags, and resolution rules. |
| Individual Identity | Each child has its own market name (outcome name), Market ID, and trading activity. |
| Market Name Format | Combines parent name with outcome name: "Ullamco cumque volup - Keefe Mckee". |
| Mutually Exclusive | Only one child market can be the winning outcome when resolved. |
| Status Synchronization | Child markets move together through status changes (Proposed → Approved → Live). |
| Independent Trading | Each child market can be traded independently, with its own orderbook and pricing. |
Status Definitions
The parent event and its child markets share the following status lifecycle:
| Status | Tab Location | Description | Available Actions |
|---|---|---|---|
| Proposed | Active > Proposed | Initial state after creation, awaiting admin review | Approve, Reject, Edit item |
| Approved | Active > Approved | Reviewed and approved, ready for publishing | Publish, Reject, Edit item |
| Live | Active > Live | Published and actively trading on the platform | Propose Resolution, Edit item |
| Closed | Completed > Closed | Trading period has ended, awaiting resolution | Propose Resolution, Edit item |
| Resolution Proposed | Completed > Resolution Proposed | Outcome proposed, awaiting final confirmation | Resolve, Edit item |
| Resolved | Completed > Resolved | Final outcome confirmed, payouts processed | View Orders |
| Rejected | Rejected | Did not meet quality standards | View Orders |
| Archived | Archived | Removed from active display | Edit item |
5. Parent-Level Tasks
Review Parent
Purpose: Examine parent event details to assess quality, completeness, and compliance before approval.
When to Use: When events appear in the Active > Proposed tab requiring review.
Steps
| Step | Action | Description |
|---|---|---|
| 1 | Navigate to module | Go to Markets → Multi-Outcome Markets from the main navigation. |
| 2 | Select correct tab | Choose Active → Proposed to see all proposed multi-outcome events. |
| 3 | Review parent event (list view) | Check the parent event row for:
|
| 4 | Expand child outcomes | Click dropdown button to reveal all child outcome markets. |
| 5 | Review child outcomes | For each child market, check:
|
| 6 | Review event title | Confirm Event Title is correct and matches creator submission. |
| 7 | Check status & outcome display | Verify the Event Status and any Outcome Display information. |
| 8 | Check expiration countdown | If expiring within 24 hours, ensure the Expiring Soon Timer appears (e.g., “09 hours : 02 minutes : 36 seconds”). |
| 9 | Review trading metrics | Check aggregated metrics across all child markets:
|
| 10 | Review fee configuration | Ensure Fees are displayed correctly:
|
| 11 | Check Market Activity tab | Review audit logs such as “Market Created” showing creator and timestamp. |
| 12 | Check Recent Orders tab | View recent trades across all associated child markets. |
| 13 | Review Market Information panel | Verify critical metadata:
|
| 14 | Review action buttons | Ensure available admin actions are visible:
|
| 15 | View resolution rules | Click View Resolution Rules to review detailed resolution logic/criteria. |
| 16 | Preview Child market | Click Preview to open the public-facing version of the Child market in a new tab. |
%20(4).png)
Key Notes:
- Review resolution rules carefully to ensure they are objective and clear.
- Verify that all outcomes are distinct and mutually exclusive.
- Check that the expiration date provides adequate time for the outcome to be determined.
- Use Preview to verify the event displays correctly to users.
- When viewing child markets via Toggle outcomes, each child shows its individual status, liquidity, volume, and timestamps.
6. Approve a Parent
Purpose: Approve parent events that meet quality standards and make them ready for publishing.
When to Use: After reviewing a proposed event and confirming it meets all quality standards.
Steps
| Step | Action | Details |
|---|---|---|
| 1 | Navigate to tab | Go to Active → Proposed to view all proposed parent events. |
| 2 | Locate parent event | Find the event you want to approve in the table. |
| 3 | (Optional) Expand child markets | Click Toggle outcomes button to display all child markets and review their details. |
| 4 | Review event details | Ensure the event meets quality and compliance standards:
|
| 5 | Approve parent event | Click Approve in the Actions column of the parent event row. |
| 6 | Confirm approval | A confirmation dialog appears → click Confirm. |
%20(1).gif)
Steps of Approving a parent event
Outcome:
After approval:
-
Parent event status changes from “Proposed” → “Approved”
-
Page auto-switches to Active → Approved tab
-
All child markets auto-approve simultaneously
-
Child statuses update: “Proposed” → “Approved”
-
All child Last Updated At timestamps refresh
-
Success notification appears: “Market approved successfully”
-
Action buttons update → Publish now replaces Approve
-
All child markets receive blockchain identifiers:
- Question ID
- Market Address
- Question Market Address
- Condition ID
These were previously N/A in Proposed status.
Key Notes:
- Approving a parent event automatically approves ALL child markets.
- Approved events remain in Approved status until manually published.
- Approval can be reversed by rejecting the event.
- Verify resolution criteria are objective before approving.
- After approval, child markets have blockchain addresses assigned (visible on child market detail pages).
- The system automatically synchronizes status across parent and all children.
- After approval, verify status changes by checking the event has moved to the Approved tab and all child markets show Approved status when expanded.
7. Reject a Parent
Purpose: Reject events that do not meet quality standards or violate platform policies.
When to Use: When an event fails to meet quality standards, has unclear rules, or violates platform policies.
Steps
| Step | Action | Details |
|---|---|---|
| 1 | Navigate to event | Go to any Active tab (e.g., Proposed, Approved) and locate the parent event you want to reject. |
| 2 | Click Reject | Click the Reject button. |
| 3 | Confirm rejection | A rejection confirmation dialog appears → click Confirm to proceed. |
| 4 | Provide reason | Enter the explanation before confirming. |
Outcome: The event status changes to "Rejected", and it moves to the Rejected tab. All child markets are also rejected.
Key Notes:
- Rejecting a parent event rejects all associated child markets.
- Rejected events can be reviewed later but are removed from active circulation.
- Provide clear feedback when rejecting to help improve future submissions.
- After rejection, verify the event has moved to the Rejected tab and all child markets are also rejected.
8. Edit a Parent
Purpose: Modify parent event details such as question, rules, category, tags, expiration date, or outcomes.
When to Use: When changes are needed to improve event quality or correct errors.
Steps
| Step | Action | Details |
|---|---|---|
| 1 | Navigate to list | Go to the Multi-Outcome Markets list page. |
| 2 | Locate parent event | Find the parent event you want to edit in the table. |
| 3 | Open row actions | Click the Row actions button (three-dots ) in the Actions column. |
| 4 | Select Edit | From the dropdown menu, select Edit to open the event editor. |
| 5 | Update event fields | Modify any of the following fields:
|
| 6 | Save changes | Click Save to apply modifications. |
Available Menu Actions
| Menu Action | Description | Notes |
|---|---|---|
| Edit Market | Opens the child market editor to modify event details such as question, image, rules, category, tags, expiration, and outcomes. | Available when the child market is not archived or fully resolved. |
| View Orders | Opens a new tab showing all orders across a child outcome market, including historical activity. | Useful for liquidity review and trade auditing. |
| Create Orders | Allows admins to manually place buy/sell orders to provide liquidity or correct child market imbalance. | Typically available only to roles with liquidity management permissions. |
| Fee Settings | Configure Trading Fee, Merge Fee, Redeem Fee, or other adjustable fee parameters. | May be disabled for events in certain statuses (e.g., Live, Resolved). |
| View Disputes | Shows any disputes submitted by users regarding event resolution and data accuracy. | Appears only when disputes exist. |
Key Notes:
- Some fields may have restrictions on editing depending on child market status.
- Editing a parent event may affect all child markets.
- Changes to outcomes may require recreating child markets.
Steps
| Step | Action | Details |
|---|---|---|
| 1 | Navigate to the detail page | Click child market name from list. |
| 2 | View Metrics | View metrics in the header section (Total Volume, Total Value Locked, Total Liquidity, Fees). |
| 3 | View Market Activity | Click Market Activity tab to see audit logs (shows "Market Created" entries with creator, timestamp, and description). |
| 4 | View Recent Orders | Click Recent Orders tab to see recent trading activity. |
Key Notes:
- Market Activity shows complete history of all child markets changes.
- Recent Orders displays orders from all child markets.
- For new markets, metrics typically show "$0" for volume, value locked, and liquidity.
9. Child-Level Tasks
Each child outcome market within a parent event can be managed individually. Child markets represent specific possible outcomes (e.g., "Keefe Mckee", "Dakota Villarreal", "Ariel Woods" for the "Ullamco cumque volup" parent event).
What the Child Represents
A child market represents one specific possible outcome within the parent event. For example:
- Parent Event: "Ullamco cumque volup"
- Child Market 1: "Keefe Mckee" represents one possible outcome
- Child Market 2: "Dakota Villarreal" represents another possible outcome
- Child Market 3: "Ariel Woods" represents a third possible outcome
Each child market:
- Is a separate, tradable market with its own orderbook.
- Has a market name combining parent and outcome: "Ullamco cumque volup - Keefe Mckee".
- Shares the parent's expiration date, category, tags, and resolution rules.
- Moves through status changes together with the parent and other children.
- Can only be the winning outcome if it actually occurs when the event resolves.
10. Child Markets Fields
Purpose: Examine individual child market details and status.
When to Use: When you need to check the status, trading activity, or details of a specific child market.
Steps
| Step | Action | Details |
|---|---|---|
| 1 | Go to the parent event | Navigate to the parent event list page |
| 2 | Locate The Parent | Locate the parent event and click the Toggle outcomes button to expand child markets |
| 3 | Review Child Market | Review child market information in the expanded table:
|
| 4 | Click on a child market name to view its detail page | Review child market detail page information:
|
Key Notes:
- Each child has its own Market ID and trading statistics.
- Child markets can be accessed via URL pattern:
/admin/markets/{parent-name}---{outcome-name}
11. Approve a Child market
Purpose: Approve individual child markets (though typically done at parent level).
When to Use: Child markets are usually approved automatically when the parent is approved. Individual approval may be needed in special cases.
Steps
| Step | Action | Details |
|---|---|---|
| 1 | Navigate to the child market detail page | Click child market name from expanded parent. |
| 2 | View Quality Standards | Verify the child market meets quality standards |
| 3 | Approve Child Market | Click the Approve button on the child market detail page |
| 4 | Click Confirm | Confirm the approval in the confirmation dialog |
Key Notes:
- CRITICAL: Approving the parent event automatically approves ALL child markets simultaneously - this is a cascading action that cannot be done individually
- Individual child approval is NOT available as a separate action - approval happens at the parent level
- When parent is approved, all children immediately:
- Change status from "Proposed" to "Approved".
- Receive blockchain addresses (Question ID, Market Address, Question Market Address, Condition ID).
- Update "Last Updated At" timestamp to reflect approval time.
- Change action buttons from "Approve" to "Publish".
- The system automatically switches to the "Approved" tab after parent approval.
- A success notification appears: "Market approved successfully".
- After approval, verify status changes by checking the event has moved to the Approved tab and all child markets show Approved status when expanded.
12. Reject a Child market
Purpose: Reject individual child markets (though typically done at parent level).
When to Use: When a specific child market has issues that require rejection without rejecting the entire parent.
Steps
| Step | Action | Details |
|---|---|---|
| 1 | Expand parent and locate child in table. | Navigate to the child market detail page. |
| 2 | Verify status | Verify the child market should be rejected. |
| 3 | Click Reject | Click the Reject button (available on detail page or in expanded child table). |
| 4 | Confirm the rejection | Confirm the rejection in the confirmation dialog. |
Key Notes:
- Rejecting the parent rejects all children.
- Individual child rejection may require parent event adjustment.
- After rejection, verify the child market status updates and parent may be affected.
13. Edit a Child market
Purpose: Modify child market details such as outcome name.
When to Use: When corrections are needed to a specific outcome market.
Steps
| Step | Action | Details |
|---|---|---|
| 1 | Navigate to child market | Open the child market detail page from the parent view or child table link. |
| 2 | Open menu | Click the first Open menu button (three-dots button) on the child market detail page. |
| 3 | Select Edit Market | From the dropdown menu, choose Edit Market to access editable fields. |
| 4 | Make updates | Modify allowed fields (note: child markets may have limited editable fields depending on status). |
| 5 | Save changes | Click Save to apply updates. |
Available Menu Actions (
button):
- Edit Market: Modify event details.
- View Orders: See all orders for this child market (opens in new tab).
- Create Orders: Place admin orders to provide liquidity.
- Fee Settings: Adjust fee percentages (may be disabled for certain statuses).
- View Disputes: Review any disputes raised by users.
Key Notes:
- Some fields are inherited from parent and must be edited at parent level.
- Editing a child market changes will be reflected in the Market Activity audit log.
14. How It Affects the Parent
Child market actions affect the parent event as follows:
| Child Action | Parent Impact |
|---|---|
| Child Status Changes | Parent status may need to sync with children |
| Child Approval | Parent can only publish when all children are approved |
| Child Rejection | May prevent parent from publishing until resolved |
| Child Trading Activity | Contributes to parent's Total Volume and metrics |
| Child Resolution | Only one child can win; determines parent's final outcome |
Key Notes:
- When viewing parent metrics, all child market data is aggregated together.
Additional Common Questions
Q: Can I edit outcomes after creating the event? A: Yes, but editing outcomes may require recreating child markets. Edit carefully as this can affect existing child markets. Use the Edit function and modify outcomes in the Outcomes section.
Q: What happens if I reject a parent event? A: Rejecting a parent event automatically rejects all child markets. They move to the Rejected tab and are no longer active. Verify by checking the Rejected tab and expanding to see all rejected children.
Q: Can I approve individual child markets separately? A: Typically, child markets are approved automatically when the parent is approved. Individual approval may be available on child market detail pages, but the standard workflow is to approve at the parent level.
Q: How do I know which child market won? A: Review the resolution rules, check actual event outcome, and select the child market that represents what actually occurred. Only one child can be the winner.
Q: What if multiple outcomes seem to have occurred? A: Only one child market can win. Review resolution rules carefully to determine the primary outcome. If outcomes are truly tied, consider using resolution with payout ratio (if available).
Q: Can I change a child market's outcome name? A: Outcome names can typically be edited via Edit Market, but this may affect existing references. Edit with caution and verify child markets update correctly.
Q: How do child markets appear to traders? A: Traders see the parent event question with all child markets as separate betting options, each with its own price and orderbook. Use the Preview button to see the public-facing view.
Q: How do I access a specific child market? A: You can access child markets by:
- Expanding parent via Toggle outcomes and clicking child market name.
- Navigating directly to URL:
/admin/markets/{parent-name}---{child-name} - Using the child market detail page link.
Q: What information is shown in the child market expanded table? A: When you expand via Toggle outcomes, you see: Outcome name, Status, Resolution Outcome, Liquidity, Volume, Owner, Expires At, Last Updated At, and Actions (Reject, Row actions).
Conclusion
Multi-Outcome Markets provide a powerful way to create prediction markets with multiple possible outcomes. By following this guide, you can effectively create, manage, and resolve multi-outcome events, ensuring quality and fairness throughout the event lifecycle.
Remember to:
- Create clear, unambiguous event questions with comprehensive resolution rules.
- Define mutually exclusive outcomes that cover all possible scenarios (minimum 2 required).
- Review events thoroughly before approval and publishing using Toggle outcomes to verify all children.
- Base resolutions strictly on defined criteria.
- Monitor events regularly and address issues promptly.
- Use Preview to verify public-facing appearance.
- Check Market Activity logs to track all changes.
For additional support or questions, refer to the Xmarket platform documentation or contact your administrator.
button to expand/collapse all child markets under this parent.