Events subscription
GET/stream/event/bus
Subscribe to a stream of events from the core
Request
Query Parameters
- BUS_EVENT_TYPE_UNSPECIFIED: Default value, always invalid
- BUS_EVENT_TYPE_ALL: Events of ALL event types, used when filtering stream from event bus
- BUS_EVENT_TYPE_TIME_UPDATE: Event for blockchain time updates
- BUS_EVENT_TYPE_LEDGER_MOVEMENTS: Event for when a transfer happens internally, contains the transfer information
- BUS_EVENT_TYPE_POSITION_RESOLUTION: Event indicating position resolution has occurred
- BUS_EVENT_TYPE_ORDER: Event for order updates, both new and existing orders
- BUS_EVENT_TYPE_ACCOUNT: Event for account updates
- BUS_EVENT_TYPE_PARTY: Event for party updates
- BUS_EVENT_TYPE_TRADE: Event indicating a new trade has occurred
- BUS_EVENT_TYPE_MARGIN_LEVELS: Event indicating margin levels have changed for a party
- BUS_EVENT_TYPE_PROPOSAL: Event for proposal updates (for governance)
- BUS_EVENT_TYPE_VOTE: Event indicating a new vote has occurred (for governance)
- BUS_EVENT_TYPE_MARKET_DATA: Event for market data updates
- BUS_EVENT_TYPE_NODE_SIGNATURE: Event for a new signature for a Vega node
- BUS_EVENT_TYPE_LOSS_SOCIALIZATION: Event indicating loss socialisation occurred for a party
- BUS_EVENT_TYPE_SETTLE_POSITION: Event for when a position is being settled
- BUS_EVENT_TYPE_SETTLE_DISTRESSED: Event for when a position is distressed
- BUS_EVENT_TYPE_MARKET_CREATED: Event indicating a new market was created
- BUS_EVENT_TYPE_ASSET: Event for when an asset is added to Vega
- BUS_EVENT_TYPE_MARKET_TICK: Event indicating a market tick event
- BUS_EVENT_TYPE_WITHDRAWAL: Event for when a withdrawal occurs
- BUS_EVENT_TYPE_DEPOSIT: Event for when a deposit occurs
- BUS_EVENT_TYPE_AUCTION: Event indicating a change in auction state, for example starting or ending an auction
- BUS_EVENT_TYPE_RISK_FACTOR: Event indicating a risk factor has been updated
- BUS_EVENT_TYPE_NETWORK_PARAMETER: Event indicating a network parameter has been added or updated
- BUS_EVENT_TYPE_LIQUIDITY_PROVISION: Event indicating a liquidity provision has been created or updated
- BUS_EVENT_TYPE_MARKET_UPDATED: Event indicating a new market was created
- BUS_EVENT_TYPE_ORACLE_SPEC: Event indicating an oracle spec has been created or updated
- BUS_EVENT_TYPE_ORACLE_DATA: Event indicating that an oracle data has been broadcast
- BUS_EVENT_TYPE_DELEGATION_BALANCE: Event indicating that an delegation balance of a party to a node for current epoch has changed
- BUS_EVENT_TYPE_VALIDATOR_SCORE: Event indicating the validator score for the given epoch
- BUS_EVENT_TYPE_EPOCH_UPDATE: Event indicating the start or end of an epoch
- BUS_EVENT_TYPE_VALIDATOR_UPDATE: Event indicating that validator node has been updated
- BUS_EVENT_TYPE_STAKE_LINKING: Event indicating a new staking event have been processed by the network
- BUS_EVENT_TYPE_REWARD_PAYOUT_EVENT: Event indicating the payout of a reward has been initiated
- BUS_EVENT_TYPE_CHECKPOINT: Event indicating a new checkpoint was created
- BUS_EVENT_TYPE_STREAM_START: Event indicating stream is starting
- BUS_EVENT_TYPE_KEY_ROTATION: Event indicating key rotation took place
- BUS_EVENT_TYPE_STATE_VAR: Event indicating state transitions in state variable consensus
- BUS_EVENT_TYPE_NETWORK_LIMITS: Event indicating network limits set or updated
- BUS_EVENT_TYPE_TRANSFER: Event indicating a update for a transfer
- BUS_EVENT_TYPE_VALIDATOR_RANKING: Event indicating the ranking of validator and their status in Vega
- BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_EVENT: Event indicating a new multi sig signer event have been processed
- BUS_EVENT_TYPE_ERC20_MULTI_SIG_SET_THRESHOLD: Event indicating the erc20 multi sig threshold have been updated
- BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_ADDED: Event indicating a new signer has been added to the ERC-20 multisig
- BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_REMOVED: Event indicating a signer has been removed from the ERC-20 multisig
- BUS_EVENT_TYPE_POSITION_STATE: Event indicating that a party's position has changed
- BUS_EVENT_TYPE_ETHEREUM_KEY_ROTATION: Event indicating Ethereum key rotation took place
- BUS_EVENT_TYPE_PROTOCOL_UPGRADE_PROPOSAL: Event indicating protocol upgrade proposal updates
- BUS_EVENT_TYPE_BEGIN_BLOCK: Event indicating the core is starting to process a new block
- BUS_EVENT_TYPE_END_BLOCK: Event indicating the core finished to process a block
- BUS_EVENT_TYPE_PROTOCOL_UPGRADE_STARTED: Event indicating the core is starting a protocol upgrade
- BUS_EVENT_TYPE_SETTLE_MARKET: Event indicating the market has stopped and settled
- BUS_EVENT_TYPE_TRANSACTION_RESULT: Event indicating the result of a transaction processed by the network
- BUS_EVENT_TYPE_SNAPSHOT_TAKEN: Event indicating a snapshot was taken at this block height
- BUS_EVENT_TYPE_PROTOCOL_UPGRADE_DATA_NODE_READY: Event data node uses to notify that it is ready to upgrade
- BUS_EVENT_TYPE_DISTRESSED_ORDERS_CLOSED: Event indicating parties had orders closed because they were distressed, but were not closed out.
- BUS_EVENT_TYPE_EXPIRED_ORDERS: Event indicating parties had orders closed because they were distressed, but were not closed out.
- BUS_EVENT_TYPE_DISTRESSED_POSITIONS: Event indicating parties have become, or were, distressed but still have an active position.
- BUS_EVENT_TYPE_SPOT_LIQUIDITY_PROVISION: Event indicating a spot liquidity provision has been created or updated.
- BUS_EVENT_TYPE_STOP_ORDER: Event indicating a stop order has been submitted or updated.
- BUS_EVENT_TYPE_FUNDING_PERIOD: Event indicating the start or end of a funding period.
- BUS_EVENT_TYPE_FUNDING_PERIOD_DATA_POINT: Event indicating a data point for a funding period has been received.
- BUS_EVENT_TYPE_TEAM_CREATED: Event indicating a team has been created.
- BUS_EVENT_TYPE_TEAM_UPDATED: Event indicating a team has been updated.
- BUS_EVENT_TYPE_REFEREE_SWITCHED_TEAM: Event indicating a referee switched team.
- BUS_EVENT_TYPE_REFEREE_JOINED_TEAM: Event indicating a referee joined a team.
- BUS_EVENT_TYPE_REFERRAL_PROGRAM_STARTED: Event indicating a referral program started.
- BUS_EVENT_TYPE_REFERRAL_PROGRAM_UPDATED: Event indicating a referral program has been updated.
- BUS_EVENT_TYPE_REFERRAL_PROGRAM_ENDED: Event indicating a referral program ended.
- BUS_EVENT_TYPE_REFERRAL_SET_CREATED: Event indicating a set has been created.
- BUS_EVENT_TYPE_REFEREE_JOINED_REFERRAL_SET: Event indicating a referee joined a set.
- BUS_EVENT_TYPE_PARTY_ACTIVITY_STREAK: Event indicating the updated activity streak for a party
- BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_STARTED: Event indicating a volume discount program started.
- BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_UPDATED: Event indicating a volume discount program has been updated.
- BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_ENDED: Event indicating a volume discount program ended.
- BUS_EVENT_TYPE_REFERRAL_SET_STATS_UPDATED: Event indicating the updated statistics for a referral set.
- BUS_EVENT_TYPE_VESTING_STATS_UPDATED: Event indicating the updated statistics for the vesting program.
- BUS_EVENT_TYPE_VOLUME_DISCOUNT_STATS_UPDATED: Event indicating the updated statistics for the volume discount.
- BUS_EVENT_TYPE_FEES_STATS_UPDATED: Event indicating the fees statistics per market at end of epoch
- BUS_EVENT_TYPE_FUNDING_PAYMENTS: Event indicating a funding period has ended and resulted in funding payment transfers.
- BUS_EVENT_TYPE_PAID_LIQUIDITY_FEES_STATS_UPDATED: Event used to report the updated paid liquidity fee statistics for the market at the end of the epoch
- BUS_EVENT_TYPE_VESTING_SUMMARY: Event used to report the summary of vesting and locked balances at the end of the epoch
- BUS_EVENT_TYPE_TRANSFER_FEES_PAID: Event used to link ledger entries to the transfer that triggered the fees being collected.
- BUS_EVENT_TYPE_TRANSFER_FEES_DISCOUNT_UPDATED: Event indicating that a party's available transfer fee discount has changed, per asset.
- BUS_EVENT_TYPE_PARTY_MARGIN_MODE_UPDATED: Event indicating that a party updated their margin mode on a market.
- BUS_EVENT_TYPE_PARTY_PROFILE_UPDATED: Event indicating that a party updated their profile.
- BUS_EVENT_TYPE_TEAMS_STATS_UPDATED: Event indicating that teams' statistics have been updated.
- BUS_EVENT_TYPE_TIME_WEIGHTED_NOTIONAL_POSITION_UPDATED: Event indicating time weighted notional position has been updated.
- BUS_EVENT_TYPE_CANCELLED_ORDERS: Event containing the IDs of orders cancelled by a party on a market.
- BUS_EVENT_TYPE_GAME_SCORES: Event containing the near realtime game scores for parties and teams.
- BUS_EVENT_TYPE_AMM: Event use to notify for an AMM update.
- BUS_EVENT_TYPE_MARKET: Event indicating a market related event, for example when a market opens
- BUS_EVENT_TYPE_TX_ERROR: Event used to report failed transactions back to a user, this is excluded from the ALL type
Possible values: [BUS_EVENT_TYPE_UNSPECIFIED
, BUS_EVENT_TYPE_ALL
, BUS_EVENT_TYPE_TIME_UPDATE
, BUS_EVENT_TYPE_LEDGER_MOVEMENTS
, BUS_EVENT_TYPE_POSITION_RESOLUTION
, BUS_EVENT_TYPE_ORDER
, BUS_EVENT_TYPE_ACCOUNT
, BUS_EVENT_TYPE_PARTY
, BUS_EVENT_TYPE_TRADE
, BUS_EVENT_TYPE_MARGIN_LEVELS
, BUS_EVENT_TYPE_PROPOSAL
, BUS_EVENT_TYPE_VOTE
, BUS_EVENT_TYPE_MARKET_DATA
, BUS_EVENT_TYPE_NODE_SIGNATURE
, BUS_EVENT_TYPE_LOSS_SOCIALIZATION
, BUS_EVENT_TYPE_SETTLE_POSITION
, BUS_EVENT_TYPE_SETTLE_DISTRESSED
, BUS_EVENT_TYPE_MARKET_CREATED
, BUS_EVENT_TYPE_ASSET
, BUS_EVENT_TYPE_MARKET_TICK
, BUS_EVENT_TYPE_WITHDRAWAL
, BUS_EVENT_TYPE_DEPOSIT
, BUS_EVENT_TYPE_AUCTION
, BUS_EVENT_TYPE_RISK_FACTOR
, BUS_EVENT_TYPE_NETWORK_PARAMETER
, BUS_EVENT_TYPE_LIQUIDITY_PROVISION
, BUS_EVENT_TYPE_MARKET_UPDATED
, BUS_EVENT_TYPE_ORACLE_SPEC
, BUS_EVENT_TYPE_ORACLE_DATA
, BUS_EVENT_TYPE_DELEGATION_BALANCE
, BUS_EVENT_TYPE_VALIDATOR_SCORE
, BUS_EVENT_TYPE_EPOCH_UPDATE
, BUS_EVENT_TYPE_VALIDATOR_UPDATE
, BUS_EVENT_TYPE_STAKE_LINKING
, BUS_EVENT_TYPE_REWARD_PAYOUT_EVENT
, BUS_EVENT_TYPE_CHECKPOINT
, BUS_EVENT_TYPE_STREAM_START
, BUS_EVENT_TYPE_KEY_ROTATION
, BUS_EVENT_TYPE_STATE_VAR
, BUS_EVENT_TYPE_NETWORK_LIMITS
, BUS_EVENT_TYPE_TRANSFER
, BUS_EVENT_TYPE_VALIDATOR_RANKING
, BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_EVENT
, BUS_EVENT_TYPE_ERC20_MULTI_SIG_SET_THRESHOLD
, BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_ADDED
, BUS_EVENT_TYPE_ERC20_MULTI_SIG_SIGNER_REMOVED
, BUS_EVENT_TYPE_POSITION_STATE
, BUS_EVENT_TYPE_ETHEREUM_KEY_ROTATION
, BUS_EVENT_TYPE_PROTOCOL_UPGRADE_PROPOSAL
, BUS_EVENT_TYPE_BEGIN_BLOCK
, BUS_EVENT_TYPE_END_BLOCK
, BUS_EVENT_TYPE_PROTOCOL_UPGRADE_STARTED
, BUS_EVENT_TYPE_SETTLE_MARKET
, BUS_EVENT_TYPE_TRANSACTION_RESULT
, BUS_EVENT_TYPE_SNAPSHOT_TAKEN
, BUS_EVENT_TYPE_PROTOCOL_UPGRADE_DATA_NODE_READY
, BUS_EVENT_TYPE_DISTRESSED_ORDERS_CLOSED
, BUS_EVENT_TYPE_EXPIRED_ORDERS
, BUS_EVENT_TYPE_DISTRESSED_POSITIONS
, BUS_EVENT_TYPE_SPOT_LIQUIDITY_PROVISION
, BUS_EVENT_TYPE_STOP_ORDER
, BUS_EVENT_TYPE_FUNDING_PERIOD
, BUS_EVENT_TYPE_FUNDING_PERIOD_DATA_POINT
, BUS_EVENT_TYPE_TEAM_CREATED
, BUS_EVENT_TYPE_TEAM_UPDATED
, BUS_EVENT_TYPE_REFEREE_SWITCHED_TEAM
, BUS_EVENT_TYPE_REFEREE_JOINED_TEAM
, BUS_EVENT_TYPE_REFERRAL_PROGRAM_STARTED
, BUS_EVENT_TYPE_REFERRAL_PROGRAM_UPDATED
, BUS_EVENT_TYPE_REFERRAL_PROGRAM_ENDED
, BUS_EVENT_TYPE_REFERRAL_SET_CREATED
, BUS_EVENT_TYPE_REFEREE_JOINED_REFERRAL_SET
, BUS_EVENT_TYPE_PARTY_ACTIVITY_STREAK
, BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_STARTED
, BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_UPDATED
, BUS_EVENT_TYPE_VOLUME_DISCOUNT_PROGRAM_ENDED
, BUS_EVENT_TYPE_REFERRAL_SET_STATS_UPDATED
, BUS_EVENT_TYPE_VESTING_STATS_UPDATED
, BUS_EVENT_TYPE_VOLUME_DISCOUNT_STATS_UPDATED
, BUS_EVENT_TYPE_FEES_STATS_UPDATED
, BUS_EVENT_TYPE_FUNDING_PAYMENTS
, BUS_EVENT_TYPE_PAID_LIQUIDITY_FEES_STATS_UPDATED
, BUS_EVENT_TYPE_VESTING_SUMMARY
, BUS_EVENT_TYPE_TRANSFER_FEES_PAID
, BUS_EVENT_TYPE_TRANSFER_FEES_DISCOUNT_UPDATED
, BUS_EVENT_TYPE_PARTY_MARGIN_MODE_UPDATED
, BUS_EVENT_TYPE_PARTY_PROFILE_UPDATED
, BUS_EVENT_TYPE_TEAMS_STATS_UPDATED
, BUS_EVENT_TYPE_TIME_WEIGHTED_NOTIONAL_POSITION_UPDATED
, BUS_EVENT_TYPE_CANCELLED_ORDERS
, BUS_EVENT_TYPE_GAME_SCORES
, BUS_EVENT_TYPE_AMM
, BUS_EVENT_TYPE_MARKET
, BUS_EVENT_TYPE_TX_ERROR
]
One or more types of event, required field.
Market ID to filter events for, optional field. If omitted, no markets will be filtered out.
Party ID to filter events for, optional field. If omitted, no parties will be filtered out.
Batch size, optional field -
If not specified, any events received will be sent immediately. If the client is not ready
for the next data-set, data may be dropped a number of times, and eventually the stream is closed.
if specified, the first batch will be sent when ready. To receive the next set of events, the client
must write an ObserveEventBatch
message on the stream to flush the buffer.
If no message is received in 5 seconds, the stream is closed.
Default: 0, send any and all events when they are available.
Responses
- 200
- default
A successful response.(streaming responses)
- application/json
- Schema
- Example (from schema)
Schema
- Array [
- ]
- Array [
- AUCTION_TRIGGER_UNSPECIFIED: Default value for AuctionTrigger, no auction triggered
- AUCTION_TRIGGER_BATCH: Batch auction
- AUCTION_TRIGGER_OPENING: Opening auction
- AUCTION_TRIGGER_PRICE: Price monitoring trigger
- AUCTION_TRIGGER_LIQUIDITY: Deprecated
- AUCTION_TRIGGER_LIQUIDITY_TARGET_NOT_MET: Liquidity auction due to not enough committed liquidity
- AUCTION_TRIGGER_UNABLE_TO_DEPLOY_LP_ORDERS: Deprecated
- AUCTION_TRIGGER_GOVERNANCE_SUSPENSION: Market is suspended and put into auction via governance
- AUCTION_TRIGGER_LONG_BLOCK: Market is suspended in response to a long block
- AUCTION_TRIGGER_UNSPECIFIED: Default value for AuctionTrigger, no auction triggered
- AUCTION_TRIGGER_BATCH: Batch auction
- AUCTION_TRIGGER_OPENING: Opening auction
- AUCTION_TRIGGER_PRICE: Price monitoring trigger
- AUCTION_TRIGGER_LIQUIDITY: Deprecated
- AUCTION_TRIGGER_LIQUIDITY_TARGET_NOT_MET: Liquidity auction due to not enough committed liquidity
- AUCTION_TRIGGER_UNABLE_TO_DEPLOY_LP_ORDERS: Deprecated
- AUCTION_TRIGGER_GOVERNANCE_SUSPENSION: Market is suspended and put into auction via governance
- AUCTION_TRIGGER_LONG_BLOCK: Market is suspended in response to a long block
- EPOCH_ACTION_START: Epoch update is for a new epoch.
- EPOCH_ACTION_END: Epoch update is for the end of an epoch.
- Array [
- ]
- Array [
- Array [
- ]
- ]
- Array [
- ]
- Array [
- Array [
- ]
- ]
- Array [
- ]
- Array [
- ]
- Array [
- ]
- Array [
- ]
- Array [
- ]
- Array [
- ]
- Array [
- ]
- Array [
- Array [
- ]
- Array [
- ]
- ]
- Array [
- ]
- Array [
- ]
- Array [
- Array [
- Array [
- ]
- ]
- Array [
- ]
- Array [
- Array [
- ]
- ]
- Array [
- ]
- Array [
- ]
- Array [
- ]
- Array [
- ]
- ]
- Array [
- ]
- Array [
- ]
- Array [
- Array [
- ]
- ]
- Array [
- ]
- Array [
- Array [
- ]
- ]
- Array [
- ]
- Array [
- ]
- Array [
- ]
- Array [
- ]
- STATUS_UNSPECIFIED: Default value.
- STATUS_ACTIVE: STATUS_ACTIVE describes an active data source spec.
- STATUS_DEACTIVATED: STATUS_DEACTIVATED describes a data source spec that is not listening to data anymore.
- Array [
- Array [
- ]
- ]
- Array [
- ]
- Array [
- Array [
- ]
- ]
- Array [
- ]
- Array [
- ]
- Array [
- ]
- Array [
- ]
- STATUS_UNSPECIFIED: Default value.
- STATUS_ACTIVE: STATUS_ACTIVE describes an active data source spec.
- STATUS_DEACTIVATED: STATUS_DEACTIVATED describes a data source spec that is not listening to data anymore.
- Array [
- Array [
- ]
- ]
- Array [
- ]
- Array [
- Array [
- ]
- ]
- Array [
- ]
- Array [
- ]
- Array [
- ]
- Array [
- ]
- STATUS_UNSPECIFIED: Default value.
- STATUS_ACTIVE: STATUS_ACTIVE describes an active data source spec.
- STATUS_DEACTIVATED: STATUS_DEACTIVATED describes a data source spec that is not listening to data anymore.
- Array [
- Array [
- ]
- ]
- Array [
- ]
- Array [
- Array [
- ]
- ]
- Array [
- ]
- Array [
- ]
- Array [
- ]
- Array [
- ]
- STATUS_UNSPECIFIED: Default value.
- STATUS_ACTIVE: STATUS_ACTIVE describes an active data source spec.
- STATUS_DEACTIVATED: STATUS_DEACTIVATED describes a data source spec that is not listening to data anymore.
- Array [
- Array [
- Array [
- ]
- ]
- Array [
- ]
- Array [
- Array [
- ]
- ]
- Array [
- ]
- Array [
- ]
- Array [
- ]
- Array [
- ]
- ]
- Array [
- ]
- Array [
- ]
- Array [
- ]
- Array [
- ]
- Array [
- ]
- Array [
- ]
- Array [
- Array [
- Array [
- ]
- ]
- Array [
- ]
- Array [
- Array [
- ]
- ]
- Array [
- ]
- Array [
- ]
- Array [
- ]
- Array [
- ]
- ]
- Array [
- ]
- Array [
- ]
- Array [
- Array [
- ]
- ]
- Array [
- ]
- Array [
- Array [
- ]
- ]
- Array [
- ]
- Array [
- ]
- Array [
- ]
- Array [
- ]
- STATUS_UNSPECIFIED: Default value.
- STATUS_ACTIVE: STATUS_ACTIVE describes an active data source spec.
- STATUS_DEACTIVATED: STATUS_DEACTIVATED describes a data source spec that is not listening to data anymore.
- Array [
- Array [
- ]
- ]
- Array [
- ]
- Array [
- Array [
- ]
- ]
- Array [
- ]
- Array [
- ]
- Array [
- ]
- Array [
- ]
- STATUS_UNSPECIFIED: Default value.
- STATUS_ACTIVE: STATUS_ACTIVE describes an active data source spec.
- STATUS_DEACTIVATED: STATUS_DEACTIVATED describes a data source spec that is not listening to data anymore.
- Array [
- Array [
- ]
- ]
- Array [
- ]
- Array [
- Array [
- ]
- ]
- Array [
- ]
- Array [
- ]
- Array [
- ]
- Array [
- ]
- STATUS_UNSPECIFIED: Default value.
- STATUS_ACTIVE: STATUS_ACTIVE describes an active data source spec.
- STATUS_DEACTIVATED: STATUS_DEACTIVATED describes a data source spec that is not listening to data anymore.
- Array [
- Array [
- ]
- ]
- Array [
- ]
- Array [
- Array [
- ]
- ]
- Array [
- ]
- Array [
- ]
- Array [
- ]
- Array [
- ]
- STATUS_UNSPECIFIED: Default value.
- STATUS_ACTIVE: STATUS_ACTIVE describes an active data source spec.
- STATUS_DEACTIVATED: STATUS_DEACTIVATED describes a data source spec that is not listening to data anymore.
- Array [
- Array [
- Array [
- ]
- ]
- Array [
- ]
- Array [
- Array [
- ]
- ]
- Array [
- ]
- Array [
- ]
- Array [
- ]
- Array [
- ]
- ]
- Array [
- ]
- Array [
- ]
- Array [
- ]
- Array [
- ]
- Array [
- Array [
- ]
- ]
- Array [
- ]
- Array [
- Array [
- ]
- ]
- Array [
- ]
- Array [
- ]
- Array [
- ]
- Array [
- ]
- STATUS_UNSPECIFIED: Default value.
- STATUS_ACTIVE: STATUS_ACTIVE describes an active data source spec.
- STATUS_DEACTIVATED: STATUS_DEACTIVATED describes a data source spec that is not listening to data anymore.
- TIME_IN_FORCE_UNSPECIFIED: Default value for TimeInForce, can be valid for an amend
- TIME_IN_FORCE_GTC: Good until cancelled, the order trades any amount and as much as possible and remains on the book until it either trades completely or is cancelled
- TIME_IN_FORCE_GTT: Good until specified time, this order type trades any amount and as much as possible and remains on the book until it either trades completely, is cancelled, or expires at a set time NOTE: this may in future be multiple types or have sub types for orders that provide different ways of specifying expiry
- TIME_IN_FORCE_IOC: Immediate or cancel, the order trades any amount and as much as possible but does not remain on the book (whether it trades or not)
- TIME_IN_FORCE_FOK: Fill or kill, the order either trades completely i.e. remainingSize == 0 after adding, or not at all, and does not remain on the book if it doesn't trade
- TIME_IN_FORCE_GFA: Good for auction, this order is only accepted during an auction period
- TIME_IN_FORCE_GFN: Good for normal, this order is only accepted during normal trading (that can be continuous trading or frequent batched auctions)
- Array [
- ]
- Array [
- ]
- Array [
- ]
- Array [
- Array [
- Array [
- ]
- ]
- Array [
- ]
- Array [
- Array [
- ]
- ]
- Array [
- ]
- Array [
- ]
- Array [
- ]
- Array [
- ]
- Array [
- Array [
- ]
- ]
- Array [
- ]
- Array [
- Array [
- ]
- ]
- Array [
- ]
- Array [
- ]
- Array [
- ]
- Array [
- ]
- Array [
- Array [
- ]
- ]
- Array [
- ]
- Array [
- Array [
- ]
- ]
- Array [
- ]
- Array [
- ]
- Array [
- ]
- Array [
- ]
- Array [
- Array [
- ]
- ]
- Array [
- ]
- Array [
- Array [
- ]
- ]
- Array [
- ]
- Array [
- ]
- Array [
- ]
- Array [
- ]
- Array [
- Array [
- Array [
- ]
- ]
- Array [
- ]
- Array [
- Array [
- ]
- ]
- Array [
- ]
- Array [
- ]
- Array [
- ]
- Array [
- ]
- ]
- Array [
- ]
- Array [
- Array [
- Array [
- ]
- ]
- Array [
- ]
- Array [
- Array [
- ]
- ]
- Array [
- ]
- Array [
- ]
- Array [
- ]
- Array [
- ]
- ]
- Array [
- ]
- Array [
- ]
- Array [
- Array [
- ]
- ]
- Array [
- ]
- Array [
- Array [
- ]
- ]
- Array [
- ]
- Array [
- ]
- Array [
- ]
- Array [
- ]
- Array [
- Array [
- ]
- ]
- Array [
- ]
- Array [
- Array [
- ]
- ]
- Array [
- ]
- Array [
- ]
- Array [
- ]
- Array [
- ]
- Array [
- Array [
- ]
- ]
- Array [
- ]
- Array [
- Array [
- ]
- ]
- Array [
- ]
- Array [
- ]
- Array [
- ]
- Array [
- ]
- Array [
- Array [
- ]
- ]
- Array [
- ]
- Array [
- Array [
- ]
- ]
- Array [
- ]
- Array [
- ]
- Array [
- ]
- Array [
- ]
- Array [
- Array [
- Array [
- ]
- ]
- Array [
- ]
- Array [
- Array [
- ]
- ]
- Array [
- ]
- Array [
- ]
- Array [
- ]
- Array [
- ]
- ]
- Array [
- ]
- Array [
error object
details object[]
result object
events object[]
One or more events that match the subscription request criteria.
account object
Asset ID for the account.
Balance of the asset, the balance is an integer, for example 123456
is a correctly
formatted price of 1.23456
assuming market configured to 5 decimal places
and importantly balances cannot be negative.
Unique account ID, used internally by Vega.
Market ID for the account, if AccountType.ACCOUNT_TYPE_GENERAL
this will be empty.
Party that the account belongs to, special values include network
, which represents the Vega network and is
most commonly seen during liquidation of distressed trading positions.
Possible values: [ACCOUNT_TYPE_UNSPECIFIED
, ACCOUNT_TYPE_INSURANCE
, ACCOUNT_TYPE_SETTLEMENT
, ACCOUNT_TYPE_MARGIN
, ACCOUNT_TYPE_GENERAL
, ACCOUNT_TYPE_FEES_INFRASTRUCTURE
, ACCOUNT_TYPE_FEES_LIQUIDITY
, ACCOUNT_TYPE_FEES_MAKER
, ACCOUNT_TYPE_BOND
, ACCOUNT_TYPE_EXTERNAL
, ACCOUNT_TYPE_GLOBAL_INSURANCE
, ACCOUNT_TYPE_GLOBAL_REWARD
, ACCOUNT_TYPE_PENDING_TRANSFERS
, ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES
, ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES
, ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES
, ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS
, ACCOUNT_TYPE_HOLDING
, ACCOUNT_TYPE_LP_LIQUIDITY_FEES
, ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION
, ACCOUNT_TYPE_NETWORK_TREASURY
, ACCOUNT_TYPE_VESTING_REWARDS
, ACCOUNT_TYPE_VESTED_REWARDS
, ACCOUNT_TYPE_REWARD_AVERAGE_POSITION
, ACCOUNT_TYPE_REWARD_RELATIVE_RETURN
, ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY
, ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING
, ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD
, ACCOUNT_TYPE_ORDER_MARGIN
, ACCOUNT_TYPE_REWARD_REALISED_RETURN
]
Default value: ACCOUNT_TYPE_UNSPECIFIED
Account type related to this account.
amm object
Event notifying of AMM updates.
parameters object
Liquidity parameters that define the size and range of the AMM's tradeable volume.
Base price bound configuration for the AMM.
Leverage at lower bounds.
Leverage at upper bounds.
Upper price bound configuration for the AMM. If unset, the AMM will never hold a short position.
Lower price bound configuration for the AMM. If unset, the AMM will never hold a long position.
Party ID that the AMM operates as.
Amount committed to the AMM.
ID of the AMM.
lowerCurve object
Maximum tradable volume on the AMM curve.
Virtual liquidity for the given AMM curve.
Market ID that the AMM provides liquidity for.
Party ID of the owner of the AMM.
Nominated liquidity fee factor, which is an input to the calculation of taker fees on the market.
Possible values: [STATUS_UNSPECIFIED
, STATUS_ACTIVE
, STATUS_REJECTED
, STATUS_CANCELLED
, STATUS_STOPPED
, STATUS_REDUCE_ONLY
]
Default value: STATUS_UNSPECIFIED
Current status of the AMM.
Possible values: [STATUS_REASON_UNSPECIFIED
, STATUS_REASON_CANCELLED_BY_PARTY
, STATUS_REASON_CANNOT_FILL_COMMITMENT
, STATUS_REASON_PARTY_ALREADY_OWNS_AMM_FOR_MARKET
, STATUS_REASON_PARTY_CLOSED_OUT
, STATUS_REASON_MARKET_CLOSED
, STATUS_REASON_COMMITMENT_TOO_LOW
, STATUS_REASON_CANNOT_REBASE
]
Default value: STATUS_REASON_UNSPECIFIED
Reason for the AMM's current status.
upperCurve object
Maximum tradable volume on the AMM curve.
Virtual liquidity for the given AMM curve.
asset object
details object
Definition of the external source for this asset.
builtinAsset object
Vega built-in asset.
Maximum amount that can be requested by a party through the built-in asset faucet at a time.
Number of decimal / precision handled by this asset.
erc20 object
Ethereum ERC20 asset.
Chain ID the asset originated from.
Address of the contract for the token, on the ethereum network.
Lifetime limits deposit per address note: this is a temporary measure that can be changed by governance.
Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay. There’s no limit on the size of a withdrawal note: this is a temporary measure that can be changed by governance.
Name of the asset (e.g: Great British Pound).
Minimum economically meaningful amount in the asset.
Symbol of the asset (e.g: GBP).
Internal identifier of the asset.
Possible values: [STATUS_UNSPECIFIED
, STATUS_PROPOSED
, STATUS_REJECTED
, STATUS_PENDING_LISTING
, STATUS_ENABLED
]
Default value: STATUS_UNSPECIFIED
Status of the asset.
auction object
Possible values: [AUCTION_TRIGGER_UNSPECIFIED
, AUCTION_TRIGGER_BATCH
, AUCTION_TRIGGER_OPENING
, AUCTION_TRIGGER_PRICE
, AUCTION_TRIGGER_LIQUIDITY
, AUCTION_TRIGGER_LIQUIDITY_TARGET_NOT_MET
, AUCTION_TRIGGER_UNABLE_TO_DEPLOY_LP_ORDERS
, AUCTION_TRIGGER_GOVERNANCE_SUSPENSION
, AUCTION_TRIGGER_LONG_BLOCK
]
Default value: AUCTION_TRIGGER_UNSPECIFIED
Possible values: [AUCTION_TRIGGER_UNSPECIFIED
, AUCTION_TRIGGER_BATCH
, AUCTION_TRIGGER_OPENING
, AUCTION_TRIGGER_PRICE
, AUCTION_TRIGGER_LIQUIDITY
, AUCTION_TRIGGER_LIQUIDITY_TARGET_NOT_MET
, AUCTION_TRIGGER_UNABLE_TO_DEPLOY_LP_ORDERS
, AUCTION_TRIGGER_GOVERNANCE_SUSPENSION
, AUCTION_TRIGGER_LONG_BLOCK
]
Default value: AUCTION_TRIGGER_UNSPECIFIED
beginBlock object
cancelledOrders object
Event notifying of multiple orders being cancelled for a given party, on a given market.
Market ID for the event.
The order IDs that were cancelled.
The ID of the party which cancelled the orders.
checkpoint object
coreSnapshotEvent object
CoreSnapshotData represents the core snapshot data.
Semver version number of the core.
delegationBalance object
deposit object
Amount to be deposited. This field is an unsigned integer scaled to the asset's decimal places.
Vega asset targeted by this deposit.
Timestamp for when the deposit was created on the Vega network.
Timestamp for when the Vega account was updated with the deposit.
Unique ID for the deposit.
Party ID of the user initiating the deposit.
Possible values: [STATUS_UNSPECIFIED
, STATUS_OPEN
, STATUS_CANCELLED
, STATUS_FINALIZED
, STATUS_DUPLICATE_REJECTED
]
Default value: STATUS_UNSPECIFIED
Status of the deposit.
Hash of the transaction from the foreign chain.
distressedOrders object
distressedPositions object
Distressed positions event contains the party IDs for all parties that were distressed, had their orders closed but because of insufficient volume on the book could not be fully closed out. These parties are distressed, but still hold an active position on the book as a result. Once enough volume is on the book to close them out, a SettleDistressed event will be sent. In case they manage to reduce their position, or meet the margin requirements, this status will be updated. Parties that are no longer distressed but active will be listed in the safe_parties field.
endBlock object
epochEvent object
Possible values: [EPOCH_ACTION_UNSPECIFIED
, EPOCH_ACTION_START
, EPOCH_ACTION_END
]
Default value: EPOCH_ACTION_UNSPECIFIED
erc20MultisigSetThresholdEvent object
erc20MultisigSignerAdded object
EVM chain ID that the multisig control contract lives on.
Nonce used.
erc20MultisigSignerEvent object
Possible values: [TYPE_UNSPECIFIED
, TYPE_ADDED
, TYPE_REMOVED
]
Default value: TYPE_UNSPECIFIED
erc20MultisigSignerRemoved object
EVM chain ID that the multisig control contract lives on.
Nonce used.
signatureSubmitters object[]
Signature ID of the signer removed.
ethereumKeyRotation object
expiredOrders object
feesStats object
Event notifying of an update the fees stats for a market.
Settlement asset of the market.
Epoch for which these stats where valid.
makerFeesGenerated object[]
Maker fees paid by all trade aggressors, and which makers the fees were paid to.
makerFeesPaid object[]
Amount of maker fees paid by the taker to the maker.
Amount received.
Receiving party ID.
Amount value in quantum.
Party that paid the fees.
refereesDiscountApplied object[]
Total referral discounts applied to all referee taker fees.
Amount received.
Receiving party ID.
Amount value in quantum.
referrerRewardsGenerated object[]
Referral rewards generated by all referee taker fees.
generatedReward object[]
Amount of rewards generated per party.
Amount received.
Receiving party ID.
Amount value in quantum.
Referrer party.
totalFeesPaidAndReceived object[]
Total trading fees received and paid by the party.
Amount received.
Receiving party ID.
Amount value in quantum.
totalMakerFeesReceived object[]
Total maker fees received by the maker side.
Amount received.
Receiving party ID.
Amount value in quantum.
totalRewardsReceived object[]
Total referral rewards received by the referrer of the referral set.
Amount received.
Receiving party ID.
Amount value in quantum.
volumeDiscountApplied object[]
Total volume discounts applied to all referee taker fees.
Amount received.
Receiving party ID.
Amount value in quantum.
fundingPayments object
Event notifying of funding payments at the end of a funding period.
ID of the market.
payments object[]
List of parties and the payment amounts, this can be negative for parties who lost at the end of the funding period.
The amount paid, this can be negative for parties who lost at the end of the funding period.
ID of the party.
Sequence number of the funding period associated with these payments.
fundingPeriod object
Start or end of a funding period.
Time in Unix nanoseconds when the funding period ended.
TWAP for this period based on the external data-points.
Funding payment for this period as the difference between the time-weighted average price of the external and internal data point.
Percentage difference between the time-weighted average price of the external and internal data point.
TWAP for this period based on the internal data-points.
ID of the market for which this funding period relates to.
Sequence number of the funding period.
Time in Unix nanoseconds when the funding period started.
fundingPeriodDataPoint object
Data point within a funding period.
Possible values: [SOURCE_UNSPECIFIED
, SOURCE_EXTERNAL
, SOURCE_INTERNAL
]
Default value: SOURCE_UNSPECIFIED
Origin of the data point.
Market ID which the data point relates to.
Price of the asset as seen by this data point.
Sequence number of the funding period this data point belongs to.
Timestamp in Unix nanoseconds of when the data point was received.
The TWAP for this source with this data-point added.
gameScores object
Event notifying on near realtime game scores for parties and teams.
partyScores object[]
Epoch when these scores were generated.
Game ID.
If the party is eligible for a reward for this game based on the current information.
Party's current open volume. Only populated if the game has a requirement for it.
The party ID.
If the party is a member of a team, this is their relative position in the sorting order of the team. Empty if not a team, or if the party is not eligible.
Party's current score in the game.
Party's current staking balance. Only populated if the game has a requirement for it.
Team the party belongs to. Unset if the party is not part of a team.
Timestamp in Unix nanoseconds when these scores were generated.
Total fees paid by the party during the relevant period.
teamScores object[]
Epoch when these scores were generated.
Game ID.
Team's current collective score in the game.
Timestamp in Unix nanoseconds when these scores were generated.
keyRotation object
ledgerMovements object
ledgerMovements object[]
balances object[]
Resulting balances once the ledger movement are applied.
account object
Account relating to the transfer.
Asset ID of the asset for this account.
Not specified if account is not related to a market.
Not specified if network account.
Possible values: [ACCOUNT_TYPE_UNSPECIFIED
, ACCOUNT_TYPE_INSURANCE
, ACCOUNT_TYPE_SETTLEMENT
, ACCOUNT_TYPE_MARGIN
, ACCOUNT_TYPE_GENERAL
, ACCOUNT_TYPE_FEES_INFRASTRUCTURE
, ACCOUNT_TYPE_FEES_LIQUIDITY
, ACCOUNT_TYPE_FEES_MAKER
, ACCOUNT_TYPE_BOND
, ACCOUNT_TYPE_EXTERNAL
, ACCOUNT_TYPE_GLOBAL_INSURANCE
, ACCOUNT_TYPE_GLOBAL_REWARD
, ACCOUNT_TYPE_PENDING_TRANSFERS
, ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES
, ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES
, ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES
, ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS
, ACCOUNT_TYPE_HOLDING
, ACCOUNT_TYPE_LP_LIQUIDITY_FEES
, ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION
, ACCOUNT_TYPE_NETWORK_TREASURY
, ACCOUNT_TYPE_VESTING_REWARDS
, ACCOUNT_TYPE_VESTED_REWARDS
, ACCOUNT_TYPE_REWARD_AVERAGE_POSITION
, ACCOUNT_TYPE_REWARD_RELATIVE_RETURN
, ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY
, ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING
, ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD
, ACCOUNT_TYPE_ORDER_MARGIN
, ACCOUNT_TYPE_REWARD_REALISED_RETURN
]
Default value: ACCOUNT_TYPE_UNSPECIFIED
Type of the account.
Balance relating to the transfer. This field is an unsigned integer scaled to the asset's decimal places.
entries object[]
All the entries for these ledger movements.
Amount to transfer. This field is an unsigned integer scaled to the asset's decimal places.
fromAccount object
One or more accounts to transfer from.
Asset ID of the asset for this account.
Not specified if account is not related to a market.
Not specified if network account.
Possible values: [ACCOUNT_TYPE_UNSPECIFIED
, ACCOUNT_TYPE_INSURANCE
, ACCOUNT_TYPE_SETTLEMENT
, ACCOUNT_TYPE_MARGIN
, ACCOUNT_TYPE_GENERAL
, ACCOUNT_TYPE_FEES_INFRASTRUCTURE
, ACCOUNT_TYPE_FEES_LIQUIDITY
, ACCOUNT_TYPE_FEES_MAKER
, ACCOUNT_TYPE_BOND
, ACCOUNT_TYPE_EXTERNAL
, ACCOUNT_TYPE_GLOBAL_INSURANCE
, ACCOUNT_TYPE_GLOBAL_REWARD
, ACCOUNT_TYPE_PENDING_TRANSFERS
, ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES
, ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES
, ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES
, ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS
, ACCOUNT_TYPE_HOLDING
, ACCOUNT_TYPE_LP_LIQUIDITY_FEES
, ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION
, ACCOUNT_TYPE_NETWORK_TREASURY
, ACCOUNT_TYPE_VESTING_REWARDS
, ACCOUNT_TYPE_VESTED_REWARDS
, ACCOUNT_TYPE_REWARD_AVERAGE_POSITION
, ACCOUNT_TYPE_REWARD_RELATIVE_RETURN
, ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY
, ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING
, ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD
, ACCOUNT_TYPE_ORDER_MARGIN
, ACCOUNT_TYPE_REWARD_REALISED_RETURN
]
Default value: ACCOUNT_TYPE_UNSPECIFIED
Type of the account.
Sender account balance after the transfer. This field is an unsigned integer scaled to the asset's decimal places.
Timestamp in nanoseconds of when the ledger entry was created.
toAccount object
One or more accounts to transfer to.
Asset ID of the asset for this account.
Not specified if account is not related to a market.
Not specified if network account.
Possible values: [ACCOUNT_TYPE_UNSPECIFIED
, ACCOUNT_TYPE_INSURANCE
, ACCOUNT_TYPE_SETTLEMENT
, ACCOUNT_TYPE_MARGIN
, ACCOUNT_TYPE_GENERAL
, ACCOUNT_TYPE_FEES_INFRASTRUCTURE
, ACCOUNT_TYPE_FEES_LIQUIDITY
, ACCOUNT_TYPE_FEES_MAKER
, ACCOUNT_TYPE_BOND
, ACCOUNT_TYPE_EXTERNAL
, ACCOUNT_TYPE_GLOBAL_INSURANCE
, ACCOUNT_TYPE_GLOBAL_REWARD
, ACCOUNT_TYPE_PENDING_TRANSFERS
, ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES
, ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES
, ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES
, ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS
, ACCOUNT_TYPE_HOLDING
, ACCOUNT_TYPE_LP_LIQUIDITY_FEES
, ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION
, ACCOUNT_TYPE_NETWORK_TREASURY
, ACCOUNT_TYPE_VESTING_REWARDS
, ACCOUNT_TYPE_VESTED_REWARDS
, ACCOUNT_TYPE_REWARD_AVERAGE_POSITION
, ACCOUNT_TYPE_REWARD_RELATIVE_RETURN
, ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY
, ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING
, ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD
, ACCOUNT_TYPE_ORDER_MARGIN
, ACCOUNT_TYPE_REWARD_REALISED_RETURN
]
Default value: ACCOUNT_TYPE_UNSPECIFIED
Type of the account.
Receiver account balance after the transfer. This field is an unsigned integer scaled to the asset's decimal places.
Transfer ID the ledger entry relates to.
Possible values: [TRANSFER_TYPE_UNSPECIFIED
, TRANSFER_TYPE_LOSS
, TRANSFER_TYPE_WIN
, TRANSFER_TYPE_MTM_LOSS
, TRANSFER_TYPE_MTM_WIN
, TRANSFER_TYPE_MARGIN_LOW
, TRANSFER_TYPE_MARGIN_HIGH
, TRANSFER_TYPE_MARGIN_CONFISCATED
, TRANSFER_TYPE_MAKER_FEE_PAY
, TRANSFER_TYPE_MAKER_FEE_RECEIVE
, TRANSFER_TYPE_INFRASTRUCTURE_FEE_PAY
, TRANSFER_TYPE_INFRASTRUCTURE_FEE_DISTRIBUTE
, TRANSFER_TYPE_LIQUIDITY_FEE_PAY
, TRANSFER_TYPE_LIQUIDITY_FEE_DISTRIBUTE
, TRANSFER_TYPE_BOND_LOW
, TRANSFER_TYPE_BOND_HIGH
, TRANSFER_TYPE_WITHDRAW
, TRANSFER_TYPE_DEPOSIT
, TRANSFER_TYPE_BOND_SLASHING
, TRANSFER_TYPE_REWARD_PAYOUT
, TRANSFER_TYPE_TRANSFER_FUNDS_SEND
, TRANSFER_TYPE_TRANSFER_FUNDS_DISTRIBUTE
, TRANSFER_TYPE_CLEAR_ACCOUNT
, TRANSFER_TYPE_CHECKPOINT_BALANCE_RESTORE
, TRANSFER_TYPE_SPOT
, TRANSFER_TYPE_HOLDING_LOCK
, TRANSFER_TYPE_HOLDING_RELEASE
, TRANSFER_TYPE_SUCCESSOR_INSURANCE_FRACTION
, TRANSFER_TYPE_LIQUIDITY_FEE_ALLOCATE
, TRANSFER_TYPE_LIQUIDITY_FEE_NET_DISTRIBUTE
, TRANSFER_TYPE_SLA_PENALTY_BOND_APPLY
, TRANSFER_TYPE_SLA_PENALTY_LP_FEE_APPLY
, TRANSFER_TYPE_LIQUIDITY_FEE_UNPAID_COLLECT
, TRANSFER_TYPE_SLA_PERFORMANCE_BONUS_DISTRIBUTE
, TRANSFER_TYPE_PERPETUALS_FUNDING_LOSS
, TRANSFER_TYPE_PERPETUALS_FUNDING_WIN
, TRANSFER_TYPE_REWARDS_VESTED
, TRANSFER_TYPE_FEE_REFERRER_REWARD_PAY
, TRANSFER_TYPE_FEE_REFERRER_REWARD_DISTRIBUTE
, TRANSFER_TYPE_ORDER_MARGIN_LOW
, TRANSFER_TYPE_ORDER_MARGIN_HIGH
, TRANSFER_TYPE_ISOLATED_MARGIN_LOW
, TRANSFER_TYPE_ISOLATED_MARGIN_HIGH
, TRANSFER_TYPE_AMM_LOW
, TRANSFER_TYPE_AMM_HIGH
, TRANSFER_TYPE_AMM_RELEASE
]
Default value: TRANSFER_TYPE_UNSPECIFIED
Transfer type for this entry.
liquidityProvision object
buys object[]
Set of liquidity buy orders to meet the liquidity provision obligation.
liquidityOrder object
Liquidity order from the original submission.
Offset/amount of units away for the order. This field is an unsigned integer scaled using the market's decimal places.
Relative proportion of the commitment to be allocated at a price level.
Possible values: [PEGGED_REFERENCE_UNSPECIFIED
, PEGGED_REFERENCE_MID
, PEGGED_REFERENCE_BEST_BID
, PEGGED_REFERENCE_BEST_ASK
]
Default value: PEGGED_REFERENCE_UNSPECIFIED
Pegged reference point for the order.
Unique ID of the pegged order generated to fulfil this liquidity order.
Specified as a unitless number that represents the amount of settlement asset of the market. This field is an unsigned integer scaled to the asset's decimal places.
Timestamp in Unix nanoseconds for when the liquidity provision was created.
Nominated liquidity fee factor, which is an input to the calculation of taker fees on the market, as per setting fees and rewarding liquidity providers.
Unique ID for the liquidity provision.
Market ID for the liquidity provision.
Unique party ID for the creator of the provision.
Reference shared between this liquidity provision and all its orders.
sells object[]
Set of liquidity sell orders to meet the liquidity provision obligation.
liquidityOrder object
Liquidity order from the original submission.
Offset/amount of units away for the order. This field is an unsigned integer scaled using the market's decimal places.
Relative proportion of the commitment to be allocated at a price level.
Possible values: [PEGGED_REFERENCE_UNSPECIFIED
, PEGGED_REFERENCE_MID
, PEGGED_REFERENCE_BEST_BID
, PEGGED_REFERENCE_BEST_ASK
]
Default value: PEGGED_REFERENCE_UNSPECIFIED
Pegged reference point for the order.
Unique ID of the pegged order generated to fulfil this liquidity order.
Possible values: [STATUS_UNSPECIFIED
, STATUS_ACTIVE
, STATUS_STOPPED
, STATUS_CANCELLED
, STATUS_REJECTED
, STATUS_UNDEPLOYED
, STATUS_PENDING
]
Default value: STATUS_UNSPECIFIED
Status of this liquidity provision.
Timestamp in Unix nanoseconds for when the liquidity provision was updated.
Version of this liquidity provision.
lossSocialization object
marginLevels object
Asset ID for which the margin levels apply.
Collateral release level value. This field is an unsigned integer scaled to the asset's decimal places.
Initial margin value. This field is an unsigned integer scaled to the asset's decimal places.
Maintenance margin value. This field is an unsigned integer scaled to the asset's decimal places.
Margin factor, relevant only for isolated margin, 0 otherwise.
Possible values: [MARGIN_MODE_UNSPECIFIED
, MARGIN_MODE_CROSS_MARGIN
, MARGIN_MODE_ISOLATED_MARGIN
]
Default value: MARGIN_MODE_UNSPECIFIED
Margin mode for the party, cross margin or isolated margin.
Market ID for which the margin levels apply.
Margin required to cover orders in isolated margin mode.
Party ID for whom the margin levels apply.
Margin search level value. This field is an unsigned integer scaled to the asset's decimal places.
Timestamp in Unix nanoseconds for when the ledger entry was created.
market object
marketCreated object
Number of decimal places that a price must be shifted by in order to get a
correct price denominated in the currency of the market, for example:
realPrice = price / 10^decimalPlaces
. On spot markets, also called 'size decimal places'.
fees object
Fees configuration that apply to the market.
factors object
Fee factors.
Infrastructure fee charged network wide for staking and governance.
Liquidity fee applied per market for market making.
Market maker fee charged network wide.
liquidityFeeSettings object
Liquidity fee settings for the market describing how the fee was calculated.
Constant liquidity fee used when using the constant fee method.
Possible values: [METHOD_UNSPECIFIED
, METHOD_MARGINAL_COST
, METHOD_WEIGHTED_AVERAGE
, METHOD_CONSTANT
]
Default value: METHOD_UNSPECIFIED
Method used to calculate the market's liquidity fee.
Unique ID for the market.
The fraction of the parent market's insurance pool that this market inherits; range 0 through 1.
Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.
liquidationStrategy object
Liquidation strategy used by this market.
Fraction of the open position the market will try to close in a single attempt; range 0 through 1.
Decimal > 0 specifying the range range above and below the mid price within which the network will trade to dispose of its position. The value can be > 1. For example, if set to 1.5, the minimum price will be 0, ie max(0, mid_price * (1 - 1.5)), and the maximum price will be mid_price * (1 + 1.5).
Interval, in seconds, at which the network will attempt to close its position.
Size of the position that the network will try to close in a single attempt.
Max fraction of the total volume of the orderbook, within liquidity bounds, that the network can use to close its position; range 0 through 1.
liquidityMonitoringParameters object
LiquidityMonitoringParameters for the market.
Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.
targetStakeParameters object
Specifies parameters related to target stake calculation.
Specifies scaling factors used in target stake calculation.
Specifies length of time window expressed in seconds for target stake calculation.
Specifies the triggering ratio for entering liquidity auction.
liquiditySlaParams object
Liquidity SLA parameters for the market.
Specifies the minimum fraction of time LPs must spend "on the book" providing their committed liquidity.
Specifies the number of liquidity epochs over which past performance will continue to affect rewards.
Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers that achieved a higher SLA performance than them.
Percentage move up and down from the mid price which specifies the range of price levels over which automated liquidity provisions will be deployed.
markPriceConfiguration object
Mark price calculation configuration.
Cash amount, in asset decimals, used for the calculation of the mark price from the order book.
Possible values: [COMPOSITE_PRICE_TYPE_UNSPECIFIED
, COMPOSITE_PRICE_TYPE_WEIGHTED
, COMPOSITE_PRICE_TYPE_MEDIAN
, COMPOSITE_PRICE_TYPE_LAST_TRADE
]
Default value: COMPOSITE_PRICE_TYPE_UNSPECIFIED
Which method is used for the calculation of the composite price for the market.
dataSourcesSpec object[]
Additional price sources to be used for internal composite price calculation.
external object
DataSourceDefinitionExternal is the top level object used for all external
data sources. It contains one of any of the defined SourceType
variants.
ethOracle object
Contains the data specification that is received from Ethereum sources.
The ABI of that contract.
Ethereum address of the contract to call.
List of arguments to pass to method call. Protobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum type according to the ABI.
filters object[]
conditions object[]
Conditions that should be matched by the data to be considered of interest.
Possible values: [OPERATOR_UNSPECIFIED
, OPERATOR_EQUALS
, OPERATOR_GREATER_THAN
, OPERATOR_GREATER_THAN_OR_EQUAL
, OPERATOR_LESS_THAN
, OPERATOR_LESS_THAN_OR_EQUAL
]
Default value: OPERATOR_UNSPECIFIED
Type of comparison to make on the value.
Value to be compared with by the operator.
key object
Data source's data property key targeted by the filter.
Name of the property.
Possible values: [TYPE_UNSPECIFIED
, TYPE_EMPTY
, TYPE_INTEGER
, TYPE_STRING
, TYPE_BOOLEAN
, TYPE_DECIMAL
, TYPE_TIMESTAMP
]
Default value: TYPE_UNSPECIFIED
Data type of the property.
Name of the method on the contract to call.
normalisers object[]
Normalisers are used to convert the data returned from the contract method into a standard format. The key of the map is the name of the property, which identifies the specific piece of data to other parts of the data sourcing framework, for example filters. The value is a JSONPath expression for expressing where in the contract call result the required data is located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists.
The ID of the EVM based chain which is to be used to source the oracle data.
trigger object
Conditions for determining when to call the contract method.
timeTrigger object
Trigger for an Ethereum call based on the Ethereum block timestamp. Can be one-off or repeating.
Repeat the call every n seconds after the initial call. If no time for initial call was specified, begin repeating immediately.
Trigger when the Ethereum time is greater or equal to this time, in Unix seconds.
If repeating, stop once Ethereum time is greater than this time, in Unix seconds. If not set, then repeat indefinitely.
oracle object
All types of external data sources use the same configuration set for meeting requirements in order for the data to be useful for Vega - valid signatures and matching filters.
filters object[]
Filters describes which source data are considered of interest or not for the product (or the risk model).
conditions object[]
Conditions that should be matched by the data to be considered of interest.
Possible values: [OPERATOR_UNSPECIFIED
, OPERATOR_EQUALS
, OPERATOR_GREATER_THAN
, OPERATOR_GREATER_THAN_OR_EQUAL
, OPERATOR_LESS_THAN
, OPERATOR_LESS_THAN_OR_EQUAL
]
Default value: OPERATOR_UNSPECIFIED
Type of comparison to make on the value.
Value to be compared with by the operator.
key object
Data source's data property key targeted by the filter.
Name of the property.
Possible values: [TYPE_UNSPECIFIED
, TYPE_EMPTY
, TYPE_INTEGER
, TYPE_STRING
, TYPE_BOOLEAN
, TYPE_DECIMAL
, TYPE_TIMESTAMP
]
Default value: TYPE_UNSPECIFIED
Data type of the property.
signers object[]
Signers is the list of authorized signatures that signed the data for this source. All the signatures in the data source data should be contained in this external source. All the signatures in the data should be contained in this list.
ethAddress object
In case of an open oracle - Ethereum address will be submitted.
pubKey object
List of authorized public keys that signed the data for this source. All the public keys in the data should be contained in these public keys.
internal object
Top level object used for all internal data sources. It contains one of any of the defined source type variants.
time object
Internal data source used for emitting timestamps.
conditions object[]
Conditions that the timestamps should meet in order to be considered.
Possible values: [OPERATOR_UNSPECIFIED
, OPERATOR_EQUALS
, OPERATOR_GREATER_THAN
, OPERATOR_GREATER_THAN_OR_EQUAL
, OPERATOR_LESS_THAN
, OPERATOR_LESS_THAN_OR_EQUAL
]
Default value: OPERATOR_UNSPECIFIED
Type of comparison to make on the value.
Value to be compared with by the operator.
timeTrigger object
Internal data source used for emitting timestamps automatically using predefined intervals and conditions.
conditions object[]
Conditions that the timestamps need to meet in order to be considered.
Possible values: [OPERATOR_UNSPECIFIED
, OPERATOR_EQUALS
, OPERATOR_GREATER_THAN
, OPERATOR_GREATER_THAN_OR_EQUAL
, OPERATOR_LESS_THAN
, OPERATOR_LESS_THAN_OR_EQUAL
]
Default value: OPERATOR_UNSPECIFIED
Type of comparison to make on the value.
Value to be compared with by the operator.
triggers object[]
Repeat the trigger every n seconds after the initial. If no time for initial was specified, begin repeating immediately.
Trigger when the vega time is greater or equal to this time, in Unix seconds.
dataSourcesSpecBinding object[]
The property name of price.
Decay power used for the calculation of mark price.
Decay weight used for calculation of mark price.
For how long a price source is considered valid. One entry for each data source such that the first is for the trade based mark price, the second is for the book based price the third is for the first oracle, followed by more oracle data source staleness tolerance.
Weights for each composite price data source.
marketTimestamps object
Timestamps for when the market state changes.
Time when the market closed.
Time when the market has left the opening auction and is ready to accept trades.
Time when the market has been voted in and began its opening auction.
Time when the market is first proposed.
openingAuction object
Auction duration specifies how long the opening auction will run (minimum duration and optionally a minimum traded volume).
Duration of the auction in seconds.
Target uncrossing trading volume.
The number of decimal places for a position. On spot markets, used for order size, also known as 'size decimal places'.
priceMonitoringSettings object
PriceMonitoringSettings for the market.
parameters object
Specifies price monitoring parameters to be used for price monitoring purposes.
triggers object[]
Price monitoring auction extension duration in seconds should the price breach its theoretical level over the specified horizon at the specified probability level.
Price monitoring projection horizon τ in seconds.
Price monitoring probability level p.
Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.
Possible values: [STATE_UNSPECIFIED
, STATE_PROPOSED
, STATE_REJECTED
, STATE_PENDING
, STATE_CANCELLED
, STATE_ACTIVE
, STATE_SUSPENDED
, STATE_CLOSED
, STATE_TRADING_TERMINATED
, STATE_SETTLED
, STATE_SUSPENDED_VIA_GOVERNANCE
]
Default value: STATE_UNSPECIFIED
Current state of the market.
ID of the market that succeeds this market if it exists. This will be populated by the system when the successor market is enabled.
tradableInstrument object
Tradable instrument configuration.
instrument object
Details for the underlying instrument.
Code for the instrument.
future object
Future.
cap object
If set, this product represents a capped future market.
If set to true, the settlement price must either be zero, or equal to the max price.
If set to true, positions must be fully collateralised so there is no default risk for any party.
Set the maximum price for orders, and settlement data in market decimals.
dataSourceSpecBinding object
Binding between the data spec and the data source.
Name of the property in the source data that should be used as settlement data. If it is set to "prices.BTC.value", then the Future will use the value of this property as settlement data.
Name of the property in the data source data that signals termination of trading.
dataSourceSpecForSettlementData object
Data source specification that describes the settlement data source filter.
data object
Represents the top level object that handles data sources. Data source definition can be external or internal, with whatever number of data sources are defined for each type in the child objects below.
external object
DataSourceDefinitionExternal is the top level object used for all external
data sources. It contains one of any of the defined SourceType
variants.
ethOracle object
Contains the data specification that is received from Ethereum sources.
The ABI of that contract.
Ethereum address of the contract to call.
List of arguments to pass to method call. Protobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum type according to the ABI.
filters object[]
conditions object[]
Conditions that should be matched by the data to be considered of interest.
Possible values: [OPERATOR_UNSPECIFIED
, OPERATOR_EQUALS
, OPERATOR_GREATER_THAN
, OPERATOR_GREATER_THAN_OR_EQUAL
, OPERATOR_LESS_THAN
, OPERATOR_LESS_THAN_OR_EQUAL
]
Default value: OPERATOR_UNSPECIFIED
Type of comparison to make on the value.
Value to be compared with by the operator.
key object
Data source's data property key targeted by the filter.
Name of the property.
Possible values: [TYPE_UNSPECIFIED
, TYPE_EMPTY
, TYPE_INTEGER
, TYPE_STRING
, TYPE_BOOLEAN
, TYPE_DECIMAL
, TYPE_TIMESTAMP
]
Default value: TYPE_UNSPECIFIED
Data type of the property.
Name of the method on the contract to call.
normalisers object[]
Normalisers are used to convert the data returned from the contract method into a standard format. The key of the map is the name of the property, which identifies the specific piece of data to other parts of the data sourcing framework, for example filters. The value is a JSONPath expression for expressing where in the contract call result the required data is located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists.
The ID of the EVM based chain which is to be used to source the oracle data.
trigger object
Conditions for determining when to call the contract method.
timeTrigger object
Trigger for an Ethereum call based on the Ethereum block timestamp. Can be one-off or repeating.
Repeat the call every n seconds after the initial call. If no time for initial call was specified, begin repeating immediately.
Trigger when the Ethereum time is greater or equal to this time, in Unix seconds.
If repeating, stop once Ethereum time is greater than this time, in Unix seconds. If not set, then repeat indefinitely.
oracle object
All types of external data sources use the same configuration set for meeting requirements in order for the data to be useful for Vega - valid signatures and matching filters.
filters object[]
Filters describes which source data are considered of interest or not for the product (or the risk model).
conditions object[]
Conditions that should be matched by the data to be considered of interest.
Possible values: [OPERATOR_UNSPECIFIED
, OPERATOR_EQUALS
, OPERATOR_GREATER_THAN
, OPERATOR_GREATER_THAN_OR_EQUAL
, OPERATOR_LESS_THAN
, OPERATOR_LESS_THAN_OR_EQUAL
]
Default value: OPERATOR_UNSPECIFIED
Type of comparison to make on the value.
Value to be compared with by the operator.
key object
Data source's data property key targeted by the filter.
Name of the property.
Possible values: [TYPE_UNSPECIFIED
, TYPE_EMPTY
, TYPE_INTEGER
, TYPE_STRING
, TYPE_BOOLEAN
, TYPE_DECIMAL
, TYPE_TIMESTAMP
]
Default value: TYPE_UNSPECIFIED
Data type of the property.
signers object[]
Signers is the list of authorized signatures that signed the data for this source. All the signatures in the data source data should be contained in this external source. All the signatures in the data should be contained in this list.
ethAddress object
In case of an open oracle - Ethereum address will be submitted.
pubKey object
List of authorized public keys that signed the data for this source. All the public keys in the data should be contained in these public keys.
internal object
Top level object used for all internal data sources. It contains one of any of the defined source type variants.
time object
Internal data source used for emitting timestamps.
conditions object[]
Conditions that the timestamps should meet in order to be considered.
Possible values: [OPERATOR_UNSPECIFIED
, OPERATOR_EQUALS
, OPERATOR_GREATER_THAN
, OPERATOR_GREATER_THAN_OR_EQUAL
, OPERATOR_LESS_THAN
, OPERATOR_LESS_THAN_OR_EQUAL
]
Default value: OPERATOR_UNSPECIFIED
Type of comparison to make on the value.
Value to be compared with by the operator.
timeTrigger object
Internal data source used for emitting timestamps automatically using predefined intervals and conditions.
conditions object[]
Conditions that the timestamps need to meet in order to be considered.
Possible values: [OPERATOR_UNSPECIFIED
, OPERATOR_EQUALS
, OPERATOR_GREATER_THAN
, OPERATOR_GREATER_THAN_OR_EQUAL
, OPERATOR_LESS_THAN
, OPERATOR_LESS_THAN_OR_EQUAL
]
Default value: OPERATOR_UNSPECIFIED
Type of comparison to make on the value.
Value to be compared with by the operator.
triggers object[]
Repeat the trigger every n seconds after the initial. If no time for initial was specified, begin repeating immediately.
Trigger when the vega time is greater or equal to this time, in Unix seconds.
Hash generated from the DataSpec data.
Possible values: [STATUS_UNSPECIFIED
, STATUS_ACTIVE
, STATUS_DEACTIVATED
]
Default value: STATUS_UNSPECIFIED
dataSourceSpecForTradingTermination object
Data source specification that describes the trading termination data source filter.
data object
Represents the top level object that handles data sources. Data source definition can be external or internal, with whatever number of data sources are defined for each type in the child objects below.
external object
DataSourceDefinitionExternal is the top level object used for all external
data sources. It contains one of any of the defined SourceType
variants.
ethOracle object
Contains the data specification that is received from Ethereum sources.
The ABI of that contract.
Ethereum address of the contract to call.
List of arguments to pass to method call. Protobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum type according to the ABI.
filters object[]
conditions object[]
Conditions that should be matched by the data to be considered of interest.
Possible values: [OPERATOR_UNSPECIFIED
, OPERATOR_EQUALS
, OPERATOR_GREATER_THAN
, OPERATOR_GREATER_THAN_OR_EQUAL
, OPERATOR_LESS_THAN
, OPERATOR_LESS_THAN_OR_EQUAL
]
Default value: OPERATOR_UNSPECIFIED
Type of comparison to make on the value.
Value to be compared with by the operator.
key object
Data source's data property key targeted by the filter.
Name of the property.
Possible values: [TYPE_UNSPECIFIED
, TYPE_EMPTY
, TYPE_INTEGER
, TYPE_STRING
, TYPE_BOOLEAN
, TYPE_DECIMAL
, TYPE_TIMESTAMP
]
Default value: TYPE_UNSPECIFIED
Data type of the property.
Name of the method on the contract to call.
normalisers object[]
Normalisers are used to convert the data returned from the contract method into a standard format. The key of the map is the name of the property, which identifies the specific piece of data to other parts of the data sourcing framework, for example filters. The value is a JSONPath expression for expressing where in the contract call result the required data is located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists.
The ID of the EVM based chain which is to be used to source the oracle data.
trigger object
Conditions for determining when to call the contract method.
timeTrigger object
Trigger for an Ethereum call based on the Ethereum block timestamp. Can be one-off or repeating.
Repeat the call every n seconds after the initial call. If no time for initial call was specified, begin repeating immediately.
Trigger when the Ethereum time is greater or equal to this time, in Unix seconds.
If repeating, stop once Ethereum time is greater than this time, in Unix seconds. If not set, then repeat indefinitely.
oracle object
All types of external data sources use the same configuration set for meeting requirements in order for the data to be useful for Vega - valid signatures and matching filters.
filters object[]
Filters describes which source data are considered of interest or not for the product (or the risk model).
conditions object[]
Conditions that should be matched by the data to be considered of interest.
Possible values: [OPERATOR_UNSPECIFIED
, OPERATOR_EQUALS
, OPERATOR_GREATER_THAN
, OPERATOR_GREATER_THAN_OR_EQUAL
, OPERATOR_LESS_THAN
, OPERATOR_LESS_THAN_OR_EQUAL
]
Default value: OPERATOR_UNSPECIFIED
Type of comparison to make on the value.
Value to be compared with by the operator.
key object
Data source's data property key targeted by the filter.
Name of the property.
Possible values: [TYPE_UNSPECIFIED
, TYPE_EMPTY
, TYPE_INTEGER
, TYPE_STRING
, TYPE_BOOLEAN
, TYPE_DECIMAL
, TYPE_TIMESTAMP
]
Default value: TYPE_UNSPECIFIED
Data type of the property.
signers object[]
Signers is the list of authorized signatures that signed the data for this source. All the signatures in the data source data should be contained in this external source. All the signatures in the data should be contained in this list.
ethAddress object
In case of an open oracle - Ethereum address will be submitted.
pubKey object
List of authorized public keys that signed the data for this source. All the public keys in the data should be contained in these public keys.
internal object
Top level object used for all internal data sources. It contains one of any of the defined source type variants.
time object
Internal data source used for emitting timestamps.
conditions object[]
Conditions that the timestamps should meet in order to be considered.
Possible values: [OPERATOR_UNSPECIFIED
, OPERATOR_EQUALS
, OPERATOR_GREATER_THAN
, OPERATOR_GREATER_THAN_OR_EQUAL
, OPERATOR_LESS_THAN
, OPERATOR_LESS_THAN_OR_EQUAL
]
Default value: OPERATOR_UNSPECIFIED
Type of comparison to make on the value.
Value to be compared with by the operator.
timeTrigger object
Internal data source used for emitting timestamps automatically using predefined intervals and conditions.
conditions object[]
Conditions that the timestamps need to meet in order to be considered.
Possible values: [OPERATOR_UNSPECIFIED
, OPERATOR_EQUALS
, OPERATOR_GREATER_THAN
, OPERATOR_GREATER_THAN_OR_EQUAL
, OPERATOR_LESS_THAN
, OPERATOR_LESS_THAN_OR_EQUAL
]
Default value: OPERATOR_UNSPECIFIED
Type of comparison to make on the value.
Value to be compared with by the operator.
triggers object[]
Repeat the trigger every n seconds after the initial. If no time for initial was specified, begin repeating immediately.
Trigger when the vega time is greater or equal to this time, in Unix seconds.
Hash generated from the DataSpec data.
Possible values: [STATUS_UNSPECIFIED
, STATUS_ACTIVE
, STATUS_DEACTIVATED
]
Default value: STATUS_UNSPECIFIED
Quote name of the instrument.
Underlying asset for the future.
Unique instrument ID.
metadata object
Collection of instrument meta-data.
List of 0 or more tags.
Name of the instrument.
perpetual object
Perpetual.
Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].
Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].
dataSourceSpecBinding object
Binding between the data source spec and the settlement data.
Name of the property in the source data that should be used for settlement data. If it is set to "prices.BTC.value" for example, then the perpetual market will use the value of this property to get settlement data.
Name of the property in the source data that should be used to determine the perpetual's settlement schedule.
dataSourceSpecForSettlementData object
Data source spec describing the data source for settlement.
data object
Represents the top level object that handles data sources. Data source definition can be external or internal, with whatever number of data sources are defined for each type in the child objects below.
external object
DataSourceDefinitionExternal is the top level object used for all external
data sources. It contains one of any of the defined SourceType
variants.
ethOracle object
Contains the data specification that is received from Ethereum sources.
The ABI of that contract.
Ethereum address of the contract to call.
List of arguments to pass to method call. Protobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum type according to the ABI.
filters object[]
conditions object[]
Conditions that should be matched by the data to be considered of interest.
Possible values: [OPERATOR_UNSPECIFIED
, OPERATOR_EQUALS
, OPERATOR_GREATER_THAN
, OPERATOR_GREATER_THAN_OR_EQUAL
, OPERATOR_LESS_THAN
, OPERATOR_LESS_THAN_OR_EQUAL
]
Default value: OPERATOR_UNSPECIFIED
Type of comparison to make on the value.
Value to be compared with by the operator.
key object
Data source's data property key targeted by the filter.
Name of the property.
Possible values: [TYPE_UNSPECIFIED
, TYPE_EMPTY
, TYPE_INTEGER
, TYPE_STRING
, TYPE_BOOLEAN
, TYPE_DECIMAL
, TYPE_TIMESTAMP
]
Default value: TYPE_UNSPECIFIED
Data type of the property.
Name of the method on the contract to call.
normalisers object[]
Normalisers are used to convert the data returned from the contract method into a standard format. The key of the map is the name of the property, which identifies the specific piece of data to other parts of the data sourcing framework, for example filters. The value is a JSONPath expression for expressing where in the contract call result the required data is located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists.
The ID of the EVM based chain which is to be used to source the oracle data.
trigger object
Conditions for determining when to call the contract method.
timeTrigger object
Trigger for an Ethereum call based on the Ethereum block timestamp. Can be one-off or repeating.
Repeat the call every n seconds after the initial call. If no time for initial call was specified, begin repeating immediately.
Trigger when the Ethereum time is greater or equal to this time, in Unix seconds.
If repeating, stop once Ethereum time is greater than this time, in Unix seconds. If not set, then repeat indefinitely.
oracle object
All types of external data sources use the same configuration set for meeting requirements in order for the data to be useful for Vega - valid signatures and matching filters.
filters object[]
Filters describes which source data are considered of interest or not for the product (or the risk model).
conditions object[]
Conditions that should be matched by the data to be considered of interest.
Possible values: [OPERATOR_UNSPECIFIED
, OPERATOR_EQUALS
, OPERATOR_GREATER_THAN
, OPERATOR_GREATER_THAN_OR_EQUAL
, OPERATOR_LESS_THAN
, OPERATOR_LESS_THAN_OR_EQUAL
]
Default value: OPERATOR_UNSPECIFIED
Type of comparison to make on the value.
Value to be compared with by the operator.
key object
Data source's data property key targeted by the filter.
Name of the property.
Possible values: [TYPE_UNSPECIFIED
, TYPE_EMPTY
, TYPE_INTEGER
, TYPE_STRING
, TYPE_BOOLEAN
, TYPE_DECIMAL
, TYPE_TIMESTAMP
]
Default value: TYPE_UNSPECIFIED
Data type of the property.
signers object[]
Signers is the list of authorized signatures that signed the data for this source. All the signatures in the data source data should be contained in this external source. All the signatures in the data should be contained in this list.
ethAddress object
In case of an open oracle - Ethereum address will be submitted.
pubKey object
List of authorized public keys that signed the data for this source. All the public keys in the data should be contained in these public keys.
internal object
Top level object used for all internal data sources. It contains one of any of the defined source type variants.
time object
Internal data source used for emitting timestamps.
conditions object[]
Conditions that the timestamps should meet in order to be considered.
Possible values: [OPERATOR_UNSPECIFIED
, OPERATOR_EQUALS
, OPERATOR_GREATER_THAN
, OPERATOR_GREATER_THAN_OR_EQUAL
, OPERATOR_LESS_THAN
, OPERATOR_LESS_THAN_OR_EQUAL
]
Default value: OPERATOR_UNSPECIFIED
Type of comparison to make on the value.
Value to be compared with by the operator.
timeTrigger object
Internal data source used for emitting timestamps automatically using predefined intervals and conditions.
conditions object[]
Conditions that the timestamps need to meet in order to be considered.
Possible values: [OPERATOR_UNSPECIFIED
, OPERATOR_EQUALS
, OPERATOR_GREATER_THAN
, OPERATOR_GREATER_THAN_OR_EQUAL
, OPERATOR_LESS_THAN
, OPERATOR_LESS_THAN_OR_EQUAL
]
Default value: OPERATOR_UNSPECIFIED
Type of comparison to make on the value.
Value to be compared with by the operator.
triggers object[]
Repeat the trigger every n seconds after the initial. If no time for initial was specified, begin repeating immediately.
Trigger when the vega time is greater or equal to this time, in Unix seconds.
Hash generated from the DataSpec data.
Possible values: [STATUS_UNSPECIFIED
, STATUS_ACTIVE
, STATUS_DEACTIVATED
]
Default value: STATUS_UNSPECIFIED
dataSourceSpecForSettlementSchedule object
Data source spec describing the data source for settlement schedule.
data object
Represents the top level object that handles data sources. Data source definition can be external or internal, with whatever number of data sources are defined for each type in the child objects below.
external object
DataSourceDefinitionExternal is the top level object used for all external
data sources. It contains one of any of the defined SourceType
variants.
ethOracle object
Contains the data specification that is received from Ethereum sources.
The ABI of that contract.
Ethereum address of the contract to call.
List of arguments to pass to method call. Protobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum type according to the ABI.
filters object[]
conditions object[]
Conditions that should be matched by the data to be considered of interest.
Possible values: [OPERATOR_UNSPECIFIED
, OPERATOR_EQUALS
, OPERATOR_GREATER_THAN
, OPERATOR_GREATER_THAN_OR_EQUAL
, OPERATOR_LESS_THAN
, OPERATOR_LESS_THAN_OR_EQUAL
]
Default value: OPERATOR_UNSPECIFIED
Type of comparison to make on the value.
Value to be compared with by the operator.
key object
Data source's data property key targeted by the filter.
Name of the property.
Possible values: [TYPE_UNSPECIFIED
, TYPE_EMPTY
, TYPE_INTEGER
, TYPE_STRING
, TYPE_BOOLEAN
, TYPE_DECIMAL
, TYPE_TIMESTAMP
]
Default value: TYPE_UNSPECIFIED
Data type of the property.
Name of the method on the contract to call.
normalisers object[]
Normalisers are used to convert the data returned from the contract method into a standard format. The key of the map is the name of the property, which identifies the specific piece of data to other parts of the data sourcing framework, for example filters. The value is a JSONPath expression for expressing where in the contract call result the required data is located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists.
The ID of the EVM based chain which is to be used to source the oracle data.
trigger object
Conditions for determining when to call the contract method.
timeTrigger object
Trigger for an Ethereum call based on the Ethereum block timestamp. Can be one-off or repeating.
Repeat the call every n seconds after the initial call. If no time for initial call was specified, begin repeating immediately.
Trigger when the Ethereum time is greater or equal to this time, in Unix seconds.
If repeating, stop once Ethereum time is greater than this time, in Unix seconds. If not set, then repeat indefinitely.
oracle object
All types of external data sources use the same configuration set for meeting requirements in order for the data to be useful for Vega - valid signatures and matching filters.
filters object[]
Filters describes which source data are considered of interest or not for the product (or the risk model).
conditions object[]
Conditions that should be matched by the data to be considered of interest.
Possible values: [OPERATOR_UNSPECIFIED
, OPERATOR_EQUALS
, OPERATOR_GREATER_THAN
, OPERATOR_GREATER_THAN_OR_EQUAL
, OPERATOR_LESS_THAN
, OPERATOR_LESS_THAN_OR_EQUAL
]
Default value: OPERATOR_UNSPECIFIED
Type of comparison to make on the value.
Value to be compared with by the operator.
key object
Data source's data property key targeted by the filter.
Name of the property.
Possible values: [TYPE_UNSPECIFIED
, TYPE_EMPTY
, TYPE_INTEGER
, TYPE_STRING
, TYPE_BOOLEAN
, TYPE_DECIMAL
, TYPE_TIMESTAMP
]
Default value: TYPE_UNSPECIFIED
Data type of the property.
signers object[]
Signers is the list of authorized signatures that signed the data for this source. All the signatures in the data source data should be contained in this external source. All the signatures in the data should be contained in this list.
ethAddress object
In case of an open oracle - Ethereum address will be submitted.
pubKey object
List of authorized public keys that signed the data for this source. All the public keys in the data should be contained in these public keys.
internal object
Top level object used for all internal data sources. It contains one of any of the defined source type variants.
time object
Internal data source used for emitting timestamps.
conditions object[]
Conditions that the timestamps should meet in order to be considered.
Possible values: [OPERATOR_UNSPECIFIED
, OPERATOR_EQUALS
, OPERATOR_GREATER_THAN
, OPERATOR_GREATER_THAN_OR_EQUAL
, OPERATOR_LESS_THAN
, OPERATOR_LESS_THAN_OR_EQUAL
]
Default value: OPERATOR_UNSPECIFIED
Type of comparison to make on the value.
Value to be compared with by the operator.
timeTrigger object
Internal data source used for emitting timestamps automatically using predefined intervals and conditions.
conditions object[]
Conditions that the timestamps need to meet in order to be considered.
Possible values: [OPERATOR_UNSPECIFIED
, OPERATOR_EQUALS
, OPERATOR_GREATER_THAN
, OPERATOR_GREATER_THAN_OR_EQUAL
, OPERATOR_LESS_THAN
, OPERATOR_LESS_THAN_OR_EQUAL
]
Default value: OPERATOR_UNSPECIFIED
Type of comparison to make on the value.
Value to be compared with by the operator.
triggers object[]
Repeat the trigger every n seconds after the initial. If no time for initial was specified, begin repeating immediately.
Trigger when the vega time is greater or equal to this time, in Unix seconds.
Hash generated from the DataSpec data.
Possible values: [STATUS_UNSPECIFIED
, STATUS_ACTIVE
, STATUS_DEACTIVATED
]
Default value: STATUS_UNSPECIFIED
Lower bound for the funding-rate such that the funding-rate will never be lower than this value.
Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.
Upper bound for the funding-rate such that the funding-rate will never be higher than this value.
Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].
internalCompositePriceConfig object
Optional configuration for the internal composite price used in funding payment calculation.
Cash amount, in asset decimals, used for the calculation of the mark price from the order book.
Possible values: [COMPOSITE_PRICE_TYPE_UNSPECIFIED
, COMPOSITE_PRICE_TYPE_WEIGHTED
, COMPOSITE_PRICE_TYPE_MEDIAN
, COMPOSITE_PRICE_TYPE_LAST_TRADE
]
Default value: COMPOSITE_PRICE_TYPE_UNSPECIFIED
Which method is used for the calculation of the composite price for the market.
dataSourcesSpec object[]
Additional price sources to be used for internal composite price calculation.
external object
DataSourceDefinitionExternal is the top level object used for all external
data sources. It contains one of any of the defined SourceType
variants.
ethOracle object
Contains the data specification that is received from Ethereum sources.
The ABI of that contract.
Ethereum address of the contract to call.
List of arguments to pass to method call. Protobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum type according to the ABI.
filters object[]
conditions object[]
Conditions that should be matched by the data to be considered of interest.
Possible values: [OPERATOR_UNSPECIFIED
, OPERATOR_EQUALS
, OPERATOR_GREATER_THAN
, OPERATOR_GREATER_THAN_OR_EQUAL
, OPERATOR_LESS_THAN
, OPERATOR_LESS_THAN_OR_EQUAL
]
Default value: OPERATOR_UNSPECIFIED
Type of comparison to make on the value.
Value to be compared with by the operator.
key object
Data source's data property key targeted by the filter.
Name of the property.
Possible values: [TYPE_UNSPECIFIED
, TYPE_EMPTY
, TYPE_INTEGER
, TYPE_STRING
, TYPE_BOOLEAN
, TYPE_DECIMAL
, TYPE_TIMESTAMP
]
Default value: TYPE_UNSPECIFIED
Data type of the property.
Name of the method on the contract to call.
normalisers object[]
Normalisers are used to convert the data returned from the contract method into a standard format. The key of the map is the name of the property, which identifies the specific piece of data to other parts of the data sourcing framework, for example filters. The value is a JSONPath expression for expressing where in the contract call result the required data is located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists.
The ID of the EVM based chain which is to be used to source the oracle data.
trigger object
Conditions for determining when to call the contract method.
timeTrigger object
Trigger for an Ethereum call based on the Ethereum block timestamp. Can be one-off or repeating.
Repeat the call every n seconds after the initial call. If no time for initial call was specified, begin repeating immediately.
Trigger when the Ethereum time is greater or equal to this time, in Unix seconds.
If repeating, stop once Ethereum time is greater than this time, in Unix seconds. If not set, then repeat indefinitely.
oracle object
All types of external data sources use the same configuration set for meeting requirements in order for the data to be useful for Vega - valid signatures and matching filters.
filters object[]
Filters describes which source data are considered of interest or not for the product (or the risk model).
conditions object[]
Conditions that should be matched by the data to be considered of interest.
Possible values: [OPERATOR_UNSPECIFIED
, OPERATOR_EQUALS
, OPERATOR_GREATER_THAN
, OPERATOR_GREATER_THAN_OR_EQUAL
, OPERATOR_LESS_THAN
, OPERATOR_LESS_THAN_OR_EQUAL
]
Default value: OPERATOR_UNSPECIFIED
Type of comparison to make on the value.
Value to be compared with by the operator.
key object
Data source's data property key targeted by the filter.
Name of the property.
Possible values: [TYPE_UNSPECIFIED
, TYPE_EMPTY
, TYPE_INTEGER
, TYPE_STRING
, TYPE_BOOLEAN
, TYPE_DECIMAL
, TYPE_TIMESTAMP
]
Default value: TYPE_UNSPECIFIED
Data type of the property.
signers object[]
Signers is the list of authorized signatures that signed the data for this source. All the signatures in the data source data should be contained in this external source. All the signatures in the data should be contained in this list.
ethAddress object
In case of an open oracle - Ethereum address will be submitted.
pubKey object
List of authorized public keys that signed the data for this source. All the public keys in the data should be contained in these public keys.
internal object
Top level object used for all internal data sources. It contains one of any of the defined source type variants.
time object
Internal data source used for emitting timestamps.
conditions object[]
Conditions that the timestamps should meet in order to be considered.
Possible values: [OPERATOR_UNSPECIFIED
, OPERATOR_EQUALS
, OPERATOR_GREATER_THAN
, OPERATOR_GREATER_THAN_OR_EQUAL
, OPERATOR_LESS_THAN
, OPERATOR_LESS_THAN_OR_EQUAL
]
Default value: OPERATOR_UNSPECIFIED
Type of comparison to make on the value.
Value to be compared with by the operator.
timeTrigger object
Internal data source used for emitting timestamps automatically using predefined intervals and conditions.
conditions object[]
Conditions that the timestamps need to meet in order to be considered.
Possible values: [OPERATOR_UNSPECIFIED
, OPERATOR_EQUALS
, OPERATOR_GREATER_THAN
, OPERATOR_GREATER_THAN_OR_EQUAL
, OPERATOR_LESS_THAN
, OPERATOR_LESS_THAN_OR_EQUAL
]
Default value: OPERATOR_UNSPECIFIED
Type of comparison to make on the value.
Value to be compared with by the operator.
triggers object[]
Repeat the trigger every n seconds after the initial. If no time for initial was specified, begin repeating immediately.
Trigger when the vega time is greater or equal to this time, in Unix seconds.
dataSourcesSpecBinding object[]
The property name of price.
Decay power used for the calculation of mark price.
Decay weight used for calculation of mark price.
For how long a price source is considered valid. One entry for each data source such that the first is for the trade based mark price, the second is for the book based price the third is for the first oracle, followed by more oracle data source staleness tolerance.
Weights for each composite price data source.
Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].
Quote name of the instrument.
Underlying asset for the perpetual.
spot object
Spot.
Asset ID of the underlying base asset for the spot product.
Asset ID of the underlying quote asset for the spot product.
logNormalRiskModel object
Log normal.
params object
Risk model parameters for log normal.
Mu parameter, annualised growth rate of the underlying asset.
R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.
Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.
Risk Aversion Parameter.
riskFactorOverride object
And optional override for the risk factor calculated by the risk model.
Long Risk factor value.
Short Risk factor value.
Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall calculation to obtain the maintenance margin, must be a strictly non-negative real number.
marginCalculator object
Margin calculator for the instrument.
If set to true, positions must be fully collateralised so there is no default risk for any party (capped futures).
scalingFactors object
Scaling factors for margin calculation.
Collateral release level. If a trader has collateral above this level, the system will release collateral to a trader's general collateral account for the asset.
Initial margin level. This is the minimum amount of collateral required to open a position in a market that requires margin.
Collateral search level. If collateral dips below this value, the system will search for collateral to release.
simpleRiskModel object
Simple.
params object
Risk model params for simple modelling.
Pre-defined risk factor value for long.
Pre-defined risk factor value for short.
Pre-defined maximum price move up that the model considers as valid.
Pre-defined minimum price move down that the model considers as valid.
Pre-defined constant probability of trading.
Possible values: [TRADING_MODE_UNSPECIFIED
, TRADING_MODE_CONTINUOUS
, TRADING_MODE_BATCH_AUCTION
, TRADING_MODE_OPENING_AUCTION
, TRADING_MODE_MONITORING_AUCTION
, TRADING_MODE_NO_TRADING
, TRADING_MODE_SUSPENDED_VIA_GOVERNANCE
, TRADING_MODE_LONG_BLOCK_AUCTION
]
Default value: TRADING_MODE_UNSPECIFIED
Current mode of execution of the market.
marketData object
Time in seconds until the end of the auction (zero if currently not in auction period).
Time until next auction, or start time of the current auction if market is in auction period.
Highest price level on an order book for buy orders, as an unsigned integer, for example 123456
is a correctly
formatted price of 1.23456
assuming market configured to 5 decimal places.
Aggregated volume being bid at the best bid price, as an integer, for example 123456
is a correctly
formatted price of 1.23456
assuming market is configured to 5 decimal places.
Lowest price level on an order book for offer orders. This field is an unsigned integer scaled to the market's decimal places.
Aggregated volume being offered at the best offer price, as an integer, for example 123456
is a correctly
formatted price of 1.23456
assuming market is configured to 5 decimal places.
Highest price on the order book for buy orders not including pegged orders. This field is an unsigned integer scaled to the market's decimal places.
Total volume at the best static bid price excluding pegged orders.
Lowest price on the order book for sell orders not including pegged orders. This field is an unsigned integer scaled to the market's decimal places.
Total volume at the best static offer price, excluding pegged orders.
Possible values: [AUCTION_TRIGGER_UNSPECIFIED
, AUCTION_TRIGGER_BATCH
, AUCTION_TRIGGER_OPENING
, AUCTION_TRIGGER_PRICE
, AUCTION_TRIGGER_LIQUIDITY
, AUCTION_TRIGGER_LIQUIDITY_TARGET_NOT_MET
, AUCTION_TRIGGER_UNABLE_TO_DEPLOY_LP_ORDERS
, AUCTION_TRIGGER_GOVERNANCE_SUSPENSION
, AUCTION_TRIGGER_LONG_BLOCK
]
Default value: AUCTION_TRIGGER_UNSPECIFIED
When a market auction is extended, this field indicates what caused the extension.
Indicative price (zero if not in auction). This field is an unsigned scaled to the market's decimal places.
Indicative volume (zero if not in auction).
Last traded price of the market. This field is an unsigned integer scaled to the market's decimal places.
liquidityProviderFeeShare object[]
Equity-like share of liquidity fee for each liquidity provider.
Average entry valuation of the liquidity provider for the market.
Average liquidity score.
Share own by this liquidity provider.
Liquidity provider party ID.
The virtual stake of this liquidity provider.
liquidityProviderSla object[]
SLA performance for each liquidity provider.
Indicates how often LP meets the commitment during the current epoch.
Determines how the fee penalties from past epochs affect future fee revenue.
Shows the bond penalties from past epochs.
Indicates the fee penalty amount applied in the previous epoch.
Indicates how often LP met the commitment in the previous epoch.
Notional volume of orders within the range provided on the buy side of the book.
Notional volume of orders within the range provided on the sell side of the book.
Liquidity provider party ID.
Represents the total amount of funds LP must supply. The amount to be supplied is in the market’s settlement currency, spread on both buy and sell sides of the order book within a defined range.
Mark price, as an unsigned integer, for example 123456
is a correctly
formatted price of 1.23456
assuming market configured to 5 decimal places.
markPriceState object
State of the internal composite price.
priceSources object[]
Timestamp in Unix nanoseconds when the price source was last updated.
Current value of the composite source price.
Source of the price.
Possible values: [COMPOSITE_PRICE_TYPE_UNSPECIFIED
, COMPOSITE_PRICE_TYPE_WEIGHTED
, COMPOSITE_PRICE_TYPE_MEDIAN
, COMPOSITE_PRICE_TYPE_LAST_TRADE
]
Default value: COMPOSITE_PRICE_TYPE_UNSPECIFIED
The method used for calculating the mark price.
Market growth at the last market time window.
Possible values: [STATE_UNSPECIFIED
, STATE_PROPOSED
, STATE_REJECTED
, STATE_PENDING
, STATE_CANCELLED
, STATE_ACTIVE
, STATE_SUSPENDED
, STATE_CLOSED
, STATE_TRADING_TERMINATED
, STATE_SETTLED
, STATE_SUSPENDED_VIA_GOVERNANCE
]
Default value: STATE_UNSPECIFIED
Current state of the market.
Possible values: [TRADING_MODE_UNSPECIFIED
, TRADING_MODE_CONTINUOUS
, TRADING_MODE_BATCH_AUCTION
, TRADING_MODE_OPENING_AUCTION
, TRADING_MODE_MONITORING_AUCTION
, TRADING_MODE_NO_TRADING
, TRADING_MODE_SUSPENDED_VIA_GOVERNANCE
, TRADING_MODE_LONG_BLOCK_AUCTION
]
Default value: TRADING_MODE_UNSPECIFIED
Current trading mode for the market.
Market value proxy.
Arithmetic average of the best bid price and best offer price, as an integer, for example 123456
is a correctly
formatted price of 1.23456
assuming market configured to 5 decimal places.
Time in Unix nanoseconds when the next mark-to-market calculation will occur.
Time in Unix nanoseconds when the market will next submit a trade to reduce its position.
Sum of the size of all positions greater than zero on the market.
priceMonitoringBounds object[]
One or more price monitoring bounds for the current timestamp.
Has this bound been triggered yet or is it still active.
Maximum price that isn't currently breaching the specified price monitoring trigger. This field is an unsigned integer scaled to the market's decimal places.
Minimum price that isn't currently breaching the specified price monitoring trigger. This field is an unsigned integer scaled to the market's decimal places.
Reference price used to calculate the valid price range. This field is an unsigned integer scaled to the market's decimal places.
trigger object
Price monitoring trigger associated with the bounds.
Price monitoring auction extension duration in seconds should the price breach its theoretical level over the specified horizon at the specified probability level.
Price monitoring projection horizon τ in seconds.
Price monitoring probability level p.
productData object
Data related to the particular product type of the market.
perpetualData object
Represents market data specific to a perpetual market.
Time-weighted-average the external data points for the in-progress funding period.
Current funding payment for the in-progress funding period.
Current funding rate for the in-progress funding period.
The internal composite price used for perpetual markets.
internalCompositePriceState object
State of the internal composite price.
priceSources object[]
Timestamp in Unix nanoseconds when the price source was last updated.
Current value of the composite source price.
Source of the price.
Possible values: [COMPOSITE_PRICE_TYPE_UNSPECIFIED
, COMPOSITE_PRICE_TYPE_WEIGHTED
, COMPOSITE_PRICE_TYPE_MEDIAN
, COMPOSITE_PRICE_TYPE_LAST_TRADE
]
Default value: COMPOSITE_PRICE_TYPE_UNSPECIFIED
The method used for calculating the internal composite price, for perpetual markets only.
Time-weighted-average the internal data-points for the in-progress funding period.
The next time the internal composite price is calculated for the perpetual market, in Unix nanoseconds.
Last seen value of the settlement oracle.
Arithmetic average of the best static bid price and best static offer price. This field is an unsigned integer scaled to the market's decimal places.
Available stake for the given market. This field is an unsigned integer scaled to the settlement asset's decimal places.
Targeted stake for the given market. This field is an unsigned integer scaled to the settlement asset's decimal places.
Timestamp in Unix nanoseconds at which this mark price was relevant.
Possible values: [AUCTION_TRIGGER_UNSPECIFIED
, AUCTION_TRIGGER_BATCH
, AUCTION_TRIGGER_OPENING
, AUCTION_TRIGGER_PRICE
, AUCTION_TRIGGER_LIQUIDITY
, AUCTION_TRIGGER_LIQUIDITY_TARGET_NOT_MET
, AUCTION_TRIGGER_UNABLE_TO_DEPLOY_LP_ORDERS
, AUCTION_TRIGGER_GOVERNANCE_SUSPENSION
, AUCTION_TRIGGER_LONG_BLOCK
]
Default value: AUCTION_TRIGGER_UNSPECIFIED
When a market is in an auction trading mode, this field indicates what triggered the auction.
marketTick object
marketUpdated object
Number of decimal places that a price must be shifted by in order to get a
correct price denominated in the currency of the market, for example:
realPrice = price / 10^decimalPlaces
. On spot markets, also called 'size decimal places'.
fees object
Fees configuration that apply to the market.
factors object
Fee factors.
Infrastructure fee charged network wide for staking and governance.
Liquidity fee applied per market for market making.
Market maker fee charged network wide.
liquidityFeeSettings object
Liquidity fee settings for the market describing how the fee was calculated.
Constant liquidity fee used when using the constant fee method.
Possible values: [METHOD_UNSPECIFIED
, METHOD_MARGINAL_COST
, METHOD_WEIGHTED_AVERAGE
, METHOD_CONSTANT
]
Default value: METHOD_UNSPECIFIED
Method used to calculate the market's liquidity fee.
Unique ID for the market.
The fraction of the parent market's insurance pool that this market inherits; range 0 through 1.
Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.
liquidationStrategy object
Liquidation strategy used by this market.
Fraction of the open position the market will try to close in a single attempt; range 0 through 1.
Decimal > 0 specifying the range range above and below the mid price within which the network will trade to dispose of its position. The value can be > 1. For example, if set to 1.5, the minimum price will be 0, ie max(0, mid_price * (1 - 1.5)), and the maximum price will be mid_price * (1 + 1.5).
Interval, in seconds, at which the network will attempt to close its position.
Size of the position that the network will try to close in a single attempt.
Max fraction of the total volume of the orderbook, within liquidity bounds, that the network can use to close its position; range 0 through 1.
liquidityMonitoringParameters object
LiquidityMonitoringParameters for the market.
Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.
targetStakeParameters object
Specifies parameters related to target stake calculation.
Specifies scaling factors used in target stake calculation.
Specifies length of time window expressed in seconds for target stake calculation.
Specifies the triggering ratio for entering liquidity auction.
liquiditySlaParams object
Liquidity SLA parameters for the market.
Specifies the minimum fraction of time LPs must spend "on the book" providing their committed liquidity.
Specifies the number of liquidity epochs over which past performance will continue to affect rewards.
Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers that achieved a higher SLA performance than them.
Percentage move up and down from the mid price which specifies the range of price levels over which automated liquidity provisions will be deployed.
markPriceConfiguration object
Mark price calculation configuration.
Cash amount, in asset decimals, used for the calculation of the mark price from the order book.
Possible values: [COMPOSITE_PRICE_TYPE_UNSPECIFIED
, COMPOSITE_PRICE_TYPE_WEIGHTED
, COMPOSITE_PRICE_TYPE_MEDIAN
, COMPOSITE_PRICE_TYPE_LAST_TRADE
]
Default value: COMPOSITE_PRICE_TYPE_UNSPECIFIED
Which method is used for the calculation of the composite price for the market.
dataSourcesSpec object[]
Additional price sources to be used for internal composite price calculation.
external object
DataSourceDefinitionExternal is the top level object used for all external
data sources. It contains one of any of the defined SourceType
variants.
ethOracle object
Contains the data specification that is received from Ethereum sources.
The ABI of that contract.
Ethereum address of the contract to call.
List of arguments to pass to method call. Protobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum type according to the ABI.
filters object[]
conditions object[]
Conditions that should be matched by the data to be considered of interest.
Possible values: [OPERATOR_UNSPECIFIED
, OPERATOR_EQUALS
, OPERATOR_GREATER_THAN
, OPERATOR_GREATER_THAN_OR_EQUAL
, OPERATOR_LESS_THAN
, OPERATOR_LESS_THAN_OR_EQUAL
]
Default value: OPERATOR_UNSPECIFIED
Type of comparison to make on the value.
Value to be compared with by the operator.
key object
Data source's data property key targeted by the filter.
Name of the property.
Possible values: [TYPE_UNSPECIFIED
, TYPE_EMPTY
, TYPE_INTEGER
, TYPE_STRING
, TYPE_BOOLEAN
, TYPE_DECIMAL
, TYPE_TIMESTAMP
]
Default value: TYPE_UNSPECIFIED
Data type of the property.
Name of the method on the contract to call.
normalisers object[]
Normalisers are used to convert the data returned from the contract method into a standard format. The key of the map is the name of the property, which identifies the specific piece of data to other parts of the data sourcing framework, for example filters. The value is a JSONPath expression for expressing where in the contract call result the required data is located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists.
The ID of the EVM based chain which is to be used to source the oracle data.
trigger object
Conditions for determining when to call the contract method.
timeTrigger object
Trigger for an Ethereum call based on the Ethereum block timestamp. Can be one-off or repeating.
Repeat the call every n seconds after the initial call. If no time for initial call was specified, begin repeating immediately.
Trigger when the Ethereum time is greater or equal to this time, in Unix seconds.
If repeating, stop once Ethereum time is greater than this time, in Unix seconds. If not set, then repeat indefinitely.
oracle object
All types of external data sources use the same configuration set for meeting requirements in order for the data to be useful for Vega - valid signatures and matching filters.
filters object[]
Filters describes which source data are considered of interest or not for the product (or the risk model).
conditions object[]
Conditions that should be matched by the data to be considered of interest.
Possible values: [OPERATOR_UNSPECIFIED
, OPERATOR_EQUALS
, OPERATOR_GREATER_THAN
, OPERATOR_GREATER_THAN_OR_EQUAL
, OPERATOR_LESS_THAN
, OPERATOR_LESS_THAN_OR_EQUAL
]
Default value: OPERATOR_UNSPECIFIED
Type of comparison to make on the value.
Value to be compared with by the operator.
key object
Data source's data property key targeted by the filter.
Name of the property.
Possible values: [TYPE_UNSPECIFIED
, TYPE_EMPTY
, TYPE_INTEGER
, TYPE_STRING
, TYPE_BOOLEAN
, TYPE_DECIMAL
, TYPE_TIMESTAMP
]
Default value: TYPE_UNSPECIFIED
Data type of the property.
signers object[]
Signers is the list of authorized signatures that signed the data for this source. All the signatures in the data source data should be contained in this external source. All the signatures in the data should be contained in this list.
ethAddress object
In case of an open oracle - Ethereum address will be submitted.
pubKey object
List of authorized public keys that signed the data for this source. All the public keys in the data should be contained in these public keys.
internal object
Top level object used for all internal data sources. It contains one of any of the defined source type variants.
time object
Internal data source used for emitting timestamps.
conditions object[]
Conditions that the timestamps should meet in order to be considered.
Possible values: [OPERATOR_UNSPECIFIED
, OPERATOR_EQUALS
, OPERATOR_GREATER_THAN
, OPERATOR_GREATER_THAN_OR_EQUAL
, OPERATOR_LESS_THAN
, OPERATOR_LESS_THAN_OR_EQUAL
]
Default value: OPERATOR_UNSPECIFIED
Type of comparison to make on the value.
Value to be compared with by the operator.
timeTrigger object
Internal data source used for emitting timestamps automatically using predefined intervals and conditions.
conditions object[]
Conditions that the timestamps need to meet in order to be considered.
Possible values: [OPERATOR_UNSPECIFIED
, OPERATOR_EQUALS
, OPERATOR_GREATER_THAN
, OPERATOR_GREATER_THAN_OR_EQUAL
, OPERATOR_LESS_THAN
, OPERATOR_LESS_THAN_OR_EQUAL
]
Default value: OPERATOR_UNSPECIFIED
Type of comparison to make on the value.
Value to be compared with by the operator.
triggers object[]
Repeat the trigger every n seconds after the initial. If no time for initial was specified, begin repeating immediately.
Trigger when the vega time is greater or equal to this time, in Unix seconds.
dataSourcesSpecBinding object[]
The property name of price.
Decay power used for the calculation of mark price.
Decay weight used for calculation of mark price.
For how long a price source is considered valid. One entry for each data source such that the first is for the trade based mark price, the second is for the book based price the third is for the first oracle, followed by more oracle data source staleness tolerance.
Weights for each composite price data source.
marketTimestamps object
Timestamps for when the market state changes.
Time when the market closed.
Time when the market has left the opening auction and is ready to accept trades.
Time when the market has been voted in and began its opening auction.
Time when the market is first proposed.
openingAuction object
Auction duration specifies how long the opening auction will run (minimum duration and optionally a minimum traded volume).
Duration of the auction in seconds.
Target uncrossing trading volume.
The number of decimal places for a position. On spot markets, used for order size, also known as 'size decimal places'.
priceMonitoringSettings object
PriceMonitoringSettings for the market.
parameters object
Specifies price monitoring parameters to be used for price monitoring purposes.
triggers object[]
Price monitoring auction extension duration in seconds should the price breach its theoretical level over the specified horizon at the specified probability level.
Price monitoring projection horizon τ in seconds.
Price monitoring probability level p.
Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.
Possible values: [STATE_UNSPECIFIED
, STATE_PROPOSED
, STATE_REJECTED
, STATE_PENDING
, STATE_CANCELLED
, STATE_ACTIVE
, STATE_SUSPENDED
, STATE_CLOSED
, STATE_TRADING_TERMINATED
, STATE_SETTLED
, STATE_SUSPENDED_VIA_GOVERNANCE
]
Default value: STATE_UNSPECIFIED
Current state of the market.
ID of the market that succeeds this market if it exists. This will be populated by the system when the successor market is enabled.
tradableInstrument object
Tradable instrument configuration.
instrument object
Details for the underlying instrument.
Code for the instrument.
future object
Future.
cap object
If set, this product represents a capped future market.
If set to true, the settlement price must either be zero, or equal to the max price.
If set to true, positions must be fully collateralised so there is no default risk for any party.
Set the maximum price for orders, and settlement data in market decimals.
dataSourceSpecBinding object
Binding between the data spec and the data source.
Name of the property in the source data that should be used as settlement data. If it is set to "prices.BTC.value", then the Future will use the value of this property as settlement data.
Name of the property in the data source data that signals termination of trading.
dataSourceSpecForSettlementData object
Data source specification that describes the settlement data source filter.
data object
Represents the top level object that handles data sources. Data source definition can be external or internal, with whatever number of data sources are defined for each type in the child objects below.
external object
DataSourceDefinitionExternal is the top level object used for all external
data sources. It contains one of any of the defined SourceType
variants.
ethOracle object
Contains the data specification that is received from Ethereum sources.
The ABI of that contract.
Ethereum address of the contract to call.
List of arguments to pass to method call. Protobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum type according to the ABI.
filters object[]
conditions object[]
Conditions that should be matched by the data to be considered of interest.
Possible values: [OPERATOR_UNSPECIFIED
, OPERATOR_EQUALS
, OPERATOR_GREATER_THAN
, OPERATOR_GREATER_THAN_OR_EQUAL
, OPERATOR_LESS_THAN
, OPERATOR_LESS_THAN_OR_EQUAL
]
Default value: OPERATOR_UNSPECIFIED
Type of comparison to make on the value.
Value to be compared with by the operator.
key object
Data source's data property key targeted by the filter.
Name of the property.
Possible values: [TYPE_UNSPECIFIED
, TYPE_EMPTY
, TYPE_INTEGER
, TYPE_STRING
, TYPE_BOOLEAN
, TYPE_DECIMAL
, TYPE_TIMESTAMP
]
Default value: TYPE_UNSPECIFIED
Data type of the property.
Name of the method on the contract to call.
normalisers object[]
Normalisers are used to convert the data returned from the contract method into a standard format. The key of the map is the name of the property, which identifies the specific piece of data to other parts of the data sourcing framework, for example filters. The value is a JSONPath expression for expressing where in the contract call result the required data is located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists.
The ID of the EVM based chain which is to be used to source the oracle data.
trigger object
Conditions for determining when to call the contract method.
timeTrigger object
Trigger for an Ethereum call based on the Ethereum block timestamp. Can be one-off or repeating.
Repeat the call every n seconds after the initial call. If no time for initial call was specified, begin repeating immediately.
Trigger when the Ethereum time is greater or equal to this time, in Unix seconds.
If repeating, stop once Ethereum time is greater than this time, in Unix seconds. If not set, then repeat indefinitely.
oracle object
All types of external data sources use the same configuration set for meeting requirements in order for the data to be useful for Vega - valid signatures and matching filters.
filters object[]
Filters describes which source data are considered of interest or not for the product (or the risk model).
conditions object[]
Conditions that should be matched by the data to be considered of interest.
Possible values: [OPERATOR_UNSPECIFIED
, OPERATOR_EQUALS
, OPERATOR_GREATER_THAN
, OPERATOR_GREATER_THAN_OR_EQUAL
, OPERATOR_LESS_THAN
, OPERATOR_LESS_THAN_OR_EQUAL
]
Default value: OPERATOR_UNSPECIFIED
Type of comparison to make on the value.
Value to be compared with by the operator.
key object
Data source's data property key targeted by the filter.
Name of the property.
Possible values: [TYPE_UNSPECIFIED
, TYPE_EMPTY
, TYPE_INTEGER
, TYPE_STRING
, TYPE_BOOLEAN
, TYPE_DECIMAL
, TYPE_TIMESTAMP
]
Default value: TYPE_UNSPECIFIED
Data type of the property.
signers object[]
Signers is the list of authorized signatures that signed the data for this source. All the signatures in the data source data should be contained in this external source. All the signatures in the data should be contained in this list.
ethAddress object
In case of an open oracle - Ethereum address will be submitted.
pubKey object
List of authorized public keys that signed the data for this source. All the public keys in the data should be contained in these public keys.
internal object
Top level object used for all internal data sources. It contains one of any of the defined source type variants.
time object
Internal data source used for emitting timestamps.
conditions object[]
Conditions that the timestamps should meet in order to be considered.
Possible values: [OPERATOR_UNSPECIFIED
, OPERATOR_EQUALS
, OPERATOR_GREATER_THAN
, OPERATOR_GREATER_THAN_OR_EQUAL
, OPERATOR_LESS_THAN
, OPERATOR_LESS_THAN_OR_EQUAL
]
Default value: OPERATOR_UNSPECIFIED
Type of comparison to make on the value.
Value to be compared with by the operator.
timeTrigger object
Internal data source used for emitting timestamps automatically using predefined intervals and conditions.
conditions object[]
Conditions that the timestamps need to meet in order to be considered.
Possible values: [OPERATOR_UNSPECIFIED
, OPERATOR_EQUALS
, OPERATOR_GREATER_THAN
, OPERATOR_GREATER_THAN_OR_EQUAL
, OPERATOR_LESS_THAN
, OPERATOR_LESS_THAN_OR_EQUAL
]
Default value: OPERATOR_UNSPECIFIED
Type of comparison to make on the value.
Value to be compared with by the operator.
triggers object[]
Repeat the trigger every n seconds after the initial. If no time for initial was specified, begin repeating immediately.
Trigger when the vega time is greater or equal to this time, in Unix seconds.
Hash generated from the DataSpec data.
Possible values: [STATUS_UNSPECIFIED
, STATUS_ACTIVE
, STATUS_DEACTIVATED
]
Default value: STATUS_UNSPECIFIED
dataSourceSpecForTradingTermination object
Data source specification that describes the trading termination data source filter.
data object
Represents the top level object that handles data sources. Data source definition can be external or internal, with whatever number of data sources are defined for each type in the child objects below.
external object
DataSourceDefinitionExternal is the top level object used for all external
data sources. It contains one of any of the defined SourceType
variants.
ethOracle object
Contains the data specification that is received from Ethereum sources.
The ABI of that contract.
Ethereum address of the contract to call.
List of arguments to pass to method call. Protobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum type according to the ABI.
filters object[]
conditions object[]
Conditions that should be matched by the data to be considered of interest.
Possible values: [OPERATOR_UNSPECIFIED
, OPERATOR_EQUALS
, OPERATOR_GREATER_THAN
, OPERATOR_GREATER_THAN_OR_EQUAL
, OPERATOR_LESS_THAN
, OPERATOR_LESS_THAN_OR_EQUAL
]
Default value: OPERATOR_UNSPECIFIED
Type of comparison to make on the value.
Value to be compared with by the operator.
key object
Data source's data property key targeted by the filter.
Name of the property.
Possible values: [TYPE_UNSPECIFIED
, TYPE_EMPTY
, TYPE_INTEGER
, TYPE_STRING
, TYPE_BOOLEAN
, TYPE_DECIMAL
, TYPE_TIMESTAMP
]
Default value: TYPE_UNSPECIFIED
Data type of the property.
Name of the method on the contract to call.
normalisers object[]
Normalisers are used to convert the data returned from the contract method into a standard format. The key of the map is the name of the property, which identifies the specific piece of data to other parts of the data sourcing framework, for example filters. The value is a JSONPath expression for expressing where in the contract call result the required data is located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists.
The ID of the EVM based chain which is to be used to source the oracle data.
trigger object
Conditions for determining when to call the contract method.
timeTrigger object
Trigger for an Ethereum call based on the Ethereum block timestamp. Can be one-off or repeating.
Repeat the call every n seconds after the initial call. If no time for initial call was specified, begin repeating immediately.
Trigger when the Ethereum time is greater or equal to this time, in Unix seconds.
If repeating, stop once Ethereum time is greater than this time, in Unix seconds. If not set, then repeat indefinitely.
oracle object
All types of external data sources use the same configuration set for meeting requirements in order for the data to be useful for Vega - valid signatures and matching filters.
filters object[]
Filters describes which source data are considered of interest or not for the product (or the risk model).
conditions object[]
Conditions that should be matched by the data to be considered of interest.
Possible values: [OPERATOR_UNSPECIFIED
, OPERATOR_EQUALS
, OPERATOR_GREATER_THAN
, OPERATOR_GREATER_THAN_OR_EQUAL
, OPERATOR_LESS_THAN
, OPERATOR_LESS_THAN_OR_EQUAL
]
Default value: OPERATOR_UNSPECIFIED
Type of comparison to make on the value.
Value to be compared with by the operator.
key object
Data source's data property key targeted by the filter.
Name of the property.
Possible values: [TYPE_UNSPECIFIED
, TYPE_EMPTY
, TYPE_INTEGER
, TYPE_STRING
, TYPE_BOOLEAN
, TYPE_DECIMAL
, TYPE_TIMESTAMP
]
Default value: TYPE_UNSPECIFIED
Data type of the property.
signers object[]
Signers is the list of authorized signatures that signed the data for this source. All the signatures in the data source data should be contained in this external source. All the signatures in the data should be contained in this list.
ethAddress object
In case of an open oracle - Ethereum address will be submitted.
pubKey object
List of authorized public keys that signed the data for this source. All the public keys in the data should be contained in these public keys.
internal object
Top level object used for all internal data sources. It contains one of any of the defined source type variants.
time object
Internal data source used for emitting timestamps.
conditions object[]
Conditions that the timestamps should meet in order to be considered.
Possible values: [OPERATOR_UNSPECIFIED
, OPERATOR_EQUALS
, OPERATOR_GREATER_THAN
, OPERATOR_GREATER_THAN_OR_EQUAL
, OPERATOR_LESS_THAN
, OPERATOR_LESS_THAN_OR_EQUAL
]
Default value: OPERATOR_UNSPECIFIED
Type of comparison to make on the value.
Value to be compared with by the operator.
timeTrigger object
Internal data source used for emitting timestamps automatically using predefined intervals and conditions.
conditions object[]
Conditions that the timestamps need to meet in order to be considered.
Possible values: [OPERATOR_UNSPECIFIED
, OPERATOR_EQUALS
, OPERATOR_GREATER_THAN
, OPERATOR_GREATER_THAN_OR_EQUAL
, OPERATOR_LESS_THAN
, OPERATOR_LESS_THAN_OR_EQUAL
]
Default value: OPERATOR_UNSPECIFIED
Type of comparison to make on the value.
Value to be compared with by the operator.
triggers object[]
Repeat the trigger every n seconds after the initial. If no time for initial was specified, begin repeating immediately.
Trigger when the vega time is greater or equal to this time, in Unix seconds.
Hash generated from the DataSpec data.
Possible values: [STATUS_UNSPECIFIED
, STATUS_ACTIVE
, STATUS_DEACTIVATED
]
Default value: STATUS_UNSPECIFIED
Quote name of the instrument.
Underlying asset for the future.
Unique instrument ID.
metadata object
Collection of instrument meta-data.
List of 0 or more tags.
Name of the instrument.
perpetual object
Perpetual.
Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].
Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].
dataSourceSpecBinding object
Binding between the data source spec and the settlement data.
Name of the property in the source data that should be used for settlement data. If it is set to "prices.BTC.value" for example, then the perpetual market will use the value of this property to get settlement data.
Name of the property in the source data that should be used to determine the perpetual's settlement schedule.
dataSourceSpecForSettlementData object
Data source spec describing the data source for settlement.
data object
Represents the top level object that handles data sources. Data source definition can be external or internal, with whatever number of data sources are defined for each type in the child objects below.
external object
DataSourceDefinitionExternal is the top level object used for all external
data sources. It contains one of any of the defined SourceType
variants.
ethOracle object
Contains the data specification that is received from Ethereum sources.
The ABI of that contract.
Ethereum address of the contract to call.
List of arguments to pass to method call. Protobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum type according to the ABI.
filters object[]
conditions object[]
Conditions that should be matched by the data to be considered of interest.
Possible values: [OPERATOR_UNSPECIFIED
, OPERATOR_EQUALS
, OPERATOR_GREATER_THAN
, OPERATOR_GREATER_THAN_OR_EQUAL
, OPERATOR_LESS_THAN
, OPERATOR_LESS_THAN_OR_EQUAL
]
Default value: OPERATOR_UNSPECIFIED
Type of comparison to make on the value.
Value to be compared with by the operator.
key object
Data source's data property key targeted by the filter.
Name of the property.
Possible values: [TYPE_UNSPECIFIED
, TYPE_EMPTY
, TYPE_INTEGER
, TYPE_STRING
, TYPE_BOOLEAN
, TYPE_DECIMAL
, TYPE_TIMESTAMP
]
Default value: TYPE_UNSPECIFIED
Data type of the property.
Name of the method on the contract to call.
normalisers object[]
Normalisers are used to convert the data returned from the contract method into a standard format. The key of the map is the name of the property, which identifies the specific piece of data to other parts of the data sourcing framework, for example filters. The value is a JSONPath expression for expressing where in the contract call result the required data is located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists.
The ID of the EVM based chain which is to be used to source the oracle data.
trigger object
Conditions for determining when to call the contract method.
timeTrigger object
Trigger for an Ethereum call based on the Ethereum block timestamp. Can be one-off or repeating.
Repeat the call every n seconds after the initial call. If no time for initial call was specified, begin repeating immediately.
Trigger when the Ethereum time is greater or equal to this time, in Unix seconds.
If repeating, stop once Ethereum time is greater than this time, in Unix seconds. If not set, then repeat indefinitely.
oracle object
All types of external data sources use the same configuration set for meeting requirements in order for the data to be useful for Vega - valid signatures and matching filters.
filters object[]
Filters describes which source data are considered of interest or not for the product (or the risk model).
conditions object[]
Conditions that should be matched by the data to be considered of interest.
Possible values: [OPERATOR_UNSPECIFIED
, OPERATOR_EQUALS
, OPERATOR_GREATER_THAN
, OPERATOR_GREATER_THAN_OR_EQUAL
, OPERATOR_LESS_THAN
, OPERATOR_LESS_THAN_OR_EQUAL
]
Default value: OPERATOR_UNSPECIFIED
Type of comparison to make on the value.
Value to be compared with by the operator.
key object
Data source's data property key targeted by the filter.
Name of the property.
Possible values: [TYPE_UNSPECIFIED
, TYPE_EMPTY
, TYPE_INTEGER
, TYPE_STRING
, TYPE_BOOLEAN
, TYPE_DECIMAL
, TYPE_TIMESTAMP
]
Default value: TYPE_UNSPECIFIED
Data type of the property.
signers object[]
Signers is the list of authorized signatures that signed the data for this source. All the signatures in the data source data should be contained in this external source. All the signatures in the data should be contained in this list.
ethAddress object
In case of an open oracle - Ethereum address will be submitted.
pubKey object
List of authorized public keys that signed the data for this source. All the public keys in the data should be contained in these public keys.
internal object
Top level object used for all internal data sources. It contains one of any of the defined source type variants.
time object
Internal data source used for emitting timestamps.
conditions object[]
Conditions that the timestamps should meet in order to be considered.
Possible values: [OPERATOR_UNSPECIFIED
, OPERATOR_EQUALS
, OPERATOR_GREATER_THAN
, OPERATOR_GREATER_THAN_OR_EQUAL
, OPERATOR_LESS_THAN
, OPERATOR_LESS_THAN_OR_EQUAL
]
Default value: OPERATOR_UNSPECIFIED
Type of comparison to make on the value.
Value to be compared with by the operator.
timeTrigger object
Internal data source used for emitting timestamps automatically using predefined intervals and conditions.
conditions object[]
Conditions that the timestamps need to meet in order to be considered.
Possible values: [OPERATOR_UNSPECIFIED
, OPERATOR_EQUALS
, OPERATOR_GREATER_THAN
, OPERATOR_GREATER_THAN_OR_EQUAL
, OPERATOR_LESS_THAN
, OPERATOR_LESS_THAN_OR_EQUAL
]
Default value: OPERATOR_UNSPECIFIED
Type of comparison to make on the value.
Value to be compared with by the operator.
triggers object[]
Repeat the trigger every n seconds after the initial. If no time for initial was specified, begin repeating immediately.
Trigger when the vega time is greater or equal to this time, in Unix seconds.
Hash generated from the DataSpec data.
Possible values: [STATUS_UNSPECIFIED
, STATUS_ACTIVE
, STATUS_DEACTIVATED
]
Default value: STATUS_UNSPECIFIED
dataSourceSpecForSettlementSchedule object
Data source spec describing the data source for settlement schedule.
data object
Represents the top level object that handles data sources. Data source definition can be external or internal, with whatever number of data sources are defined for each type in the child objects below.
external object
DataSourceDefinitionExternal is the top level object used for all external
data sources. It contains one of any of the defined SourceType
variants.
ethOracle object
Contains the data specification that is received from Ethereum sources.
The ABI of that contract.
Ethereum address of the contract to call.
List of arguments to pass to method call. Protobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum type according to the ABI.
filters object[]
conditions object[]
Conditions that should be matched by the data to be considered of interest.
Possible values: [OPERATOR_UNSPECIFIED
, OPERATOR_EQUALS
, OPERATOR_GREATER_THAN
, OPERATOR_GREATER_THAN_OR_EQUAL
, OPERATOR_LESS_THAN
, OPERATOR_LESS_THAN_OR_EQUAL
]
Default value: OPERATOR_UNSPECIFIED
Type of comparison to make on the value.
Value to be compared with by the operator.
key object
Data source's data property key targeted by the filter.
Name of the property.
Possible values: [TYPE_UNSPECIFIED
, TYPE_EMPTY
, TYPE_INTEGER
, TYPE_STRING
, TYPE_BOOLEAN
, TYPE_DECIMAL
, TYPE_TIMESTAMP
]
Default value: TYPE_UNSPECIFIED
Data type of the property.
Name of the method on the contract to call.
normalisers object[]
Normalisers are used to convert the data returned from the contract method into a standard format. The key of the map is the name of the property, which identifies the specific piece of data to other parts of the data sourcing framework, for example filters. The value is a JSONPath expression for expressing where in the contract call result the required data is located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists.
The ID of the EVM based chain which is to be used to source the oracle data.
trigger object
Conditions for determining when to call the contract method.
timeTrigger object
Trigger for an Ethereum call based on the Ethereum block timestamp. Can be one-off or repeating.
Repeat the call every n seconds after the initial call. If no time for initial call was specified, begin repeating immediately.
Trigger when the Ethereum time is greater or equal to this time, in Unix seconds.
If repeating, stop once Ethereum time is greater than this time, in Unix seconds. If not set, then repeat indefinitely.
oracle object
All types of external data sources use the same configuration set for meeting requirements in order for the data to be useful for Vega - valid signatures and matching filters.
filters object[]
Filters describes which source data are considered of interest or not for the product (or the risk model).
conditions object[]
Conditions that should be matched by the data to be considered of interest.
Possible values: [OPERATOR_UNSPECIFIED
, OPERATOR_EQUALS
, OPERATOR_GREATER_THAN
, OPERATOR_GREATER_THAN_OR_EQUAL
, OPERATOR_LESS_THAN
, OPERATOR_LESS_THAN_OR_EQUAL
]
Default value: OPERATOR_UNSPECIFIED
Type of comparison to make on the value.
Value to be compared with by the operator.
key object
Data source's data property key targeted by the filter.
Name of the property.
Possible values: [TYPE_UNSPECIFIED
, TYPE_EMPTY
, TYPE_INTEGER
, TYPE_STRING
, TYPE_BOOLEAN
, TYPE_DECIMAL
, TYPE_TIMESTAMP
]
Default value: TYPE_UNSPECIFIED
Data type of the property.
signers object[]
Signers is the list of authorized signatures that signed the data for this source. All the signatures in the data source data should be contained in this external source. All the signatures in the data should be contained in this list.
ethAddress object
In case of an open oracle - Ethereum address will be submitted.
pubKey object
List of authorized public keys that signed the data for this source. All the public keys in the data should be contained in these public keys.
internal object
Top level object used for all internal data sources. It contains one of any of the defined source type variants.
time object
Internal data source used for emitting timestamps.
conditions object[]
Conditions that the timestamps should meet in order to be considered.
Possible values: [OPERATOR_UNSPECIFIED
, OPERATOR_EQUALS
, OPERATOR_GREATER_THAN
, OPERATOR_GREATER_THAN_OR_EQUAL
, OPERATOR_LESS_THAN
, OPERATOR_LESS_THAN_OR_EQUAL
]
Default value: OPERATOR_UNSPECIFIED
Type of comparison to make on the value.
Value to be compared with by the operator.
timeTrigger object
Internal data source used for emitting timestamps automatically using predefined intervals and conditions.
conditions object[]
Conditions that the timestamps need to meet in order to be considered.
Possible values: [OPERATOR_UNSPECIFIED
, OPERATOR_EQUALS
, OPERATOR_GREATER_THAN
, OPERATOR_GREATER_THAN_OR_EQUAL
, OPERATOR_LESS_THAN
, OPERATOR_LESS_THAN_OR_EQUAL
]
Default value: OPERATOR_UNSPECIFIED
Type of comparison to make on the value.
Value to be compared with by the operator.
triggers object[]
Repeat the trigger every n seconds after the initial. If no time for initial was specified, begin repeating immediately.
Trigger when the vega time is greater or equal to this time, in Unix seconds.
Hash generated from the DataSpec data.
Possible values: [STATUS_UNSPECIFIED
, STATUS_ACTIVE
, STATUS_DEACTIVATED
]
Default value: STATUS_UNSPECIFIED
Lower bound for the funding-rate such that the funding-rate will never be lower than this value.
Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.
Upper bound for the funding-rate such that the funding-rate will never be higher than this value.
Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].
internalCompositePriceConfig object
Optional configuration for the internal composite price used in funding payment calculation.
Cash amount, in asset decimals, used for the calculation of the mark price from the order book.
Possible values: [COMPOSITE_PRICE_TYPE_UNSPECIFIED
, COMPOSITE_PRICE_TYPE_WEIGHTED
, COMPOSITE_PRICE_TYPE_MEDIAN
, COMPOSITE_PRICE_TYPE_LAST_TRADE
]
Default value: COMPOSITE_PRICE_TYPE_UNSPECIFIED
Which method is used for the calculation of the composite price for the market.
dataSourcesSpec object[]
Additional price sources to be used for internal composite price calculation.
external object
DataSourceDefinitionExternal is the top level object used for all external
data sources. It contains one of any of the defined SourceType
variants.
ethOracle object
Contains the data specification that is received from Ethereum sources.
The ABI of that contract.
Ethereum address of the contract to call.
List of arguments to pass to method call. Protobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum type according to the ABI.
filters object[]
conditions object[]
Conditions that should be matched by the data to be considered of interest.
Possible values: [OPERATOR_UNSPECIFIED
, OPERATOR_EQUALS
, OPERATOR_GREATER_THAN
, OPERATOR_GREATER_THAN_OR_EQUAL
, OPERATOR_LESS_THAN
, OPERATOR_LESS_THAN_OR_EQUAL
]
Default value: OPERATOR_UNSPECIFIED
Type of comparison to make on the value.
Value to be compared with by the operator.
key object
Data source's data property key targeted by the filter.
Name of the property.
Possible values: [TYPE_UNSPECIFIED
, TYPE_EMPTY
, TYPE_INTEGER
, TYPE_STRING
, TYPE_BOOLEAN
, TYPE_DECIMAL
, TYPE_TIMESTAMP
]
Default value: TYPE_UNSPECIFIED
Data type of the property.
Name of the method on the contract to call.
normalisers object[]
Normalisers are used to convert the data returned from the contract method into a standard format. The key of the map is the name of the property, which identifies the specific piece of data to other parts of the data sourcing framework, for example filters. The value is a JSONPath expression for expressing where in the contract call result the required data is located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists.
The ID of the EVM based chain which is to be used to source the oracle data.
trigger object
Conditions for determining when to call the contract method.
timeTrigger object
Trigger for an Ethereum call based on the Ethereum block timestamp. Can be one-off or repeating.
Repeat the call every n seconds after the initial call. If no time for initial call was specified, begin repeating immediately.
Trigger when the Ethereum time is greater or equal to this time, in Unix seconds.
If repeating, stop once Ethereum time is greater than this time, in Unix seconds. If not set, then repeat indefinitely.
oracle object
All types of external data sources use the same configuration set for meeting requirements in order for the data to be useful for Vega - valid signatures and matching filters.
filters object[]
Filters describes which source data are considered of interest or not for the product (or the risk model).
conditions object[]
Conditions that should be matched by the data to be considered of interest.
Possible values: [OPERATOR_UNSPECIFIED
, OPERATOR_EQUALS
, OPERATOR_GREATER_THAN
, OPERATOR_GREATER_THAN_OR_EQUAL
, OPERATOR_LESS_THAN
, OPERATOR_LESS_THAN_OR_EQUAL
]
Default value: OPERATOR_UNSPECIFIED
Type of comparison to make on the value.
Value to be compared with by the operator.
key object
Data source's data property key targeted by the filter.
Name of the property.
Possible values: [TYPE_UNSPECIFIED
, TYPE_EMPTY
, TYPE_INTEGER
, TYPE_STRING
, TYPE_BOOLEAN
, TYPE_DECIMAL
, TYPE_TIMESTAMP
]
Default value: TYPE_UNSPECIFIED
Data type of the property.
signers object[]
Signers is the list of authorized signatures that signed the data for this source. All the signatures in the data source data should be contained in this external source. All the signatures in the data should be contained in this list.
ethAddress object
In case of an open oracle - Ethereum address will be submitted.
pubKey object
List of authorized public keys that signed the data for this source. All the public keys in the data should be contained in these public keys.
internal object
Top level object used for all internal data sources. It contains one of any of the defined source type variants.
time object
Internal data source used for emitting timestamps.
conditions object[]
Conditions that the timestamps should meet in order to be considered.
Possible values: [OPERATOR_UNSPECIFIED
, OPERATOR_EQUALS
, OPERATOR_GREATER_THAN
, OPERATOR_GREATER_THAN_OR_EQUAL
, OPERATOR_LESS_THAN
, OPERATOR_LESS_THAN_OR_EQUAL
]
Default value: OPERATOR_UNSPECIFIED
Type of comparison to make on the value.
Value to be compared with by the operator.
timeTrigger object
Internal data source used for emitting timestamps automatically using predefined intervals and conditions.
conditions object[]
Conditions that the timestamps need to meet in order to be considered.
Possible values: [OPERATOR_UNSPECIFIED
, OPERATOR_EQUALS
, OPERATOR_GREATER_THAN
, OPERATOR_GREATER_THAN_OR_EQUAL
, OPERATOR_LESS_THAN
, OPERATOR_LESS_THAN_OR_EQUAL
]
Default value: OPERATOR_UNSPECIFIED
Type of comparison to make on the value.
Value to be compared with by the operator.
triggers object[]
Repeat the trigger every n seconds after the initial. If no time for initial was specified, begin repeating immediately.
Trigger when the vega time is greater or equal to this time, in Unix seconds.
dataSourcesSpecBinding object[]
The property name of price.
Decay power used for the calculation of mark price.
Decay weight used for calculation of mark price.
For how long a price source is considered valid. One entry for each data source such that the first is for the trade based mark price, the second is for the book based price the third is for the first oracle, followed by more oracle data source staleness tolerance.
Weights for each composite price data source.
Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].
Quote name of the instrument.
Underlying asset for the perpetual.
spot object
Spot.
Asset ID of the underlying base asset for the spot product.
Asset ID of the underlying quote asset for the spot product.
logNormalRiskModel object
Log normal.
params object
Risk model parameters for log normal.
Mu parameter, annualised growth rate of the underlying asset.
R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.
Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.
Risk Aversion Parameter.
riskFactorOverride object
And optional override for the risk factor calculated by the risk model.
Long Risk factor value.
Short Risk factor value.
Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall calculation to obtain the maintenance margin, must be a strictly non-negative real number.
marginCalculator object
Margin calculator for the instrument.
If set to true, positions must be fully collateralised so there is no default risk for any party (capped futures).
scalingFactors object
Scaling factors for margin calculation.
Collateral release level. If a trader has collateral above this level, the system will release collateral to a trader's general collateral account for the asset.
Initial margin level. This is the minimum amount of collateral required to open a position in a market that requires margin.
Collateral search level. If collateral dips below this value, the system will search for collateral to release.
simpleRiskModel object
Simple.
params object
Risk model params for simple modelling.
Pre-defined risk factor value for long.
Pre-defined risk factor value for short.
Pre-defined maximum price move up that the model considers as valid.
Pre-defined minimum price move down that the model considers as valid.
Pre-defined constant probability of trading.
Possible values: [TRADING_MODE_UNSPECIFIED
, TRADING_MODE_CONTINUOUS
, TRADING_MODE_BATCH_AUCTION
, TRADING_MODE_OPENING_AUCTION
, TRADING_MODE_MONITORING_AUCTION
, TRADING_MODE_NO_TRADING
, TRADING_MODE_SUSPENDED_VIA_GOVERNANCE
, TRADING_MODE_LONG_BLOCK_AUCTION
]
Default value: TRADING_MODE_UNSPECIFIED
Current mode of execution of the market.
networkLimits object
Are asset proposals allowed at this point in time.
Are market proposals allowed at this point in time.
Are perpetual market proposals allowed at this point in time.
Are spot market proposals allowed at this point in time.
Can parties use AMM related transactions.
True once the genesis file is loaded.
Are asset proposals enabled on this chain.
Timestamp in Unix nanoseconds at which asset proposals will be enabled (0 indicates not set).
Are market proposals enabled on this chain.
Timestamp in Unix nanoseconds at which market proposals will be enabled (0 indicates not set).
networkParameter object
Unique key of the network parameter.
Value for the network parameter.
nodeSignature object
A validator command sent automatically containing a signature that can be used on a foreign chain to process an action.
ID of the resource that the signature relates to.
Possible values: [NODE_SIGNATURE_KIND_UNSPECIFIED
, NODE_SIGNATURE_KIND_ASSET_NEW
, NODE_SIGNATURE_KIND_ASSET_WITHDRAWAL
, NODE_SIGNATURE_KIND_ERC20_MULTISIG_SIGNER_ADDED
, NODE_SIGNATURE_KIND_ERC20_MULTISIG_SIGNER_REMOVED
, NODE_SIGNATURE_KIND_ASSET_UPDATE
]
Default value: NODE_SIGNATURE_KIND_UNSPECIFIED
Kind of resource being signed.
Signature generated by the node.
oracleData object
externalData object
data object
Data describes valid source data that has been received by the node. It represents both matched and unmatched data.
Timestamp in Unix nanoseconds for when the data was broadcast to the markets with a matching spec. It has no value when the data did not match any spec.
data object[]
Name of the property.
Value of the property.
Error message if the data could not be sourced.
matched_specs_ids
lists all the specs that matched this data.
When the array is empty, it means no spec matched this data.
metaData object[]
Name of the property.
Value of the property.
signers object[]
ethAddress object
In case of an open oracle - Ethereum address will be submitted.
pubKey object
List of authorized public keys that signed the data for this source. All the public keys in the data should be contained in these public keys.
oracleSpec object
externalDataSourceSpec object
spec object
Data source spec describes the data source base that a product or a risk model wants to get from the data source engine. This message contains additional information used by the API.
data object
Represents the top level object that handles data sources. Data source definition can be external or internal, with whatever number of data sources are defined for each type in the child objects below.
external object
DataSourceDefinitionExternal is the top level object used for all external
data sources. It contains one of any of the defined SourceType
variants.
ethOracle object
Contains the data specification that is received from Ethereum sources.
The ABI of that contract.
Ethereum address of the contract to call.
List of arguments to pass to method call. Protobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum type according to the ABI.
filters object[]
conditions object[]
Conditions that should be matched by the data to be considered of interest.
Possible values: [OPERATOR_UNSPECIFIED
, OPERATOR_EQUALS
, OPERATOR_GREATER_THAN
, OPERATOR_GREATER_THAN_OR_EQUAL
, OPERATOR_LESS_THAN
, OPERATOR_LESS_THAN_OR_EQUAL
]
Default value: OPERATOR_UNSPECIFIED
Type of comparison to make on the value.
Value to be compared with by the operator.
key object
Data source's data property key targeted by the filter.
Name of the property.
Possible values: [TYPE_UNSPECIFIED
, TYPE_EMPTY
, TYPE_INTEGER
, TYPE_STRING
, TYPE_BOOLEAN
, TYPE_DECIMAL
, TYPE_TIMESTAMP
]
Default value: TYPE_UNSPECIFIED
Data type of the property.
Name of the method on the contract to call.
normalisers object[]
Normalisers are used to convert the data returned from the contract method into a standard format. The key of the map is the name of the property, which identifies the specific piece of data to other parts of the data sourcing framework, for example filters. The value is a JSONPath expression for expressing where in the contract call result the required data is located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists.
The ID of the EVM based chain which is to be used to source the oracle data.
trigger object
Conditions for determining when to call the contract method.
timeTrigger object
Trigger for an Ethereum call based on the Ethereum block timestamp. Can be one-off or repeating.
Repeat the call every n seconds after the initial call. If no time for initial call was specified, begin repeating immediately.
Trigger when the Ethereum time is greater or equal to this time, in Unix seconds.
If repeating, stop once Ethereum time is greater than this time, in Unix seconds. If not set, then repeat indefinitely.
oracle object
All types of external data sources use the same configuration set for meeting requirements in order for the data to be useful for Vega - valid signatures and matching filters.
filters object[]
Filters describes which source data are considered of interest or not for the product (or the risk model).
conditions object[]
Conditions that should be matched by the data to be considered of interest.
Possible values: [OPERATOR_UNSPECIFIED
, OPERATOR_EQUALS
, OPERATOR_GREATER_THAN
, OPERATOR_GREATER_THAN_OR_EQUAL
, OPERATOR_LESS_THAN
, OPERATOR_LESS_THAN_OR_EQUAL
]
Default value: OPERATOR_UNSPECIFIED
Type of comparison to make on the value.
Value to be compared with by the operator.
key object
Data source's data property key targeted by the filter.
Name of the property.
Possible values: [TYPE_UNSPECIFIED
, TYPE_EMPTY
, TYPE_INTEGER
, TYPE_STRING
, TYPE_BOOLEAN
, TYPE_DECIMAL
, TYPE_TIMESTAMP
]
Default value: TYPE_UNSPECIFIED
Data type of the property.
signers object[]
Signers is the list of authorized signatures that signed the data for this source. All the signatures in the data source data should be contained in this external source. All the signatures in the data should be contained in this list.
ethAddress object
In case of an open oracle - Ethereum address will be submitted.
pubKey object
List of authorized public keys that signed the data for this source. All the public keys in the data should be contained in these public keys.
internal object
Top level object used for all internal data sources. It contains one of any of the defined source type variants.
time object
Internal data source used for emitting timestamps.
conditions object[]
Conditions that the timestamps should meet in order to be considered.
Possible values: [OPERATOR_UNSPECIFIED
, OPERATOR_EQUALS
, OPERATOR_GREATER_THAN
, OPERATOR_GREATER_THAN_OR_EQUAL
, OPERATOR_LESS_THAN
, OPERATOR_LESS_THAN_OR_EQUAL
]
Default value: OPERATOR_UNSPECIFIED
Type of comparison to make on the value.
Value to be compared with by the operator.
timeTrigger object
Internal data source used for emitting timestamps automatically using predefined intervals and conditions.
conditions object[]
Conditions that the timestamps need to meet in order to be considered.
Possible values: [OPERATOR_UNSPECIFIED
, OPERATOR_EQUALS
, OPERATOR_GREATER_THAN
, OPERATOR_GREATER_THAN_OR_EQUAL
, OPERATOR_LESS_THAN
, OPERATOR_LESS_THAN_OR_EQUAL
]
Default value: OPERATOR_UNSPECIFIED
Type of comparison to make on the value.
Value to be compared with by the operator.
triggers object[]
Repeat the trigger every n seconds after the initial. If no time for initial was specified, begin repeating immediately.
Trigger when the vega time is greater or equal to this time, in Unix seconds.
Hash generated from the DataSpec data.
Possible values: [STATUS_UNSPECIFIED
, STATUS_ACTIVE
, STATUS_DEACTIVATED
]
Default value: STATUS_UNSPECIFIED
order object
Batch ID for the order, used internally for orders submitted during auctions to keep track of the auction batch this order falls under. Required for fees calculation.
Timestamp for when the order was created at, in nanoseconds.
Timestamp in Unix nanoseconds for when the order will expire.
icebergOrder object
If the visible size of the order falls below this value, it will be replenished back to the peak size using the reserved amount.
Size of the order that will be made visible if the iceberg order is replenished after trading.
Size of the order that is reserved and used to restore the iceberg's peak when it is refreshed.
Unique ID generated for the order.
Set if the order was created as part of a liquidity provision, will be empty if not.
Market ID for the order.
Party ID for the order.
peggedOrder object
Pegged order details, used only if the order represents a pegged order.
Offset from the price reference.
Possible values: [PEGGED_REFERENCE_UNSPECIFIED
, PEGGED_REFERENCE_MID
, PEGGED_REFERENCE_BEST_BID
, PEGGED_REFERENCE_BEST_ASK
]
Default value: PEGGED_REFERENCE_UNSPECIFIED
Price point the order is linked to.
Only valid for Limit orders. Cannot be True at the same time as Reduce-Only.
Price for the order, the price is an integer, for example 123456
is a correctly
formatted price of 1.23456
assuming market configured to 5 decimal places.
Possible values: [ORDER_ERROR_UNSPECIFIED
, ORDER_ERROR_INVALID_MARKET_ID
, ORDER_ERROR_INVALID_ORDER_ID
, ORDER_ERROR_OUT_OF_SEQUENCE
, ORDER_ERROR_INVALID_REMAINING_SIZE
, ORDER_ERROR_TIME_FAILURE
, ORDER_ERROR_REMOVAL_FAILURE
, ORDER_ERROR_INVALID_EXPIRATION_DATETIME
, ORDER_ERROR_INVALID_ORDER_REFERENCE
, ORDER_ERROR_EDIT_NOT_ALLOWED
, ORDER_ERROR_AMEND_FAILURE
, ORDER_ERROR_NOT_FOUND
, ORDER_ERROR_INVALID_PARTY_ID
, ORDER_ERROR_MARKET_CLOSED
, ORDER_ERROR_MARGIN_CHECK_FAILED
, ORDER_ERROR_MISSING_GENERAL_ACCOUNT
, ORDER_ERROR_INTERNAL_ERROR
, ORDER_ERROR_INVALID_SIZE
, ORDER_ERROR_INVALID_PERSISTENCE
, ORDER_ERROR_INVALID_TYPE
, ORDER_ERROR_SELF_TRADING
, ORDER_ERROR_INSUFFICIENT_FUNDS_TO_PAY_FEES
, ORDER_ERROR_INCORRECT_MARKET_TYPE
, ORDER_ERROR_INVALID_TIME_IN_FORCE
, ORDER_ERROR_CANNOT_SEND_GFN_ORDER_DURING_AN_AUCTION
, ORDER_ERROR_CANNOT_SEND_GFA_ORDER_DURING_CONTINUOUS_TRADING
, ORDER_ERROR_CANNOT_AMEND_TO_GTT_WITHOUT_EXPIRYAT
, ORDER_ERROR_EXPIRYAT_BEFORE_CREATEDAT
, ORDER_ERROR_CANNOT_HAVE_GTC_AND_EXPIRYAT
, ORDER_ERROR_CANNOT_AMEND_TO_FOK_OR_IOC
, ORDER_ERROR_CANNOT_AMEND_TO_GFA_OR_GFN
, ORDER_ERROR_CANNOT_AMEND_FROM_GFA_OR_GFN
, ORDER_ERROR_CANNOT_SEND_IOC_ORDER_DURING_AUCTION
, ORDER_ERROR_CANNOT_SEND_FOK_ORDER_DURING_AUCTION
, ORDER_ERROR_MUST_BE_LIMIT_ORDER
, ORDER_ERROR_MUST_BE_GTT_OR_GTC
, ORDER_ERROR_WITHOUT_REFERENCE_PRICE
, ORDER_ERROR_BUY_CANNOT_REFERENCE_BEST_ASK_PRICE
, ORDER_ERROR_OFFSET_MUST_BE_GREATER_OR_EQUAL_TO_ZERO
, ORDER_ERROR_SELL_CANNOT_REFERENCE_BEST_BID_PRICE
, ORDER_ERROR_OFFSET_MUST_BE_GREATER_THAN_ZERO
, ORDER_ERROR_INSUFFICIENT_ASSET_BALANCE
, ORDER_ERROR_CANNOT_AMEND_PEGGED_ORDER_DETAILS_ON_NON_PEGGED_ORDER
, ORDER_ERROR_UNABLE_TO_REPRICE_PEGGED_ORDER
, ORDER_ERROR_UNABLE_TO_AMEND_PRICE_ON_PEGGED_ORDER
, ORDER_ERROR_NON_PERSISTENT_ORDER_OUT_OF_PRICE_BOUNDS
, ORDER_ERROR_TOO_MANY_PEGGED_ORDERS
, ORDER_ERROR_POST_ONLY_ORDER_WOULD_TRADE
, ORDER_ERROR_REDUCE_ONLY_ORDER_WOULD_NOT_REDUCE_POSITION
, ORDER_ERROR_ISOLATED_MARGIN_CHECK_FAILED
, ORDER_ERROR_PEGGED_ORDERS_NOT_ALLOWED_IN_ISOLATED_MARGIN_MODE
, ORDER_ERROR_PRICE_NOT_IN_TICK_SIZE
, ORDER_ERROR_PRICE_MUST_BE_LESS_THAN_OR_EQUAL_TO_MAX_PRICE
]
Default value: ORDER_ERROR_UNSPECIFIED
Futher details for why an order with status STATUS_REJECTED
was rejected.
Only valid for Non-Persistent orders. Cannot be True at the same time as Post-Only. If set, order will only be executed if the outcome of the trade moves the trader's position closer to 0.
Reference given for the order.
Size remaining, when this reaches 0 then the order is fully filled and status becomes STATUS_FILLED.
Possible values: [SIDE_UNSPECIFIED
, SIDE_BUY
, SIDE_SELL
]
Default value: SIDE_UNSPECIFIED
Side for the order, e.g. SIDE_BUY or SIDE_SELL.
Size for the order, for example, in a futures market the size equals the number of contracts.
Possible values: [STATUS_UNSPECIFIED
, STATUS_ACTIVE
, STATUS_EXPIRED
, STATUS_CANCELLED
, STATUS_STOPPED
, STATUS_FILLED
, STATUS_REJECTED
, STATUS_PARTIALLY_FILLED
, STATUS_PARKED
]
Default value: STATUS_UNSPECIFIED
Current status of the order.
Possible values: [TIME_IN_FORCE_UNSPECIFIED
, TIME_IN_FORCE_GTC
, TIME_IN_FORCE_GTT
, TIME_IN_FORCE_IOC
, TIME_IN_FORCE_FOK
, TIME_IN_FORCE_GFA
, TIME_IN_FORCE_GFN
]
Default value: TIME_IN_FORCE_UNSPECIFIED
Possible values: [TYPE_UNSPECIFIED
, TYPE_LIMIT
, TYPE_MARKET
, TYPE_NETWORK
]
Default value: TYPE_UNSPECIFIED
Type for the order.
Timestamp in Unix nanoseconds for when the order was last updated.
Version for the order, initial value is version 1 and is incremented after each successful amend.
paidLiquidityFeesStats object
Event notifying of an update to the liqudity fees stats for a market.
Settlement asset of the market.
Epoch for which these stats where valid.
feesPaidPerParty object[]
Fees paid per party.
Amount received.
Receiving party ID.
Amount value in quantum.
Market the fees were paid in.
Total fees paid across all parties.
party object
Alias given to the party.
Unique ID for the party, typically represented by a public key.
metadata object[]
Metadata to associate to a party, in a key/value format where the key describes the type of metadata in the value field.
Key of the metadata.
Value of the metadata.
partyActivityStreak object
How many epoch this party has been active for.
The epoch this information is relevant to.
how many epoch this party has been inactive for.
Is this party considered active or not.
The party.
The current rewards distribution multiplier for this party.
The vesting multiplier for this party.
partyMarginModeUpdated object
Event notifying of a party's margin mode update on a market.
Epoch at which the update happened.
Margin factor for the market. Isolated mode only.
Possible values: [MARGIN_MODE_UNSPECIFIED
, MARGIN_MODE_CROSS_MARGIN
, MARGIN_MODE_ISOLATED_MARGIN
]
Default value: MARGIN_MODE_UNSPECIFIED
Updated margin mode.
Unique ID of the market in which the update happened.
Maximum theoretical leverage for the market. Isolated mode only.
Minimum theoretical margin factor for the market. Isolated mode only.
Unique ID of the party that updated their margin mode.
partyProfileUpdated object
Event notifying of a party's profile update.
updatedProfile object
Party's profile updated.
Alias given to the party.
Derived keys for the party.
metadata object[]
Metadata to associate to a party, in a key/value format where the key describes the type of metadata in the value field.
Key of the metadata.
Value of the metadata.
Party ID associated to the profile.
positionResolution object
positionStateEvent object
proposal object
ID of a batch proposal that this proposal is part of.
batchTerms object
Batch proposal terms.
changes object[]
List of individual changes included in the batch proposal.
cancelTransfer object
Proposal change to cancel a governance initiated transfe.
changes object
ID of the governance transfer proposal.
Timestamp as Unix time in seconds when proposal terms gets enacted if proposal passed the vote,
constrained by minEnact
and maxEnact
network parameters.
newAsset object
Proposal change for adding a new asset.
changes object
Configuration of the new asset.
builtinAsset object
Vega built-in asset.
Maximum amount that can be requested by a party through the built-in asset faucet at a time.
Number of decimal / precision handled by this asset.
erc20 object
Ethereum ERC20 asset.
Chain ID the asset originated from.
Address of the contract for the token, on the ethereum network.
Lifetime limits deposit per address note: this is a temporary measure that can be changed by governance.
Maximum you can withdraw instantly. All withdrawals over the threshold will be delayed by the withdrawal delay. There’s no limit on the size of a withdrawal note: this is a temporary measure that can be changed by governance.
Name of the asset (e.g: Great British Pound).
Minimum economically meaningful amount in the asset.
Symbol of the asset (e.g: GBP).
Proposal change for a freeform request, which can be voted on but does not change the behaviour of the system, and can be used to gauge community sentiment.
newMarket object
Proposal change for creating new futures market.
changes object
Configuration of the new market.
Decimal places used for the new futures market, sets the smallest price increment on the book.
instrument object
New futures market instrument configuration.
Instrument code, human-readable shortcode used to describe the instrument.
future object
Future.
cap object
If set, this product creates a capped future market.
If set to true, the settlement price must either be zero, or equal to the max price.
If set to true, positions must be fully collateralised so there is no default risk for any party.
Set the maximum price for orders, and settlement data in market decimals.
dataSourceSpecBinding object
Binding between the data source spec and the settlement data.
Name of the property in the source data that should be used as settlement data. If it is set to "prices.BTC.value", then the Future will use the value of this property as settlement data.
Name of the property in the data source data that signals termination of trading.
dataSourceSpecForSettlementData object
Represents the top level object that handles data sources. Data source definition can be external or internal, with whatever number of data sources are defined for each type in the child objects below.
external object
DataSourceDefinitionExternal is the top level object used for all external
data sources. It contains one of any of the defined SourceType
variants.
ethOracle object
Contains the data specification that is received from Ethereum sources.
The ABI of that contract.
Ethereum address of the contract to call.
List of arguments to pass to method call. Protobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum type according to the ABI.
filters object[]
conditions object[]
Conditions that should be matched by the data to be considered of interest.
Possible values: [OPERATOR_UNSPECIFIED
, OPERATOR_EQUALS
, OPERATOR_GREATER_THAN
, OPERATOR_GREATER_THAN_OR_EQUAL
, OPERATOR_LESS_THAN
, OPERATOR_LESS_THAN_OR_EQUAL
]
Default value: OPERATOR_UNSPECIFIED
Type of comparison to make on the value.
Value to be compared with by the operator.
key object
Data source's data property key targeted by the filter.
Name of the property.
Possible values: [TYPE_UNSPECIFIED
, TYPE_EMPTY
, TYPE_INTEGER
, TYPE_STRING
, TYPE_BOOLEAN
, TYPE_DECIMAL
, TYPE_TIMESTAMP
]
Default value: TYPE_UNSPECIFIED
Data type of the property.
Name of the method on the contract to call.
normalisers object[]
Normalisers are used to convert the data returned from the contract method into a standard format. The key of the map is the name of the property, which identifies the specific piece of data to other parts of the data sourcing framework, for example filters. The value is a JSONPath expression for expressing where in the contract call result the required data is located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists.
The ID of the EVM based chain which is to be used to source the oracle data.
trigger object
Conditions for determining when to call the contract method.
timeTrigger object
Trigger for an Ethereum call based on the Ethereum block timestamp. Can be one-off or repeating.
Repeat the call every n seconds after the initial call. If no time for initial call was specified, begin repeating immediately.
Trigger when the Ethereum time is greater or equal to this time, in Unix seconds.
If repeating, stop once Ethereum time is greater than this time, in Unix seconds. If not set, then repeat indefinitely.
oracle object
All types of external data sources use the same configuration set for meeting requirements in order for the data to be useful for Vega - valid signatures and matching filters.
filters object[]
Filters describes which source data are considered of interest or not for the product (or the risk model).
conditions object[]
Conditions that should be matched by the data to be considered of interest.
Possible values: [OPERATOR_UNSPECIFIED
, OPERATOR_EQUALS
, OPERATOR_GREATER_THAN
, OPERATOR_GREATER_THAN_OR_EQUAL
, OPERATOR_LESS_THAN
, OPERATOR_LESS_THAN_OR_EQUAL
]
Default value: OPERATOR_UNSPECIFIED
Type of comparison to make on the value.
Value to be compared with by the operator.
key object
Data source's data property key targeted by the filter.
Name of the property.
Possible values: [TYPE_UNSPECIFIED
, TYPE_EMPTY
, TYPE_INTEGER
, TYPE_STRING
, TYPE_BOOLEAN
, TYPE_DECIMAL
, TYPE_TIMESTAMP
]
Default value: TYPE_UNSPECIFIED
Data type of the property.
signers object[]
Signers is the list of authorized signatures that signed the data for this source. All the signatures in the data source data should be contained in this external source. All the signatures in the data should be contained in this list.
ethAddress object
In case of an open oracle - Ethereum address will be submitted.
pubKey object
List of authorized public keys that signed the data for this source. All the public keys in the data should be contained in these public keys.
internal object
Top level object used for all internal data sources. It contains one of any of the defined source type variants.
time object
Internal data source used for emitting timestamps.
conditions object[]
Conditions that the timestamps should meet in order to be considered.
Possible values: [OPERATOR_UNSPECIFIED
, OPERATOR_EQUALS
, OPERATOR_GREATER_THAN
, OPERATOR_GREATER_THAN_OR_EQUAL
, OPERATOR_LESS_THAN
, OPERATOR_LESS_THAN_OR_EQUAL
]
Default value: OPERATOR_UNSPECIFIED
Type of comparison to make on the value.
Value to be compared with by the operator.
timeTrigger object
Internal data source used for emitting timestamps automatically using predefined intervals and conditions.
conditions object[]
Conditions that the timestamps need to meet in order to be considered.
Possible values: [OPERATOR_UNSPECIFIED
, OPERATOR_EQUALS
, OPERATOR_GREATER_THAN
, OPERATOR_GREATER_THAN_OR_EQUAL
, OPERATOR_LESS_THAN
, OPERATOR_LESS_THAN_OR_EQUAL
]
Default value: OPERATOR_UNSPECIFIED
Type of comparison to make on the value.
Value to be compared with by the operator.
triggers object[]
Repeat the trigger every n seconds after the initial. If no time for initial was specified, begin repeating immediately.
Trigger when the vega time is greater or equal to this time, in Unix seconds.
dataSourceSpecForTradingTermination object
Represents the top level object that handles data sources. Data source definition can be external or internal, with whatever number of data sources are defined for each type in the child objects below.
external object
DataSourceDefinitionExternal is the top level object used for all external
data sources. It contains one of any of the defined SourceType
variants.
ethOracle object
Contains the data specification that is received from Ethereum sources.
The ABI of that contract.
Ethereum address of the contract to call.
List of arguments to pass to method call. Protobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum type according to the ABI.
filters object[]
conditions object[]
Conditions that should be matched by the data to be considered of interest.
Possible values: [OPERATOR_UNSPECIFIED
, OPERATOR_EQUALS
, OPERATOR_GREATER_THAN
, OPERATOR_GREATER_THAN_OR_EQUAL
, OPERATOR_LESS_THAN
, OPERATOR_LESS_THAN_OR_EQUAL
]
Default value: OPERATOR_UNSPECIFIED
Type of comparison to make on the value.
Value to be compared with by the operator.
key object
Data source's data property key targeted by the filter.
Name of the property.
Possible values: [TYPE_UNSPECIFIED
, TYPE_EMPTY
, TYPE_INTEGER
, TYPE_STRING
, TYPE_BOOLEAN
, TYPE_DECIMAL
, TYPE_TIMESTAMP
]
Default value: TYPE_UNSPECIFIED
Data type of the property.
Name of the method on the contract to call.
normalisers object[]
Normalisers are used to convert the data returned from the contract method into a standard format. The key of the map is the name of the property, which identifies the specific piece of data to other parts of the data sourcing framework, for example filters. The value is a JSONPath expression for expressing where in the contract call result the required data is located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists.
The ID of the EVM based chain which is to be used to source the oracle data.
trigger object
Conditions for determining when to call the contract method.
timeTrigger object
Trigger for an Ethereum call based on the Ethereum block timestamp. Can be one-off or repeating.
Repeat the call every n seconds after the initial call. If no time for initial call was specified, begin repeating immediately.
Trigger when the Ethereum time is greater or equal to this time, in Unix seconds.
If repeating, stop once Ethereum time is greater than this time, in Unix seconds. If not set, then repeat indefinitely.
oracle object
All types of external data sources use the same configuration set for meeting requirements in order for the data to be useful for Vega - valid signatures and matching filters.
filters object[]
Filters describes which source data are considered of interest or not for the product (or the risk model).
conditions object[]
Conditions that should be matched by the data to be considered of interest.
Possible values: [OPERATOR_UNSPECIFIED
, OPERATOR_EQUALS
, OPERATOR_GREATER_THAN
, OPERATOR_GREATER_THAN_OR_EQUAL
, OPERATOR_LESS_THAN
, OPERATOR_LESS_THAN_OR_EQUAL
]
Default value: OPERATOR_UNSPECIFIED
Type of comparison to make on the value.
Value to be compared with by the operator.
key object
Data source's data property key targeted by the filter.
Name of the property.
Possible values: [TYPE_UNSPECIFIED
, TYPE_EMPTY
, TYPE_INTEGER
, TYPE_STRING
, TYPE_BOOLEAN
, TYPE_DECIMAL
, TYPE_TIMESTAMP
]
Default value: TYPE_UNSPECIFIED
Data type of the property.
signers object[]
Signers is the list of authorized signatures that signed the data for this source. All the signatures in the data source data should be contained in this external source. All the signatures in the data should be contained in this list.
ethAddress object
In case of an open oracle - Ethereum address will be submitted.
pubKey object
List of authorized public keys that signed the data for this source. All the public keys in the data should be contained in these public keys.
internal object
Top level object used for all internal data sources. It contains one of any of the defined source type variants.
time object
Internal data source used for emitting timestamps.
conditions object[]
Conditions that the timestamps should meet in order to be considered.
Possible values: [OPERATOR_UNSPECIFIED
, OPERATOR_EQUALS
, OPERATOR_GREATER_THAN
, OPERATOR_GREATER_THAN_OR_EQUAL
, OPERATOR_LESS_THAN
, OPERATOR_LESS_THAN_OR_EQUAL
]
Default value: OPERATOR_UNSPECIFIED
Type of comparison to make on the value.
Value to be compared with by the operator.
timeTrigger object
Internal data source used for emitting timestamps automatically using predefined intervals and conditions.
conditions object[]
Conditions that the timestamps need to meet in order to be considered.
Possible values: [OPERATOR_UNSPECIFIED
, OPERATOR_EQUALS
, OPERATOR_GREATER_THAN
, OPERATOR_GREATER_THAN_OR_EQUAL
, OPERATOR_LESS_THAN
, OPERATOR_LESS_THAN_OR_EQUAL
]
Default value: OPERATOR_UNSPECIFIED
Type of comparison to make on the value.
Value to be compared with by the operator.
triggers object[]
Repeat the trigger every n seconds after the initial. If no time for initial was specified, begin repeating immediately.
Trigger when the vega time is greater or equal to this time, in Unix seconds.
Product quote name.
Asset ID for the product's settlement asset.
Instrument name.
perpetual object
Perpetual.
Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].
Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].
dataSourceSpecBinding object
Binding between the data source spec and the settlement data.
Name of the property in the source data that should be used for settlement data. If it is set to "prices.BTC.value" for example, then the perpetual market will use the value of this property to get settlement data.
Name of the property in the source data that should be used to determine the perpetual's settlement schedule.
dataSourceSpecForSettlementData object
Represents the top level object that handles data sources. Data source definition can be external or internal, with whatever number of data sources are defined for each type in the child objects below.
external object
DataSourceDefinitionExternal is the top level object used for all external
data sources. It contains one of any of the defined SourceType
variants.
ethOracle object
Contains the data specification that is received from Ethereum sources.
The ABI of that contract.
Ethereum address of the contract to call.
List of arguments to pass to method call. Protobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum type according to the ABI.
filters object[]
conditions object[]
Conditions that should be matched by the data to be considered of interest.
Possible values: [OPERATOR_UNSPECIFIED
, OPERATOR_EQUALS
, OPERATOR_GREATER_THAN
, OPERATOR_GREATER_THAN_OR_EQUAL
, OPERATOR_LESS_THAN
, OPERATOR_LESS_THAN_OR_EQUAL
]
Default value: OPERATOR_UNSPECIFIED
Type of comparison to make on the value.
Value to be compared with by the operator.
key object
Data source's data property key targeted by the filter.
Name of the property.
Possible values: [TYPE_UNSPECIFIED
, TYPE_EMPTY
, TYPE_INTEGER
, TYPE_STRING
, TYPE_BOOLEAN
, TYPE_DECIMAL
, TYPE_TIMESTAMP
]
Default value: TYPE_UNSPECIFIED
Data type of the property.
Name of the method on the contract to call.
normalisers object[]
Normalisers are used to convert the data returned from the contract method into a standard format. The key of the map is the name of the property, which identifies the specific piece of data to other parts of the data sourcing framework, for example filters. The value is a JSONPath expression for expressing where in the contract call result the required data is located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists.
The ID of the EVM based chain which is to be used to source the oracle data.
trigger object
Conditions for determining when to call the contract method.
timeTrigger object
Trigger for an Ethereum call based on the Ethereum block timestamp. Can be one-off or repeating.
Repeat the call every n seconds after the initial call. If no time for initial call was specified, begin repeating immediately.
Trigger when the Ethereum time is greater or equal to this time, in Unix seconds.
If repeating, stop once Ethereum time is greater than this time, in Unix seconds. If not set, then repeat indefinitely.
oracle object
All types of external data sources use the same configuration set for meeting requirements in order for the data to be useful for Vega - valid signatures and matching filters.
filters object[]
Filters describes which source data are considered of interest or not for the product (or the risk model).
conditions object[]
Conditions that should be matched by the data to be considered of interest.
Possible values: [OPERATOR_UNSPECIFIED
, OPERATOR_EQUALS
, OPERATOR_GREATER_THAN
, OPERATOR_GREATER_THAN_OR_EQUAL
, OPERATOR_LESS_THAN
, OPERATOR_LESS_THAN_OR_EQUAL
]
Default value: OPERATOR_UNSPECIFIED
Type of comparison to make on the value.
Value to be compared with by the operator.
key object
Data source's data property key targeted by the filter.
Name of the property.
Possible values: [TYPE_UNSPECIFIED
, TYPE_EMPTY
, TYPE_INTEGER
, TYPE_STRING
, TYPE_BOOLEAN
, TYPE_DECIMAL
, TYPE_TIMESTAMP
]
Default value: TYPE_UNSPECIFIED
Data type of the property.
signers object[]
Signers is the list of authorized signatures that signed the data for this source. All the signatures in the data source data should be contained in this external source. All the signatures in the data should be contained in this list.
ethAddress object
In case of an open oracle - Ethereum address will be submitted.
pubKey object
List of authorized public keys that signed the data for this source. All the public keys in the data should be contained in these public keys.
internal object
Top level object used for all internal data sources. It contains one of any of the defined source type variants.
time object
Internal data source used for emitting timestamps.
conditions object[]
Conditions that the timestamps should meet in order to be considered.
Possible values: [OPERATOR_UNSPECIFIED
, OPERATOR_EQUALS
, OPERATOR_GREATER_THAN
, OPERATOR_GREATER_THAN_OR_EQUAL
, OPERATOR_LESS_THAN
, OPERATOR_LESS_THAN_OR_EQUAL
]
Default value: OPERATOR_UNSPECIFIED
Type of comparison to make on the value.
Value to be compared with by the operator.
timeTrigger object
Internal data source used for emitting timestamps automatically using predefined intervals and conditions.
conditions object[]
Conditions that the timestamps need to meet in order to be considered.
Possible values: [OPERATOR_UNSPECIFIED
, OPERATOR_EQUALS
, OPERATOR_GREATER_THAN
, OPERATOR_GREATER_THAN_OR_EQUAL
, OPERATOR_LESS_THAN
, OPERATOR_LESS_THAN_OR_EQUAL
]
Default value: OPERATOR_UNSPECIFIED
Type of comparison to make on the value.
Value to be compared with by the operator.
triggers object[]
Repeat the trigger every n seconds after the initial. If no time for initial was specified, begin repeating immediately.
Trigger when the vega time is greater or equal to this time, in Unix seconds.
dataSourceSpecForSettlementSchedule object
Represents the top level object that handles data sources. Data source definition can be external or internal, with whatever number of data sources are defined for each type in the child objects below.
external object
DataSourceDefinitionExternal is the top level object used for all external
data sources. It contains one of any of the defined SourceType
variants.
ethOracle object
Contains the data specification that is received from Ethereum sources.
The ABI of that contract.
Ethereum address of the contract to call.
List of arguments to pass to method call. Protobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum type according to the ABI.
filters object[]
conditions object[]
Conditions that should be matched by the data to be considered of interest.
Possible values: [OPERATOR_UNSPECIFIED
, OPERATOR_EQUALS
, OPERATOR_GREATER_THAN
, OPERATOR_GREATER_THAN_OR_EQUAL
, OPERATOR_LESS_THAN
, OPERATOR_LESS_THAN_OR_EQUAL
]
Default value: OPERATOR_UNSPECIFIED
Type of comparison to make on the value.
Value to be compared with by the operator.
key object
Data source's data property key targeted by the filter.
Name of the property.
Possible values: [TYPE_UNSPECIFIED
, TYPE_EMPTY
, TYPE_INTEGER
, TYPE_STRING
, TYPE_BOOLEAN
, TYPE_DECIMAL
, TYPE_TIMESTAMP
]
Default value: TYPE_UNSPECIFIED
Data type of the property.
Name of the method on the contract to call.
normalisers object[]
Normalisers are used to convert the data returned from the contract method into a standard format. The key of the map is the name of the property, which identifies the specific piece of data to other parts of the data sourcing framework, for example filters. The value is a JSONPath expression for expressing where in the contract call result the required data is located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists.
The ID of the EVM based chain which is to be used to source the oracle data.
trigger object
Conditions for determining when to call the contract method.
timeTrigger object
Trigger for an Ethereum call based on the Ethereum block timestamp. Can be one-off or repeating.
Repeat the call every n seconds after the initial call. If no time for initial call was specified, begin repeating immediately.
Trigger when the Ethereum time is greater or equal to this time, in Unix seconds.
If repeating, stop once Ethereum time is greater than this time, in Unix seconds. If not set, then repeat indefinitely.
oracle object
All types of external data sources use the same configuration set for meeting requirements in order for the data to be useful for Vega - valid signatures and matching filters.
filters object[]
Filters describes which source data are considered of interest or not for the product (or the risk model).
conditions object[]
Conditions that should be matched by the data to be considered of interest.
Possible values: [OPERATOR_UNSPECIFIED
, OPERATOR_EQUALS
, OPERATOR_GREATER_THAN
, OPERATOR_GREATER_THAN_OR_EQUAL
, OPERATOR_LESS_THAN
, OPERATOR_LESS_THAN_OR_EQUAL
]
Default value: OPERATOR_UNSPECIFIED
Type of comparison to make on the value.
Value to be compared with by the operator.
key object
Data source's data property key targeted by the filter.
Name of the property.
Possible values: [TYPE_UNSPECIFIED
, TYPE_EMPTY
, TYPE_INTEGER
, TYPE_STRING
, TYPE_BOOLEAN
, TYPE_DECIMAL
, TYPE_TIMESTAMP
]
Default value: TYPE_UNSPECIFIED
Data type of the property.
signers object[]
Signers is the list of authorized signatures that signed the data for this source. All the signatures in the data source data should be contained in this external source. All the signatures in the data should be contained in this list.
ethAddress object
In case of an open oracle - Ethereum address will be submitted.
pubKey object
List of authorized public keys that signed the data for this source. All the public keys in the data should be contained in these public keys.
internal object
Top level object used for all internal data sources. It contains one of any of the defined source type variants.
time object
Internal data source used for emitting timestamps.
conditions object[]
Conditions that the timestamps should meet in order to be considered.
Possible values: [OPERATOR_UNSPECIFIED
, OPERATOR_EQUALS
, OPERATOR_GREATER_THAN
, OPERATOR_GREATER_THAN_OR_EQUAL
, OPERATOR_LESS_THAN
, OPERATOR_LESS_THAN_OR_EQUAL
]
Default value: OPERATOR_UNSPECIFIED
Type of comparison to make on the value.
Value to be compared with by the operator.
timeTrigger object
Internal data source used for emitting timestamps automatically using predefined intervals and conditions.
conditions object[]
Conditions that the timestamps need to meet in order to be considered.
Possible values: [OPERATOR_UNSPECIFIED
, OPERATOR_EQUALS
, OPERATOR_GREATER_THAN
, OPERATOR_GREATER_THAN_OR_EQUAL
, OPERATOR_LESS_THAN
, OPERATOR_LESS_THAN_OR_EQUAL
]
Default value: OPERATOR_UNSPECIFIED
Type of comparison to make on the value.
Value to be compared with by the operator.
triggers object[]
Repeat the trigger every n seconds after the initial. If no time for initial was specified, begin repeating immediately.
Trigger when the vega time is greater or equal to this time, in Unix seconds.
Lower bound for the funding-rate such that the funding-rate will never be lower than this value.
Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.
Upper bound for the funding-rate such that the funding-rate will never be higher than this value.
Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].
internalCompositePriceConfiguration object
Composite price configuration to drive the calculation of the internal composite price used for funding payments. If undefined the default mark price of the market is used.
Cash amount, in asset decimals, used for the calculation of the mark price from the order book.
Possible values: [COMPOSITE_PRICE_TYPE_UNSPECIFIED
, COMPOSITE_PRICE_TYPE_WEIGHTED
, COMPOSITE_PRICE_TYPE_MEDIAN
, COMPOSITE_PRICE_TYPE_LAST_TRADE
]
Default value: COMPOSITE_PRICE_TYPE_UNSPECIFIED
Which method is used for the calculation of the composite price for the market.
dataSourcesSpec object[]
Additional price sources to be used for internal composite price calculation.
external object
DataSourceDefinitionExternal is the top level object used for all external
data sources. It contains one of any of the defined SourceType
variants.
ethOracle object
Contains the data specification that is received from Ethereum sources.
The ABI of that contract.
Ethereum address of the contract to call.
List of arguments to pass to method call. Protobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum type according to the ABI.
filters object[]
conditions object[]
Conditions that should be matched by the data to be considered of interest.
Possible values: [OPERATOR_UNSPECIFIED
, OPERATOR_EQUALS
, OPERATOR_GREATER_THAN
, OPERATOR_GREATER_THAN_OR_EQUAL
, OPERATOR_LESS_THAN
, OPERATOR_LESS_THAN_OR_EQUAL
]
Default value: OPERATOR_UNSPECIFIED
Type of comparison to make on the value.
Value to be compared with by the operator.
key object
Data source's data property key targeted by the filter.
Name of the property.
Possible values: [TYPE_UNSPECIFIED
, TYPE_EMPTY
, TYPE_INTEGER
, TYPE_STRING
, TYPE_BOOLEAN
, TYPE_DECIMAL
, TYPE_TIMESTAMP
]
Default value: TYPE_UNSPECIFIED
Data type of the property.
Name of the method on the contract to call.
normalisers object[]
Normalisers are used to convert the data returned from the contract method into a standard format. The key of the map is the name of the property, which identifies the specific piece of data to other parts of the data sourcing framework, for example filters. The value is a JSONPath expression for expressing where in the contract call result the required data is located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists.
The ID of the EVM based chain which is to be used to source the oracle data.
trigger object
Conditions for determining when to call the contract method.
timeTrigger object
Trigger for an Ethereum call based on the Ethereum block timestamp. Can be one-off or repeating.
Repeat the call every n seconds after the initial call. If no time for initial call was specified, begin repeating immediately.
Trigger when the Ethereum time is greater or equal to this time, in Unix seconds.
If repeating, stop once Ethereum time is greater than this time, in Unix seconds. If not set, then repeat indefinitely.
oracle object
All types of external data sources use the same configuration set for meeting requirements in order for the data to be useful for Vega - valid signatures and matching filters.
filters object[]
Filters describes which source data are considered of interest or not for the product (or the risk model).
conditions object[]
Conditions that should be matched by the data to be considered of interest.
Possible values: [OPERATOR_UNSPECIFIED
, OPERATOR_EQUALS
, OPERATOR_GREATER_THAN
, OPERATOR_GREATER_THAN_OR_EQUAL
, OPERATOR_LESS_THAN
, OPERATOR_LESS_THAN_OR_EQUAL
]
Default value: OPERATOR_UNSPECIFIED
Type of comparison to make on the value.
Value to be compared with by the operator.
key object
Data source's data property key targeted by the filter.
Name of the property.
Possible values: [TYPE_UNSPECIFIED
, TYPE_EMPTY
, TYPE_INTEGER
, TYPE_STRING
, TYPE_BOOLEAN
, TYPE_DECIMAL
, TYPE_TIMESTAMP
]
Default value: TYPE_UNSPECIFIED
Data type of the property.
signers object[]
Signers is the list of authorized signatures that signed the data for this source. All the signatures in the data source data should be contained in this external source. All the signatures in the data should be contained in this list.
ethAddress object
In case of an open oracle - Ethereum address will be submitted.
pubKey object
List of authorized public keys that signed the data for this source. All the public keys in the data should be contained in these public keys.
internal object
Top level object used for all internal data sources. It contains one of any of the defined source type variants.
time object
Internal data source used for emitting timestamps.
conditions object[]
Conditions that the timestamps should meet in order to be considered.
Possible values: [OPERATOR_UNSPECIFIED
, OPERATOR_EQUALS
, OPERATOR_GREATER_THAN
, OPERATOR_GREATER_THAN_OR_EQUAL
, OPERATOR_LESS_THAN
, OPERATOR_LESS_THAN_OR_EQUAL
]
Default value: OPERATOR_UNSPECIFIED
Type of comparison to make on the value.
Value to be compared with by the operator.
timeTrigger object
Internal data source used for emitting timestamps automatically using predefined intervals and conditions.
conditions object[]
Conditions that the timestamps need to meet in order to be considered.
Possible values: [OPERATOR_UNSPECIFIED
, OPERATOR_EQUALS
, OPERATOR_GREATER_THAN
, OPERATOR_GREATER_THAN_OR_EQUAL
, OPERATOR_LESS_THAN
, OPERATOR_LESS_THAN_OR_EQUAL
]
Default value: OPERATOR_UNSPECIFIED
Type of comparison to make on the value.
Value to be compared with by the operator.
triggers object[]
Repeat the trigger every n seconds after the initial. If no time for initial was specified, begin repeating immediately.
Trigger when the vega time is greater or equal to this time, in Unix seconds.
dataSourcesSpecBinding object[]
The property name of price.
Decay power used for the calculation of mark price.
Decay weight used for calculation of mark price.
For how long a price source is considered valid. One entry for each data source such that the first is for the trade based mark price, the second is for the book based price the third is for the first oracle, followed by more oracle data source staleness tolerance.
Weights for each composite price data source.
Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].
Product quote name.
Asset ID for the product's settlement asset.
spot object
Spot.
Base asset ID.
Quote asset ID.
Linear slippage factor is used to cap the slippage component of maintenance margin - it is applied to the slippage volume.
liquidationStrategy object
Liquidation strategy for this market.
Fraction of the open position the market will try to close in a single attempt; range 0 through 1.
Decimal > 0 specifying the range range above and below the mid price within which the network will trade to dispose of its position. The value can be > 1. For example, if set to 1.5, the minimum price will be 0, ie max(0, mid_price * (1 - 1.5)), and the maximum price will be mid_price * (1 + 1.5).
Interval, in seconds, at which the network will attempt to close its position.
Size of the position that the network will try to close in a single attempt.
Max fraction of the total volume of the orderbook, within liquidity bounds, that the network can use to close its position; range 0 through 1.
liquidityFeeSettings object
Specifies how the liquidity fee for the market will be calculated.
Constant liquidity fee used when using the constant fee method.
Possible values: [METHOD_UNSPECIFIED
, METHOD_MARGINAL_COST
, METHOD_WEIGHTED_AVERAGE
, METHOD_CONSTANT
]
Default value: METHOD_UNSPECIFIED
Method used to calculate the market's liquidity fee.
liquidityMonitoringParameters object
Liquidity monitoring parameters.
Specifies by how many seconds an auction should be extended if leaving the auction were to trigger a liquidity auction.
targetStakeParameters object
Specifies parameters related to target stake calculation.
Specifies scaling factors used in target stake calculation.
Specifies length of time window expressed in seconds for target stake calculation.
Specifies the triggering ratio for entering liquidity auction.
liquiditySlaParameters object
Specifies the minimum fraction of time LPs must spend "on the book" providing their committed liquidity.
Specifies the number of liquidity epochs over which past performance will continue to affect rewards.
Specifies the maximum fraction of their accrued fees an LP that meets the SLA implied by market.liquidity.commitmentMinTimeFraction will lose to liquidity providers that achieved a higher SLA performance than them.
logNormal object
Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.
params object
Risk model parameters for log normal.
Mu parameter, annualised growth rate of the underlying asset.
R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.
Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.
Risk Aversion Parameter.
riskFactorOverride object
And optional override for the risk factor calculated by the risk model.
Long Risk factor value.
Short Risk factor value.
Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall calculation to obtain the maintenance margin, must be a strictly non-negative real number.
DEPRECATED: Use liquidity SLA parameters instead. Percentage move up and down from the mid price which specifies the range of price levels over which automated liquidity provisions will be deployed.
markPriceConfiguration object
Mark price configuration.
Cash amount, in asset decimals, used for the calculation of the mark price from the order book.
Possible values: [COMPOSITE_PRICE_TYPE_UNSPECIFIED
, COMPOSITE_PRICE_TYPE_WEIGHTED
, COMPOSITE_PRICE_TYPE_MEDIAN
, COMPOSITE_PRICE_TYPE_LAST_TRADE
]
Default value: COMPOSITE_PRICE_TYPE_UNSPECIFIED
Which method is used for the calculation of the composite price for the market.
dataSourcesSpec object[]
Additional price sources to be used for internal composite price calculation.
external object
DataSourceDefinitionExternal is the top level object used for all external
data sources. It contains one of any of the defined SourceType
variants.
ethOracle object
Contains the data specification that is received from Ethereum sources.
The ABI of that contract.
Ethereum address of the contract to call.
List of arguments to pass to method call. Protobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum type according to the ABI.
filters object[]
conditions object[]
Conditions that should be matched by the data to be considered of interest.
Possible values: [OPERATOR_UNSPECIFIED
, OPERATOR_EQUALS
, OPERATOR_GREATER_THAN
, OPERATOR_GREATER_THAN_OR_EQUAL
, OPERATOR_LESS_THAN
, OPERATOR_LESS_THAN_OR_EQUAL
]
Default value: OPERATOR_UNSPECIFIED
Type of comparison to make on the value.
Value to be compared with by the operator.
key object
Data source's data property key targeted by the filter.
Name of the property.
Possible values: [TYPE_UNSPECIFIED
, TYPE_EMPTY
, TYPE_INTEGER
, TYPE_STRING
, TYPE_BOOLEAN
, TYPE_DECIMAL
, TYPE_TIMESTAMP
]
Default value: TYPE_UNSPECIFIED
Data type of the property.
Name of the method on the contract to call.
normalisers object[]
Normalisers are used to convert the data returned from the contract method into a standard format. The key of the map is the name of the property, which identifies the specific piece of data to other parts of the data sourcing framework, for example filters. The value is a JSONPath expression for expressing where in the contract call result the required data is located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists.
The ID of the EVM based chain which is to be used to source the oracle data.
trigger object
Conditions for determining when to call the contract method.
timeTrigger object
Trigger for an Ethereum call based on the Ethereum block timestamp. Can be one-off or repeating.
Repeat the call every n seconds after the initial call. If no time for initial call was specified, begin repeating immediately.
Trigger when the Ethereum time is greater or equal to this time, in Unix seconds.
If repeating, stop once Ethereum time is greater than this time, in Unix seconds. If not set, then repeat indefinitely.
oracle object
All types of external data sources use the same configuration set for meeting requirements in order for the data to be useful for Vega - valid signatures and matching filters.
filters object[]
Filters describes which source data are considered of interest or not for the product (or the risk model).
conditions object[]
Conditions that should be matched by the data to be considered of interest.
Possible values: [OPERATOR_UNSPECIFIED
, OPERATOR_EQUALS
, OPERATOR_GREATER_THAN
, OPERATOR_GREATER_THAN_OR_EQUAL
, OPERATOR_LESS_THAN
, OPERATOR_LESS_THAN_OR_EQUAL
]
Default value: OPERATOR_UNSPECIFIED
Type of comparison to make on the value.
Value to be compared with by the operator.
key object
Data source's data property key targeted by the filter.
Name of the property.
Possible values: [TYPE_UNSPECIFIED
, TYPE_EMPTY
, TYPE_INTEGER
, TYPE_STRING
, TYPE_BOOLEAN
, TYPE_DECIMAL
, TYPE_TIMESTAMP
]
Default value: TYPE_UNSPECIFIED
Data type of the property.
signers object[]
Signers is the list of authorized signatures that signed the data for this source. All the signatures in the data source data should be contained in this external source. All the signatures in the data should be contained in this list.
ethAddress object
In case of an open oracle - Ethereum address will be submitted.
pubKey object
List of authorized public keys that signed the data for this source. All the public keys in the data should be contained in these public keys.
internal object
Top level object used for all internal data sources. It contains one of any of the defined source type variants.
time object
Internal data source used for emitting timestamps.
conditions object[]
Conditions that the timestamps should meet in order to be considered.
Possible values: [OPERATOR_UNSPECIFIED
, OPERATOR_EQUALS
, OPERATOR_GREATER_THAN
, OPERATOR_GREATER_THAN_OR_EQUAL
, OPERATOR_LESS_THAN
, OPERATOR_LESS_THAN_OR_EQUAL
]
Default value: OPERATOR_UNSPECIFIED
Type of comparison to make on the value.
Value to be compared with by the operator.
timeTrigger object
Internal data source used for emitting timestamps automatically using predefined intervals and conditions.
conditions object[]
Conditions that the timestamps need to meet in order to be considered.
Possible values: [OPERATOR_UNSPECIFIED
, OPERATOR_EQUALS
, OPERATOR_GREATER_THAN
, OPERATOR_GREATER_THAN_OR_EQUAL
, OPERATOR_LESS_THAN
, OPERATOR_LESS_THAN_OR_EQUAL
]
Default value: OPERATOR_UNSPECIFIED
Type of comparison to make on the value.
Value to be compared with by the operator.
triggers object[]
Repeat the trigger every n seconds after the initial. If no time for initial was specified, begin repeating immediately.
Trigger when the vega time is greater or equal to this time, in Unix seconds.
dataSourcesSpecBinding object[]
The property name of price.
Decay power used for the calculation of mark price.
Decay weight used for calculation of mark price.
For how long a price source is considered valid. One entry for each data source such that the first is for the trade based mark price, the second is for the book based price the third is for the first oracle, followed by more oracle data source staleness tolerance.
Weights for each composite price data source.
Optional new futures market metadata, tags.
Decimal places for order sizes, sets what size the smallest order / position on the futures market can be.
priceMonitoringParameters object
Price monitoring parameters.
triggers object[]
Price monitoring auction extension duration in seconds should the price breach its theoretical level over the specified horizon at the specified probability level.
Price monitoring projection horizon τ in seconds.
Price monitoring probability level p.
Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.
simple object
Simple risk model parameters, valid only if MODEL_SIMPLE is selected.
Pre-defined risk factor value for long.
Pre-defined risk factor value for short.
Pre-defined maximum price move up that the model considers as valid.
Pre-defined minimum price move down that the model considers as valid.
Pre-defined constant probability of trading.
successor object
Successor configuration. If this proposal is meant to succeed a given market, then this should be set.
A decimal value between or equal to 0 and 1, specifying the fraction of the insurance pool balance that is carried over from the parent market to the successor.
ID of the market that the successor should take over from.
newSpotMarket object
Proposal change for creating new spot market.
changes object
Configuration of the new spot market.
instrument object
New spot market instrument configuration.
Instrument code, human-readable shortcode used to describe the instrument.
future object
Future.
cap object
If set, this product creates a capped future market.
If set to true, the settlement price must either be zero, or equal to the max price.
If set to true, positions must be fully collateralised so there is no default risk for any party.
Set the maximum price for orders, and settlement data in market decimals.
dataSourceSpecBinding object
Binding between the data source spec and the settlement data.
Name of the property in the source data that should be used as settlement data. If it is set to "prices.BTC.value", then the Future will use the value of this property as settlement data.
Name of the property in the data source data that signals termination of trading.
dataSourceSpecForSettlementData object
Represents the top level object that handles data sources. Data source definition can be external or internal, with whatever number of data sources are defined for each type in the child objects below.
external object
DataSourceDefinitionExternal is the top level object used for all external
data sources. It contains one of any of the defined SourceType
variants.
ethOracle object
Contains the data specification that is received from Ethereum sources.
The ABI of that contract.
Ethereum address of the contract to call.
List of arguments to pass to method call. Protobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum type according to the ABI.
filters object[]
conditions object[]
Conditions that should be matched by the data to be considered of interest.
Possible values: [OPERATOR_UNSPECIFIED
, OPERATOR_EQUALS
, OPERATOR_GREATER_THAN
, OPERATOR_GREATER_THAN_OR_EQUAL
, OPERATOR_LESS_THAN
, OPERATOR_LESS_THAN_OR_EQUAL
]
Default value: OPERATOR_UNSPECIFIED
Type of comparison to make on the value.
Value to be compared with by the operator.
key object
Data source's data property key targeted by the filter.
Name of the property.
Possible values: [TYPE_UNSPECIFIED
, TYPE_EMPTY
, TYPE_INTEGER
, TYPE_STRING
, TYPE_BOOLEAN
, TYPE_DECIMAL
, TYPE_TIMESTAMP
]
Default value: TYPE_UNSPECIFIED
Data type of the property.
Name of the method on the contract to call.
normalisers object[]
Normalisers are used to convert the data returned from the contract method into a standard format. The key of the map is the name of the property, which identifies the specific piece of data to other parts of the data sourcing framework, for example filters. The value is a JSONPath expression for expressing where in the contract call result the required data is located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists.
The ID of the EVM based chain which is to be used to source the oracle data.
trigger object
Conditions for determining when to call the contract method.
timeTrigger object
Trigger for an Ethereum call based on the Ethereum block timestamp. Can be one-off or repeating.
Repeat the call every n seconds after the initial call. If no time for initial call was specified, begin repeating immediately.
Trigger when the Ethereum time is greater or equal to this time, in Unix seconds.
If repeating, stop once Ethereum time is greater than this time, in Unix seconds. If not set, then repeat indefinitely.
oracle object
All types of external data sources use the same configuration set for meeting requirements in order for the data to be useful for Vega - valid signatures and matching filters.
filters object[]
Filters describes which source data are considered of interest or not for the product (or the risk model).
conditions object[]
Conditions that should be matched by the data to be considered of interest.
Possible values: [OPERATOR_UNSPECIFIED
, OPERATOR_EQUALS
, OPERATOR_GREATER_THAN
, OPERATOR_GREATER_THAN_OR_EQUAL
, OPERATOR_LESS_THAN
, OPERATOR_LESS_THAN_OR_EQUAL
]
Default value: OPERATOR_UNSPECIFIED
Type of comparison to make on the value.
Value to be compared with by the operator.
key object
Data source's data property key targeted by the filter.
Name of the property.
Possible values: [TYPE_UNSPECIFIED
, TYPE_EMPTY
, TYPE_INTEGER
, TYPE_STRING
, TYPE_BOOLEAN
, TYPE_DECIMAL
, TYPE_TIMESTAMP
]
Default value: TYPE_UNSPECIFIED
Data type of the property.
signers object[]
Signers is the list of authorized signatures that signed the data for this source. All the signatures in the data source data should be contained in this external source. All the signatures in the data should be contained in this list.
ethAddress object
In case of an open oracle - Ethereum address will be submitted.
pubKey object
List of authorized public keys that signed the data for this source. All the public keys in the data should be contained in these public keys.
internal object
Top level object used for all internal data sources. It contains one of any of the defined source type variants.
time object
Internal data source used for emitting timestamps.
conditions object[]
Conditions that the timestamps should meet in order to be considered.
Possible values: [OPERATOR_UNSPECIFIED
, OPERATOR_EQUALS
, OPERATOR_GREATER_THAN
, OPERATOR_GREATER_THAN_OR_EQUAL
, OPERATOR_LESS_THAN
, OPERATOR_LESS_THAN_OR_EQUAL
]
Default value: OPERATOR_UNSPECIFIED
Type of comparison to make on the value.
Value to be compared with by the operator.
timeTrigger object
Internal data source used for emitting timestamps automatically using predefined intervals and conditions.
conditions object[]
Conditions that the timestamps need to meet in order to be considered.
Possible values: [OPERATOR_UNSPECIFIED
, OPERATOR_EQUALS
, OPERATOR_GREATER_THAN
, OPERATOR_GREATER_THAN_OR_EQUAL
, OPERATOR_LESS_THAN
, OPERATOR_LESS_THAN_OR_EQUAL
]
Default value: OPERATOR_UNSPECIFIED
Type of comparison to make on the value.
Value to be compared with by the operator.
triggers object[]
Repeat the trigger every n seconds after the initial. If no time for initial was specified, begin repeating immediately.
Trigger when the vega time is greater or equal to this time, in Unix seconds.
dataSourceSpecForTradingTermination object
Represents the top level object that handles data sources. Data source definition can be external or internal, with whatever number of data sources are defined for each type in the child objects below.
external object
DataSourceDefinitionExternal is the top level object used for all external
data sources. It contains one of any of the defined SourceType
variants.
ethOracle object
Contains the data specification that is received from Ethereum sources.
The ABI of that contract.
Ethereum address of the contract to call.
List of arguments to pass to method call. Protobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum type according to the ABI.
filters object[]
conditions object[]
Conditions that should be matched by the data to be considered of interest.
Possible values: [OPERATOR_UNSPECIFIED
, OPERATOR_EQUALS
, OPERATOR_GREATER_THAN
, OPERATOR_GREATER_THAN_OR_EQUAL
, OPERATOR_LESS_THAN
, OPERATOR_LESS_THAN_OR_EQUAL
]
Default value: OPERATOR_UNSPECIFIED
Type of comparison to make on the value.
Value to be compared with by the operator.
key object
Data source's data property key targeted by the filter.
Name of the property.
Possible values: [TYPE_UNSPECIFIED
, TYPE_EMPTY
, TYPE_INTEGER
, TYPE_STRING
, TYPE_BOOLEAN
, TYPE_DECIMAL
, TYPE_TIMESTAMP
]
Default value: TYPE_UNSPECIFIED
Data type of the property.
Name of the method on the contract to call.
normalisers object[]
Normalisers are used to convert the data returned from the contract method into a standard format. The key of the map is the name of the property, which identifies the specific piece of data to other parts of the data sourcing framework, for example filters. The value is a JSONPath expression for expressing where in the contract call result the required data is located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists.
The ID of the EVM based chain which is to be used to source the oracle data.
trigger object
Conditions for determining when to call the contract method.
timeTrigger object
Trigger for an Ethereum call based on the Ethereum block timestamp. Can be one-off or repeating.
Repeat the call every n seconds after the initial call. If no time for initial call was specified, begin repeating immediately.
Trigger when the Ethereum time is greater or equal to this time, in Unix seconds.
If repeating, stop once Ethereum time is greater than this time, in Unix seconds. If not set, then repeat indefinitely.
oracle object
All types of external data sources use the same configuration set for meeting requirements in order for the data to be useful for Vega - valid signatures and matching filters.
filters object[]
Filters describes which source data are considered of interest or not for the product (or the risk model).
conditions object[]
Conditions that should be matched by the data to be considered of interest.
Possible values: [OPERATOR_UNSPECIFIED
, OPERATOR_EQUALS
, OPERATOR_GREATER_THAN
, OPERATOR_GREATER_THAN_OR_EQUAL
, OPERATOR_LESS_THAN
, OPERATOR_LESS_THAN_OR_EQUAL
]
Default value: OPERATOR_UNSPECIFIED
Type of comparison to make on the value.
Value to be compared with by the operator.
key object
Data source's data property key targeted by the filter.
Name of the property.
Possible values: [TYPE_UNSPECIFIED
, TYPE_EMPTY
, TYPE_INTEGER
, TYPE_STRING
, TYPE_BOOLEAN
, TYPE_DECIMAL
, TYPE_TIMESTAMP
]
Default value: TYPE_UNSPECIFIED
Data type of the property.
signers object[]
Signers is the list of authorized signatures that signed the data for this source. All the signatures in the data source data should be contained in this external source. All the signatures in the data should be contained in this list.
ethAddress object
In case of an open oracle - Ethereum address will be submitted.
pubKey object
List of authorized public keys that signed the data for this source. All the public keys in the data should be contained in these public keys.
internal object
Top level object used for all internal data sources. It contains one of any of the defined source type variants.
time object
Internal data source used for emitting timestamps.
conditions object[]
Conditions that the timestamps should meet in order to be considered.
Possible values: [OPERATOR_UNSPECIFIED
, OPERATOR_EQUALS
, OPERATOR_GREATER_THAN
, OPERATOR_GREATER_THAN_OR_EQUAL
, OPERATOR_LESS_THAN
, OPERATOR_LESS_THAN_OR_EQUAL
]
Default value: OPERATOR_UNSPECIFIED
Type of comparison to make on the value.
Value to be compared with by the operator.
timeTrigger object
Internal data source used for emitting timestamps automatically using predefined intervals and conditions.
conditions object[]
Conditions that the timestamps need to meet in order to be considered.
Possible values: [OPERATOR_UNSPECIFIED
, OPERATOR_EQUALS
, OPERATOR_GREATER_THAN
, OPERATOR_GREATER_THAN_OR_EQUAL
, OPERATOR_LESS_THAN
, OPERATOR_LESS_THAN_OR_EQUAL
]
Default value: OPERATOR_UNSPECIFIED
Type of comparison to make on the value.
Value to be compared with by the operator.
triggers object[]
Repeat the trigger every n seconds after the initial. If no time for initial was specified, begin repeating immediately.
Trigger when the vega time is greater or equal to this time, in Unix seconds.
Product quote name.
Asset ID for the product's settlement asset.
Instrument name.
perpetual object
Perpetual.
Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].
Upper bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].
dataSourceSpecBinding object
Binding between the data source spec and the settlement data.
Name of the property in the source data that should be used for settlement data. If it is set to "prices.BTC.value" for example, then the perpetual market will use the value of this property to get settlement data.
Name of the property in the source data that should be used to determine the perpetual's settlement schedule.
dataSourceSpecForSettlementData object
Represents the top level object that handles data sources. Data source definition can be external or internal, with whatever number of data sources are defined for each type in the child objects below.
external object
DataSourceDefinitionExternal is the top level object used for all external
data sources. It contains one of any of the defined SourceType
variants.
ethOracle object
Contains the data specification that is received from Ethereum sources.
The ABI of that contract.
Ethereum address of the contract to call.
List of arguments to pass to method call. Protobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum type according to the ABI.
filters object[]
conditions object[]
Conditions that should be matched by the data to be considered of interest.
Possible values: [OPERATOR_UNSPECIFIED
, OPERATOR_EQUALS
, OPERATOR_GREATER_THAN
, OPERATOR_GREATER_THAN_OR_EQUAL
, OPERATOR_LESS_THAN
, OPERATOR_LESS_THAN_OR_EQUAL
]
Default value: OPERATOR_UNSPECIFIED
Type of comparison to make on the value.
Value to be compared with by the operator.
key object
Data source's data property key targeted by the filter.
Name of the property.
Possible values: [TYPE_UNSPECIFIED
, TYPE_EMPTY
, TYPE_INTEGER
, TYPE_STRING
, TYPE_BOOLEAN
, TYPE_DECIMAL
, TYPE_TIMESTAMP
]
Default value: TYPE_UNSPECIFIED
Data type of the property.
Name of the method on the contract to call.
normalisers object[]
Normalisers are used to convert the data returned from the contract method into a standard format. The key of the map is the name of the property, which identifies the specific piece of data to other parts of the data sourcing framework, for example filters. The value is a JSONPath expression for expressing where in the contract call result the required data is located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists.
The ID of the EVM based chain which is to be used to source the oracle data.
trigger object
Conditions for determining when to call the contract method.
timeTrigger object
Trigger for an Ethereum call based on the Ethereum block timestamp. Can be one-off or repeating.
Repeat the call every n seconds after the initial call. If no time for initial call was specified, begin repeating immediately.
Trigger when the Ethereum time is greater or equal to this time, in Unix seconds.
If repeating, stop once Ethereum time is greater than this time, in Unix seconds. If not set, then repeat indefinitely.
oracle object
All types of external data sources use the same configuration set for meeting requirements in order for the data to be useful for Vega - valid signatures and matching filters.
filters object[]
Filters describes which source data are considered of interest or not for the product (or the risk model).
conditions object[]
Conditions that should be matched by the data to be considered of interest.
Possible values: [OPERATOR_UNSPECIFIED
, OPERATOR_EQUALS
, OPERATOR_GREATER_THAN
, OPERATOR_GREATER_THAN_OR_EQUAL
, OPERATOR_LESS_THAN
, OPERATOR_LESS_THAN_OR_EQUAL
]
Default value: OPERATOR_UNSPECIFIED
Type of comparison to make on the value.
Value to be compared with by the operator.
key object
Data source's data property key targeted by the filter.
Name of the property.
Possible values: [TYPE_UNSPECIFIED
, TYPE_EMPTY
, TYPE_INTEGER
, TYPE_STRING
, TYPE_BOOLEAN
, TYPE_DECIMAL
, TYPE_TIMESTAMP
]
Default value: TYPE_UNSPECIFIED
Data type of the property.
signers object[]
Signers is the list of authorized signatures that signed the data for this source. All the signatures in the data source data should be contained in this external source. All the signatures in the data should be contained in this list.
ethAddress object
In case of an open oracle - Ethereum address will be submitted.
pubKey object
List of authorized public keys that signed the data for this source. All the public keys in the data should be contained in these public keys.
internal object
Top level object used for all internal data sources. It contains one of any of the defined source type variants.
time object
Internal data source used for emitting timestamps.
conditions object[]
Conditions that the timestamps should meet in order to be considered.
Possible values: [OPERATOR_UNSPECIFIED
, OPERATOR_EQUALS
, OPERATOR_GREATER_THAN
, OPERATOR_GREATER_THAN_OR_EQUAL
, OPERATOR_LESS_THAN
, OPERATOR_LESS_THAN_OR_EQUAL
]
Default value: OPERATOR_UNSPECIFIED
Type of comparison to make on the value.
Value to be compared with by the operator.
timeTrigger object
Internal data source used for emitting timestamps automatically using predefined intervals and conditions.
conditions object[]
Conditions that the timestamps need to meet in order to be considered.
Possible values: [OPERATOR_UNSPECIFIED
, OPERATOR_EQUALS
, OPERATOR_GREATER_THAN
, OPERATOR_GREATER_THAN_OR_EQUAL
, OPERATOR_LESS_THAN
, OPERATOR_LESS_THAN_OR_EQUAL
]
Default value: OPERATOR_UNSPECIFIED
Type of comparison to make on the value.
Value to be compared with by the operator.
triggers object[]
Repeat the trigger every n seconds after the initial. If no time for initial was specified, begin repeating immediately.
Trigger when the vega time is greater or equal to this time, in Unix seconds.
dataSourceSpecForSettlementSchedule object
Represents the top level object that handles data sources. Data source definition can be external or internal, with whatever number of data sources are defined for each type in the child objects below.
external object
DataSourceDefinitionExternal is the top level object used for all external
data sources. It contains one of any of the defined SourceType
variants.
ethOracle object
Contains the data specification that is received from Ethereum sources.
The ABI of that contract.
Ethereum address of the contract to call.
List of arguments to pass to method call. Protobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum type according to the ABI.
filters object[]
conditions object[]
Conditions that should be matched by the data to be considered of interest.
Possible values: [OPERATOR_UNSPECIFIED
, OPERATOR_EQUALS
, OPERATOR_GREATER_THAN
, OPERATOR_GREATER_THAN_OR_EQUAL
, OPERATOR_LESS_THAN
, OPERATOR_LESS_THAN_OR_EQUAL
]
Default value: OPERATOR_UNSPECIFIED
Type of comparison to make on the value.
Value to be compared with by the operator.
key object
Data source's data property key targeted by the filter.
Name of the property.
Possible values: [TYPE_UNSPECIFIED
, TYPE_EMPTY
, TYPE_INTEGER
, TYPE_STRING
, TYPE_BOOLEAN
, TYPE_DECIMAL
, TYPE_TIMESTAMP
]
Default value: TYPE_UNSPECIFIED
Data type of the property.
Name of the method on the contract to call.
normalisers object[]
Normalisers are used to convert the data returned from the contract method into a standard format. The key of the map is the name of the property, which identifies the specific piece of data to other parts of the data sourcing framework, for example filters. The value is a JSONPath expression for expressing where in the contract call result the required data is located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists.
The ID of the EVM based chain which is to be used to source the oracle data.
trigger object
Conditions for determining when to call the contract method.
timeTrigger object
Trigger for an Ethereum call based on the Ethereum block timestamp. Can be one-off or repeating.
Repeat the call every n seconds after the initial call. If no time for initial call was specified, begin repeating immediately.
Trigger when the Ethereum time is greater or equal to this time, in Unix seconds.
If repeating, stop once Ethereum time is greater than this time, in Unix seconds. If not set, then repeat indefinitely.
oracle object
All types of external data sources use the same configuration set for meeting requirements in order for the data to be useful for Vega - valid signatures and matching filters.
filters object[]
Filters describes which source data are considered of interest or not for the product (or the risk model).
conditions object[]
Conditions that should be matched by the data to be considered of interest.
Possible values: [OPERATOR_UNSPECIFIED
, OPERATOR_EQUALS
, OPERATOR_GREATER_THAN
, OPERATOR_GREATER_THAN_OR_EQUAL
, OPERATOR_LESS_THAN
, OPERATOR_LESS_THAN_OR_EQUAL
]
Default value: OPERATOR_UNSPECIFIED
Type of comparison to make on the value.
Value to be compared with by the operator.
key object
Data source's data property key targeted by the filter.
Name of the property.
Possible values: [TYPE_UNSPECIFIED
, TYPE_EMPTY
, TYPE_INTEGER
, TYPE_STRING
, TYPE_BOOLEAN
, TYPE_DECIMAL
, TYPE_TIMESTAMP
]
Default value: TYPE_UNSPECIFIED
Data type of the property.
signers object[]
Signers is the list of authorized signatures that signed the data for this source. All the signatures in the data source data should be contained in this external source. All the signatures in the data should be contained in this list.
ethAddress object
In case of an open oracle - Ethereum address will be submitted.
pubKey object
List of authorized public keys that signed the data for this source. All the public keys in the data should be contained in these public keys.
internal object
Top level object used for all internal data sources. It contains one of any of the defined source type variants.
time object
Internal data source used for emitting timestamps.
conditions object[]
Conditions that the timestamps should meet in order to be considered.
Possible values: [OPERATOR_UNSPECIFIED
, OPERATOR_EQUALS
, OPERATOR_GREATER_THAN
, OPERATOR_GREATER_THAN_OR_EQUAL
, OPERATOR_LESS_THAN
, OPERATOR_LESS_THAN_OR_EQUAL
]
Default value: OPERATOR_UNSPECIFIED
Type of comparison to make on the value.
Value to be compared with by the operator.
timeTrigger object
Internal data source used for emitting timestamps automatically using predefined intervals and conditions.
conditions object[]
Conditions that the timestamps need to meet in order to be considered.
Possible values: [OPERATOR_UNSPECIFIED
, OPERATOR_EQUALS
, OPERATOR_GREATER_THAN
, OPERATOR_GREATER_THAN_OR_EQUAL
, OPERATOR_LESS_THAN
, OPERATOR_LESS_THAN_OR_EQUAL
]
Default value: OPERATOR_UNSPECIFIED
Type of comparison to make on the value.
Value to be compared with by the operator.
triggers object[]
Repeat the trigger every n seconds after the initial. If no time for initial was specified, begin repeating immediately.
Trigger when the vega time is greater or equal to this time, in Unix seconds.
Lower bound for the funding-rate such that the funding-rate will never be lower than this value.
Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.
Upper bound for the funding-rate such that the funding-rate will never be higher than this value.
Continuously compounded interest rate used in funding rate calculation, in the range [-1, 1].
internalCompositePriceConfiguration object
Composite price configuration to drive the calculation of the internal composite price used for funding payments. If undefined the default mark price of the market is used.
Cash amount, in asset decimals, used for the calculation of the mark price from the order book.
Possible values: [COMPOSITE_PRICE_TYPE_UNSPECIFIED
, COMPOSITE_PRICE_TYPE_WEIGHTED
, COMPOSITE_PRICE_TYPE_MEDIAN
, COMPOSITE_PRICE_TYPE_LAST_TRADE
]
Default value: COMPOSITE_PRICE_TYPE_UNSPECIFIED
Which method is used for the calculation of the composite price for the market.
dataSourcesSpec object[]
Additional price sources to be used for internal composite price calculation.
external object
DataSourceDefinitionExternal is the top level object used for all external
data sources. It contains one of any of the defined SourceType
variants.
ethOracle object
Contains the data specification that is received from Ethereum sources.
The ABI of that contract.
Ethereum address of the contract to call.
List of arguments to pass to method call. Protobuf 'Value' wraps an arbitrary JSON type that is mapped to an Ethereum type according to the ABI.
filters object[]
conditions object[]
Conditions that should be matched by the data to be considered of interest.
Possible values: [OPERATOR_UNSPECIFIED
, OPERATOR_EQUALS
, OPERATOR_GREATER_THAN
, OPERATOR_GREATER_THAN_OR_EQUAL
, OPERATOR_LESS_THAN
, OPERATOR_LESS_THAN_OR_EQUAL
]
Default value: OPERATOR_UNSPECIFIED
Type of comparison to make on the value.
Value to be compared with by the operator.
key object
Data source's data property key targeted by the filter.
Name of the property.
Possible values: [TYPE_UNSPECIFIED
, TYPE_EMPTY
, TYPE_INTEGER
, TYPE_STRING
, TYPE_BOOLEAN
, TYPE_DECIMAL
, TYPE_TIMESTAMP
]
Default value: TYPE_UNSPECIFIED
Data type of the property.
Name of the method on the contract to call.
normalisers object[]
Normalisers are used to convert the data returned from the contract method into a standard format. The key of the map is the name of the property, which identifies the specific piece of data to other parts of the data sourcing framework, for example filters. The value is a JSONPath expression for expressing where in the contract call result the required data is located, for example $[0] indicates the first result. $[1].price would look in the second result returned from the contract for a structure with a key called 'price' and use that if it exists.
The ID of the EVM based chain which is to be used to source the oracle data.
trigger object
Conditions for determining when to call the contract method.
timeTrigger object
Trigger for an Ethereum call based on the Ethereum block timestamp. Can be one-off or repeating.
Repeat the call every n seconds after the initial call. If no time for initial call was specified, begin repeating immediately.
Trigger when the Ethereum time is greater or equal to this time, in Unix seconds.
If repeating, stop once Ethereum time is greater than this time, in Unix seconds. If not set, then repeat indefinitely.
oracle object
All types of external data sources use the same configuration set for meeting requirements in order for the data to be useful for Vega - valid signatures and matching filters.
filters object[]
Filters describes which source data are considered of interest or not for the product (or the risk model).
conditions object[]
Conditions that should be matched by the data to be considered of interest.
Possible values: [OPERATOR_UNSPECIFIED
, OPERATOR_EQUALS
, OPERATOR_GREATER_THAN
, OPERATOR_GREATER_THAN_OR_EQUAL
, OPERATOR_LESS_THAN
, OPERATOR_LESS_THAN_OR_EQUAL
]
Default value: OPERATOR_UNSPECIFIED
Type of comparison to make on the value.
Value to be compared with by the operator.
key object
Data source's data property key targeted by the filter.
Name of the property.
Possible values: [TYPE_UNSPECIFIED
, TYPE_EMPTY
, TYPE_INTEGER
, TYPE_STRING
, TYPE_BOOLEAN
, TYPE_DECIMAL
, TYPE_TIMESTAMP
]
Default value: TYPE_UNSPECIFIED
Data type of the property.
signers object[]
Signers is the list of authorized signatures that signed the data for this source. All the signatures in the data source data should be contained in this external source. All the signatures in the data should be contained in this list.
ethAddress object
In case of an open oracle - Ethereum address will be submitted.
pubKey object
List of authorized public keys that signed the data for this source. All the public keys in the data should be contained in these public keys.
internal object
Top level object used for all internal data sources. It contains one of any of the defined source type variants.
time object
Internal data source used for emitting timestamps.
conditions object[]
Conditions that the timestamps should meet in order to be considered.
Possible values: [OPERATOR_UNSPECIFIED
, OPERATOR_EQUALS
, OPERATOR_GREATER_THAN
, OPERATOR_GREATER_THAN_OR_EQUAL
, OPERATOR_LESS_THAN
, OPERATOR_LESS_THAN_OR_EQUAL
]
Default value: OPERATOR_UNSPECIFIED
Type of comparison to make on the value.
Value to be compared with by the operator.
timeTrigger object
Internal data source used for emitting timestamps automatically using predefined intervals and conditions.
conditions object[]
Conditions that the timestamps need to meet in order to be considered.
Possible values: [OPERATOR_UNSPECIFIED
, OPERATOR_EQUALS
, OPERATOR_GREATER_THAN
, OPERATOR_GREATER_THAN_OR_EQUAL
, OPERATOR_LESS_THAN
, OPERATOR_LESS_THAN_OR_EQUAL
]
Default value: OPERATOR_UNSPECIFIED
Type of comparison to make on the value.
Value to be compared with by the operator.
triggers object[]
Repeat the trigger every n seconds after the initial. If no time for initial was specified, begin repeating immediately.
Trigger when the vega time is greater or equal to this time, in Unix seconds.
dataSourcesSpecBinding object[]
The property name of price.
Decay power used for the calculation of mark price.
Decay weight used for calculation of mark price.
For how long a price source is considered valid. One entry for each data source such that the first is for the trade based mark price, the second is for the book based price the third is for the first oracle, followed by more oracle data source staleness tolerance.
Weights for each composite price data source.
Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].
Product quote name.
Asset ID for the product's settlement asset.
spot object
Spot.
Base asset ID.
Quote asset ID.
liquidityFeeSettings object
Specifies how the liquidity fee for the market will be calculated.
Constant liquidity fee used when using the constant fee method.
Possible values: [METHOD_UNSPECIFIED
, METHOD_MARGINAL_COST
, METHOD_WEIGHTED_AVERAGE
, METHOD_CONSTANT
]
Default value: METHOD_UNSPECIFIED
Method used to calculate the market's liquidity fee.
logNormal object
Log normal risk model parameters, valid only if MODEL_LOG_NORMAL is selected.
params object
Risk model parameters for log normal.
Mu parameter, annualised growth rate of the underlying asset.
R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.
Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.
Risk Aversion Parameter.
riskFactorOverride object
And optional override for the risk factor calculated by the risk model.
Long Risk factor value.
Short Risk factor value.
Tau parameter of the risk model, projection horizon measured as a year fraction used in the expected shortfall calculation to obtain the maintenance margin, must be a strictly non-negative real number.
Optional new spot market metadata, tags.
Decimal places used for the new spot market, sets the smallest price increment on the book.
priceMonitoringParameters object
Price monitoring parameters.
triggers object[]
Price monitoring auction extension duration in seconds should the price breach its theoretical level over the specified horizon at the specified probability level.
Price monitoring projection horizon τ in seconds.