Exactly one of: object; object
| Field | Required at this level | Type | Description and constraints |
|---|---|---|---|
oneOf[1].engineVersion |
Yes | Constant digital-twin-pcg64-fixed-v1 |
— |
oneOf[1].seed |
Yes | string |
— |
oneOf[1].pathCount |
Yes | integer |
Allowed: 2000, 10000 |
oneOf[1].stepCount |
Yes | integer |
Minimum: 1; Maximum: 365 |
oneOf[1].scenario |
Yes | object |
Additional properties rejected |
oneOf[1].scenario.id |
Yes | string |
— |
oneOf[1].scenario.name |
Yes | string |
— |
oneOf[1].scenario.kind |
Yes | string |
Allowed: HISTORICAL_REPLAY, BULL, BEAR, SIDEWAYS, LIQUIDITY_CRISIS, TOKEN_UNLOCK, LARGE_BUYER, LARGE_SELLER, LIQUIDITY_WITHDRAWAL, GAS_SPIKE, ORACLE_OUTAGE, COMBINED |
oneOf[1].scenario.driftPipsPerStep |
Yes | integer |
Minimum: -1000000; Maximum: 1000000 |
oneOf[1].scenario.volatilityPipsPerStep |
Yes | Pips | — |
oneOf[1].scenario.liquidityWithdrawalPips |
Yes | Pips | — |
oneOf[1].scenario.oneSidedFlowPips |
Yes | Pips | — |
oneOf[1].scenario.gasIncreasePips |
Yes | Pips | — |
oneOf[1].scenario.oracleOutageStep |
No | integer |
Minimum: 0; Maximum: 364 |
oneOf[1].scenario.historicalReturnPips |
No | Array of integer |
Min items: 1; Max items: 365 |
oneOf[1].scenario.protocolFeePips |
No | Pips | — |
oneOf[1].scenario.platformFeePips |
No | Pips | — |
oneOf[1].scenario.unlocks |
No | Array of UnlockTranche | Max items: 256 |
oneOf[1].variants |
Yes | Array of object |
Min items: 5; Max items: 5 |
oneOf[1].variants[].variant |
Yes | string |
Allowed: CURRENT, RECOMMENDED, CONSERVATIVE, CAPITAL_EFFICIENT, EMERGENCY |
oneOf[1].variants[].endingValueQuote |
Yes | DistributionPercentiles | — |
oneOf[1].variants[].slippagePips |
Yes | PipsPercentiles | — |
oneOf[1].variants[].drawdownPips |
Yes | PipsPercentiles | — |
oneOf[1].variants[].turnoverQuote |
Yes | DistributionPercentiles | — |
oneOf[1].variants[].gasCostQuote |
Yes | DistributionPercentiles | — |
oneOf[1].variants[].feeIncomeQuote |
Yes | DistributionPercentiles | — |
oneOf[1].variants[].protocolFeesQuote |
Yes | DistributionPercentiles | — |
oneOf[1].variants[].platformFeesQuote |
Yes | DistributionPercentiles | — |
oneOf[1].variants[].inventoryPips |
Yes | PipsPercentiles | — |
oneOf[1].variants[].minimumDepthQuote |
Yes | DistributionPercentiles | — |
oneOf[1].variants[].reserveBreachProbabilityPips |
Yes | Pips | — |
oneOf[1].variants[].drivers |
No | Array of object |
— |
oneOf[1].variants[].drivers[].driver |
Yes | string |
Allowed: PRICE_PATH, VOLATILITY, FLOW, LIQUIDITY, UNLOCK, GAS, RESERVE |
oneOf[1].variants[].drivers[].impactQuote |
Yes | SignedAtomicAmount | — |
oneOf[1].variants[].drivers[].evidence |
Yes | string |
— |
oneOf[1].variants[].drivers[].method |
Yes | Constant DETERMINISTIC_COUNTERFACTUAL_DELTA_V1 |
— |
oneOf[1].recommendedVariant |
Yes | string |
Allowed: CURRENT, RECOMMENDED, CONSERVATIVE, CAPITAL_EFFICIENT, EMERGENCY |
oneOf[1].warnings |
Yes | Array of string |
— |
oneOf[1].replayCompleteness |
Yes | Constant HISTORICAL_V1_INPUT_SNAPSHOT_UNAVAILABLE |
— |
oneOf[1].inputHash |
Yes | Exactly one of: Hash; null |
— |
oneOf[1].sourceLineage |
No | SimulationStudySourceLineage | — |
oneOf[1].treasury |
No | object |
Additional properties rejected |
oneOf[1].treasury.unlocks |
Yes | Array of UnlockTranche | Max items: 256 |
oneOf[1].policy |
No | object |
Additional properties rejected |
oneOf[1].policy.availability |
Yes | Constant NOT_ATTACHED_TO_STUDY |
— |
oneOf[1].disclosureApplied |
Yes | object |
Additional properties rejected |
oneOf[1].disclosureApplied.drivers |
Yes | boolean |
— |
oneOf[1].disclosureApplied.treasury |
Yes | boolean |
— |
oneOf[1].disclosureApplied.policy |
Yes | boolean |
— |
oneOf[2].engineVersion |
Yes | Constant digital-twin-pcg64-fixed-v2 |
— |
oneOf[2].seed |
Yes | string |
— |
oneOf[2].pathCount |
Yes | integer |
Allowed: 2000, 10000 |
oneOf[2].stepCount |
Yes | integer |
Minimum: 1; Maximum: 365 |
oneOf[2].scenario |
Yes | object |
Additional properties rejected |
oneOf[2].scenario.id |
Yes | string |
— |
oneOf[2].scenario.name |
Yes | string |
— |
oneOf[2].scenario.kind |
Yes | string |
Allowed: HISTORICAL_REPLAY, BULL, BEAR, SIDEWAYS, LIQUIDITY_CRISIS, TOKEN_UNLOCK, LARGE_BUYER, LARGE_SELLER, LIQUIDITY_WITHDRAWAL, GAS_SPIKE, ORACLE_OUTAGE, COMBINED |
oneOf[2].scenario.driftPipsPerStep |
Yes | integer |
Minimum: -1000000; Maximum: 1000000 |
oneOf[2].scenario.volatilityPipsPerStep |
Yes | Pips | — |
oneOf[2].scenario.liquidityWithdrawalPips |
Yes | Pips | — |
oneOf[2].scenario.oneSidedFlowPips |
Yes | Pips | — |
oneOf[2].scenario.gasIncreasePips |
Yes | Pips | — |
oneOf[2].scenario.oracleOutageStep |
No | integer |
Minimum: 0; Maximum: 364 |
oneOf[2].scenario.historicalReturnPips |
No | Array of integer |
Min items: 1; Max items: 365 |
oneOf[2].scenario.protocolFeePips |
No | Pips | — |
oneOf[2].scenario.platformFeePips |
No | Pips | — |
oneOf[2].scenario.unlocks |
No | Array of UnlockTranche | Max items: 256 |
oneOf[2].variants |
Yes | Array of object |
Min items: 5; Max items: 5 |
oneOf[2].variants[].variant |
Yes | string |
Allowed: CURRENT, RECOMMENDED, CONSERVATIVE, CAPITAL_EFFICIENT, EMERGENCY |
oneOf[2].variants[].endingValueQuote |
Yes | DistributionPercentiles | — |
oneOf[2].variants[].slippagePips |
Yes | PipsPercentiles | — |
oneOf[2].variants[].drawdownPips |
Yes | PipsPercentiles | — |
oneOf[2].variants[].turnoverQuote |
Yes | DistributionPercentiles | — |
oneOf[2].variants[].gasCostQuote |
Yes | DistributionPercentiles | — |
oneOf[2].variants[].feeIncomeQuote |
Yes | DistributionPercentiles | — |
oneOf[2].variants[].protocolFeesQuote |
Yes | DistributionPercentiles | — |
oneOf[2].variants[].platformFeesQuote |
Yes | DistributionPercentiles | — |
oneOf[2].variants[].inventoryPips |
Yes | PipsPercentiles | — |
oneOf[2].variants[].minimumDepthQuote |
Yes | DistributionPercentiles | — |
oneOf[2].variants[].reserveBreachProbabilityPips |
Yes | Pips | — |
oneOf[2].variants[].drivers |
No | Array of object |
— |
oneOf[2].variants[].drivers[].driver |
Yes | string |
Allowed: PRICE_PATH, VOLATILITY, FLOW, LIQUIDITY, UNLOCK, GAS, RESERVE |
oneOf[2].variants[].drivers[].impactQuote |
Yes | SignedAtomicAmount | — |
oneOf[2].variants[].drivers[].evidence |
Yes | string |
— |
oneOf[2].variants[].drivers[].method |
Yes | Constant DETERMINISTIC_COUNTERFACTUAL_DELTA_V1 |
— |
oneOf[2].recommendedVariant |
Yes | string |
Allowed: CURRENT, RECOMMENDED, CONSERVATIVE, CAPITAL_EFFICIENT, EMERGENCY |
oneOf[2].warnings |
Yes | Array of string |
— |
oneOf[2].replayCompleteness |
Yes | Constant COMPLETE_INPUT_SNAPSHOT |
— |
oneOf[2].inputHash |
Yes | Hash | — |
oneOf[2].inputSnapshot |
Yes | DisclosedSimulationStudyInputSnapshot | — |
oneOf[2].sourceLineage |
Yes | SimulationStudySourceLineage | — |
oneOf[2].treasury |
No | object |
Additional properties rejected |
oneOf[2].treasury.unlocks |
Yes | Array of UnlockTranche | Max items: 256 |
oneOf[2].policy |
No | object |
Additional properties rejected |
oneOf[2].policy.availability |
Yes | Constant NOT_ATTACHED_TO_STUDY |
— |
oneOf[2].disclosureApplied |
Yes | object |
Additional properties rejected |
oneOf[2].disclosureApplied.drivers |
Yes | boolean |
— |
oneOf[2].disclosureApplied.treasury |
Yes | boolean |
— |
oneOf[2].disclosureApplied.policy |
Yes | boolean |
— |
Nested required fields apply when their parent object or matching union branch is present. Named types link to their complete schema.
Exact definition: #/components/schemas/DisclosedSimulationStudy in the OpenAPI contract.