Skip to main content
Version: pre-release (v0.79)

Events subscription

GET 

/stream/event/bus

Subscribe to a stream of events from the core

Request

Query Parameters

    type string[]

    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_VOLUME_REBATE_PROGRAM_STARTED, BUS_EVENT_TYPE_VOLUME_REBATE_PROGRAM_UPDATED, BUS_EVENT_TYPE_VOLUME_REBATE_PROGRAM_ENDED, BUS_EVENT_TYPE_VOLUME_REBATE_STATS_UPDATED, BUS_EVENT_TYPE_AUTOMATED_PURCHASE_ANNOUNCED, BUS_EVENT_TYPE_MARKET, BUS_EVENT_TYPE_TX_ERROR]

    One or more types of event, required field.

    • 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_VOLUME_REBATE_PROGRAM_STARTED: Event indicating a volume rebate program started.
    • BUS_EVENT_TYPE_VOLUME_REBATE_PROGRAM_UPDATED: Event indicating a volume rebate program has been updated.
    • BUS_EVENT_TYPE_VOLUME_REBATE_PROGRAM_ENDED: Event indicating a volume rebate program ended.
    • BUS_EVENT_TYPE_VOLUME_REBATE_STATS_UPDATED: Event indicating the updated statistics for the volume rebate.
    • BUS_EVENT_TYPE_AUTOMATED_PURCHASE_ANNOUNCED: Event indicating an automated purchase auction has been scheduled.
    • 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
    marketId string

    Market ID to filter events for, optional field. If omitted, no markets will be filtered out.

    partyId string

    Party ID to filter events for, optional field. If omitted, no parties will be filtered out.

    batchSize int64

    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

A successful response.(streaming responses)

Schema
    error object
    code int32
    details object[]
  • Array [
  • @type string
  • ]
  • message string
    result object
    events object[]

    One or more events that match the subscription request criteria.

  • Array [
  • account object
    asset string

    Asset ID for the account.

    balance string

    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.

    id string

    Unique account ID, used internally by Vega.

    marketId string

    Market ID for the account, if AccountType.ACCOUNT_TYPE_GENERAL this will be empty.

    owner string

    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.

    type Various collateral/account types as used by Vega (string)

    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_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, ACCOUNT_TYPE_BUY_BACK_FEES, ACCOUNT_TYPE_REWARD_AVERAGE_NOTIONAL, ACCOUNT_TYPE_REWARD_ELIGIBLE_ENTITIES, ACCOUNT_TYPE_LOCKED_FOR_STAKING]

    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 string

    Base price bound configuration for the AMM.

    dataSourceId string

    Data source that is used to re-price the AMM's base.

    leverageAtLowerBound string

    Leverage at lower bounds.

    leverageAtUpperBound string

    Leverage at upper bounds.

    lowerBound string

    Upper price bound configuration for the AMM. If unset, the AMM will never hold a short position.

    upperBound string

    Lower price bound configuration for the AMM. If unset, the AMM will never hold a long position.

    ammPartyId string

    Party ID that the AMM operates as.

    commitment string

    Amount committed to the AMM.

    id string

    ID of the AMM.

    lowerCurve object
    theoreticalPosition string

    Maximum tradable volume on the AMM curve.

    virtualLiquidity string

    Virtual liquidity for the given AMM curve.

    marketId string

    Market ID that the AMM provides liquidity for.

    minimumPriceChangeTrigger string

    An AMM with an oracle driven base price will only be updated if abs(new-base-price / old-base-price - 1) >= minimum_price_change_trigger.

    partyId string

    Party ID of the owner of the AMM.

    proposedFee string

    Nominated liquidity fee factor, which is an input to the calculation of taker fees on the market.

    status v1AMMStatus (string)

    Possible values: [STATUS_UNSPECIFIED, STATUS_ACTIVE, STATUS_REJECTED, STATUS_CANCELLED, STATUS_STOPPED, STATUS_REDUCE_ONLY, STATUS_PENDING]

    Default value: STATUS_UNSPECIFIED

    Current status of the AMM.

    statusReason AMMStatusReason (string)

    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
    theoreticalPosition string

    Maximum tradable volume on the AMM curve.

    virtualLiquidity string

    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.

    maxFaucetAmountMint string

    Maximum amount that can be requested by a party through the built-in asset faucet at a time.

    decimals uint64

    Number of decimal / precision handled by this asset.

    erc20 object

    Ethereum ERC20 asset.

    chainId string

    Chain ID the asset originated from.

    contractAddress string

    Address of the contract for the token, on the ethereum network.

    lifetimeLimit string

    Lifetime limits deposit per address note: this is a temporary measure that can be changed by governance.

    withdrawThreshold string

    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 string

    Name of the asset (e.g: Great British Pound).

    quantum string

    Minimum economically meaningful amount in the asset.

    symbol string

    Symbol of the asset (e.g: GBP).

    id string

    Internal identifier of the asset.

    status - STATUS_UNSPECIFIED: Default value, always invalid - STATUS_PROPOSED: Asset is proposed and under vote - STATUS_REJECTED: Asset has been rejected from governance - STATUS_PENDING_LISTING: Asset is pending listing from the bridge - STATUS_ENABLED: Asset is fully usable in the network (string)

    Possible values: [STATUS_UNSPECIFIED, STATUS_PROPOSED, STATUS_REJECTED, STATUS_PENDING_LISTING, STATUS_ENABLED]

    Default value: STATUS_UNSPECIFIED

    Status of the asset.

    auction object
    end int64
    extensionTrigger If an auction was ongoing, but was extended for whatever reason, this field will be set to the trigger type indicating which component extended the auction (string)

    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, AUCTION_TRIGGER_PROTOCOL_AUTOMATED_PURCHASE]

    Default value: AUCTION_TRIGGER_UNSPECIFIED

    • 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_PROTOCOL_AUTOMATED_PURCHASE: Market is in auction for automated purchase.
    leave True if the event indicates leaving auction mode and False otherwise (boolean)
    marketId Market ID for the event (string)
    openingAuction True if the event indicates an auction opening and False otherwise (boolean)
    start int64
    trigger Reason this market is/was in auction (string)

    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, AUCTION_TRIGGER_PROTOCOL_AUTOMATED_PURCHASE]

    Default value: AUCTION_TRIGGER_UNSPECIFIED

    • 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_PROTOCOL_AUTOMATED_PURCHASE: Market is in auction for automated purchase.
    automatedPurchaseAnnounced object

    Event notifying an upcoming automated purchase of a token with the sold amount.

    amount string

    Amount being exchanged.

    from string

    Token being exchanged.

    fromAccountType Various collateral/account types as used by Vega (string)

    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_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, ACCOUNT_TYPE_BUY_BACK_FEES, ACCOUNT_TYPE_REWARD_AVERAGE_NOTIONAL, ACCOUNT_TYPE_REWARD_ELIGIBLE_ENTITIES, ACCOUNT_TYPE_LOCKED_FOR_STAKING]

    Default value: ACCOUNT_TYPE_UNSPECIFIED

    The source account type.

    marketId string

    The identifier of the spot market where the auction is being scheduled.

    toAccountType Various collateral/account types as used by Vega (string)

    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_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, ACCOUNT_TYPE_BUY_BACK_FEES, ACCOUNT_TYPE_REWARD_AVERAGE_NOTIONAL, ACCOUNT_TYPE_REWARD_ELIGIBLE_ENTITIES, ACCOUNT_TYPE_LOCKED_FOR_STAKING]

    Default value: ACCOUNT_TYPE_UNSPECIFIED

    The target account type.

    beginBlock object
    hash string
    height uint64
    timestamp int64
    block The batch or block of transactions that the events relate to (string)
    cancelledOrders object

    Event notifying of multiple orders being cancelled for a given party, on a given market.

    marketId string

    Market ID for the event.

    orderIds string[]

    The order IDs that were cancelled.

    partyId string

    The ID of the party which cancelled the orders.

    chainId string
    checkpoint object
    blockHash string
    blockHeight uint64
    hash string
    coreSnapshotEvent object

    CoreSnapshotData represents the core snapshot data.

    blockHash Hash of the snapshot block (string)
    blockHeight uint64
    coreVersion string

    Semver version number of the core.

    protocolUpgradeBlock Indicates if the snapshot is taken as part of protocol upgrade (boolean)
    delegationBalance object
    amount string
    epochSeq string
    nodeId string
    party string
    deposit object
    amount string

    Amount to be deposited. This field is an unsigned integer scaled to the asset's decimal places.

    asset string

    Vega asset targeted by this deposit.

    createdTimestamp int64

    Timestamp for when the deposit was created on the Vega network.

    creditedTimestamp int64

    Timestamp for when the Vega account was updated with the deposit.

    id string

    Unique ID for the deposit.

    partyId string

    Party ID of the user initiating the deposit.

    status Status of the deposit (string)

    Possible values: [STATUS_UNSPECIFIED, STATUS_OPEN, STATUS_CANCELLED, STATUS_FINALIZED, STATUS_DUPLICATE_REJECTED]

    Default value: STATUS_UNSPECIFIED

    Status of the deposit.

    txHash string

    Hash of the transaction from the foreign chain.

    distressedOrders object
    marketId Market ID for the event (string)
    parties string[]
    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.

    distressedParties string[]
    marketId Market ID for the event (string)
    safeParties string[]
    endBlock object
    height uint64
    epochEvent object
    action Action tells us what action is taking place (string)

    Possible values: [EPOCH_ACTION_UNSPECIFIED, EPOCH_ACTION_START, EPOCH_ACTION_END]

    Default value: EPOCH_ACTION_UNSPECIFIED

    • EPOCH_ACTION_START: Epoch update is for a new epoch.
    • EPOCH_ACTION_END: Epoch update is for the end of an epoch.
    endTime int64
    expireTime int64
    seq uint64
    startTime int64
    erc20MultisigSetThresholdEvent object
    blockNumber uint64
    blockTime int64
    chainId string
    id string
    logIndex uint64
    newThreshold int64
    nonce string
    txHash string
    erc20MultisigSignerAdded object
    chainId string

    EVM chain ID that the multisig control contract lives on.

    epochSeq Epoch that the node was added for (string)
    newSigner Ethereum address of the new signer (string)
    nonce string

    Nonce used.

    signatureId ID of the signature bundle (string)
    submitter Address of the submitter of the transaction (string)
    timestamp int64
    validatorId Node ID of the Vega node to be added (string)
    erc20MultisigSignerEvent object
    blockNumber uint64
    blockTime int64
    chainId string
    id string
    logIndex uint64
    nonce string
    signer string
    txHash string
    type v1ERC20MultiSigSignerEventType (string)

    Possible values: [TYPE_UNSPECIFIED, TYPE_ADDED, TYPE_REMOVED]

    Default value: TYPE_UNSPECIFIED

    erc20MultisigSignerRemoved object
    chainId string

    EVM chain ID that the multisig control contract lives on.

    epochSeq Epoch that the node was removed for (string)
    nonce string

    Nonce used.

    oldSigner Ethereum address of the signer to be removed (string)
    signatureSubmitters object[]
  • Array [
  • signatureId string

    Signature ID of the signer removed.

    submitter Address of the submitter of the transaction (string)
  • ]
  • timestamp int64
    validatorId Node ID of the Vega node which is to be removed (string)
    ethereumKeyRotation object
    blockHeight uint64
    newAddress Ethereum address that is newly associated with the node (string)
    nodeId Node ID of the node that rotated their Ethereum key (string)
    oldAddress Ethereum address that was previously associated with the node (string)
    expiredOrders object
    marketId Market ID for the event (string)
    orderIds string[]
    feesStats object

    Event notifying of an update the fees stats for a market.

    asset string

    Settlement asset of the market.

    epochSeq uint64

    Epoch for which these stats where valid.

    makerFeesGenerated object[]

    Maker fees paid by all trade aggressors, and which makers the fees were paid to.

  • Array [
  • makerFeesPaid object[]

    Amount of maker fees paid by the taker to the maker.

  • Array [
  • amount string

    Amount received.

    party string

    Receiving party ID.

    quantumAmount string

    Amount value in quantum.

  • ]
  • taker string

    Party that paid the fees.

  • ]
  • market Market the fees were paid in (string)
    refereesDiscountApplied object[]

    Total referral discounts applied to all referee taker fees.

  • Array [
  • amount string

    Amount received.

    party string

    Receiving party ID.

    quantumAmount string

    Amount value in quantum.

  • ]
  • referrerRewardsGenerated object[]

    Referral rewards generated by all referee taker fees.

  • Array [
  • generatedReward object[]

    Amount of rewards generated per party.

  • Array [
  • amount string

    Amount received.

    party string

    Receiving party ID.

    quantumAmount string

    Amount value in quantum.

  • ]
  • referrer string

    Referrer party.

  • ]
  • totalFeesPaidAndReceived object[]

    Total trading fees received and paid by the party.

  • Array [
  • amount string

    Amount received.

    party string

    Receiving party ID.

    quantumAmount string

    Amount value in quantum.

  • ]
  • totalMakerFeesReceived object[]

    Total maker fees received by the maker side.

  • Array [
  • amount string

    Amount received.

    party string

    Receiving party ID.

    quantumAmount string

    Amount value in quantum.

  • ]
  • totalRewardsReceived object[]

    Total referral rewards received by the referrer of the referral set.

  • Array [
  • amount string

    Amount received.

    party string

    Receiving party ID.

    quantumAmount string

    Amount value in quantum.

  • ]
  • volumeDiscountApplied object[]

    Total volume discounts applied to all referee taker fees.

  • Array [
  • amount string

    Amount received.

    party string

    Receiving party ID.

    quantumAmount string

    Amount value in quantum.

  • ]
  • fundingPayments object

    Event notifying of funding payments at the end of a funding period.

    marketId string

    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.

  • Array [
  • amount string

    The amount paid, this can be negative for parties who lost at the end of the funding period.

    partyId string

    ID of the party.

  • ]
  • seq uint64

    Sequence number of the funding period associated with these payments.

    fundingPeriod object

    Start or end of a funding period.

    end int64

    Time in Unix nanoseconds when the funding period ended.

    externalTwap string

    TWAP for this period based on the external data-points.

    fundingPayment string

    Funding payment for this period as the difference between the time-weighted average price of the external and internal data point.

    fundingRate string

    Percentage difference between the time-weighted average price of the external and internal data point.

    internalTwap string

    TWAP for this period based on the internal data-points.

    marketId string

    ID of the market for which this funding period relates to.

    seq uint64

    Sequence number of the funding period.

    start int64

    Time in Unix nanoseconds when the funding period started.

    fundingPeriodDataPoint object

    Data point within a funding period.

    dataPointType FundingPeriodDataPointSource (string)

    Possible values: [SOURCE_UNSPECIFIED, SOURCE_EXTERNAL, SOURCE_INTERNAL]

    Default value: SOURCE_UNSPECIFIED

    Origin of the data point.

    marketId string

    Market ID which the data point relates to.

    price string

    Price of the asset as seen by this data point.

    seq uint64

    Sequence number of the funding period this data point belongs to.

    timestamp int64

    Timestamp in Unix nanoseconds of when the data point was received.

    twap string

    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[]
  • Array [
  • epoch int64

    Epoch when these scores were generated.

    gameId string

    Game ID.

    isEligible boolean

    If the party is eligible for a reward for this game based on the current information.

    openVolume string

    Party's current open volume. Only populated if the game has a requirement for it.

    party string

    The party ID.

    rank uint64

    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.

    score string

    Party's current score in the game.

    stakingBalance string

    Party's current staking balance. Only populated if the game has a requirement for it.

    teamId string

    Team the party belongs to. Unset if the party is not part of a team.

    time int64

    Timestamp in Unix nanoseconds when these scores were generated.

    totalFeesPaid string

    Total fees paid by the party during the relevant period.

  • ]
  • teamScores object[]
  • Array [
  • epoch int64

    Epoch when these scores were generated.

    gameId string

    Game ID.

    score string

    Team's current collective score in the game.

    teamId Team ID (string)
    time int64

    Timestamp in Unix nanoseconds when these scores were generated.

  • ]
  • id Unique event ID for the message (string)
    keyRotation object
    blockHeight uint64
    newPubKey Vega public key that is newly associated with the node (string)
    nodeId Node ID of the node that rotated their Vega key (string)
    oldPubKey Vega public key that was previously associated with the node (string)
    ledgerMovements object
    ledgerMovements object[]
  • Array [
  • balances object[]

    Resulting balances once the ledger movement are applied.

  • Array [
  • account object

    Account relating to the transfer.

    assetId string

    Asset ID of the asset for this account.

    marketId string

    Not specified if account is not related to a market.

    owner string

    Not specified if network account.

    type Various collateral/account types as used by Vega (string)

    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_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, ACCOUNT_TYPE_BUY_BACK_FEES, ACCOUNT_TYPE_REWARD_AVERAGE_NOTIONAL, ACCOUNT_TYPE_REWARD_ELIGIBLE_ENTITIES, ACCOUNT_TYPE_LOCKED_FOR_STAKING]

    Default value: ACCOUNT_TYPE_UNSPECIFIED

    Type of the account.

    balance string

    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.

  • Array [
  • amount string

    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.

    assetId string

    Asset ID of the asset for this account.

    marketId string

    Not specified if account is not related to a market.

    owner string

    Not specified if network account.

    type Various collateral/account types as used by Vega (string)

    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_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, ACCOUNT_TYPE_BUY_BACK_FEES, ACCOUNT_TYPE_REWARD_AVERAGE_NOTIONAL, ACCOUNT_TYPE_REWARD_ELIGIBLE_ENTITIES, ACCOUNT_TYPE_LOCKED_FOR_STAKING]

    Default value: ACCOUNT_TYPE_UNSPECIFIED

    Type of the account.

    fromAccountBalance string

    Sender account balance after the transfer. This field is an unsigned integer scaled to the asset's decimal places.

    timestamp int64

    Timestamp in nanoseconds of when the ledger entry was created.

    toAccount object

    One or more accounts to transfer to.

    assetId string

    Asset ID of the asset for this account.

    marketId string

    Not specified if account is not related to a market.

    owner string

    Not specified if network account.

    type Various collateral/account types as used by Vega (string)

    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_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, ACCOUNT_TYPE_BUY_BACK_FEES, ACCOUNT_TYPE_REWARD_AVERAGE_NOTIONAL, ACCOUNT_TYPE_REWARD_ELIGIBLE_ENTITIES, ACCOUNT_TYPE_LOCKED_FOR_STAKING]

    Default value: ACCOUNT_TYPE_UNSPECIFIED

    Type of the account.

    toAccountBalance string

    Receiver account balance after the transfer. This field is an unsigned integer scaled to the asset's decimal places.

    transferId string

    Transfer ID the ledger entry relates to.

    type Transfers can occur between parties on Vega, these are the types that indicate why a transfer took place (string)

    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, TRANSFER_TYPE_TREASURY_FEE_PAY, TRANSFER_TYPE_BUY_BACK_FEE_PAY, TRANSFER_TYPE_HIGH_MAKER_FEE_REBATE_PAY, TRANSFER_TYPE_HIGH_MAKER_FEE_REBATE_RECEIVE]

    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.

  • Array [
  • liquidityOrder object

    Liquidity order from the original submission.

    offset string

    Offset/amount of units away for the order. This field is an unsigned integer scaled using the market's decimal places.

    proportion int64

    Relative proportion of the commitment to be allocated at a price level.

    reference Pegged reference defines which price point a pegged order is linked to - meaning the price for a pegged order is calculated from the value of the reference price point (string)

    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.

    orderId string

    Unique ID of the pegged order generated to fulfil this liquidity order.

  • ]
  • commitmentAmount string

    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.

    createdAt int64

    Timestamp in Unix nanoseconds for when the liquidity provision was created.

    fee string

    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.

    id string

    Unique ID for the liquidity provision.

    marketId string

    Market ID for the liquidity provision.

    partyId string

    Unique party ID for the creator of the provision.

    reference string

    Reference shared between this liquidity provision and all its orders.

    sells object[]

    Set of liquidity sell orders to meet the liquidity provision obligation.

  • Array [
  • liquidityOrder object

    Liquidity order from the original submission.

    offset string

    Offset/amount of units away for the order. This field is an unsigned integer scaled using the market's decimal places.

    proportion int64

    Relative proportion of the commitment to be allocated at a price level.

    reference Pegged reference defines which price point a pegged order is linked to - meaning the price for a pegged order is calculated from the value of the reference price point (string)

    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.

    orderId string

    Unique ID of the pegged order generated to fulfil this liquidity order.

  • ]
  • status vegaLiquidityProvisionStatus (string)

    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.

    updatedAt int64

    Timestamp in Unix nanoseconds for when the liquidity provision was updated.

    version uint64

    Version of this liquidity provision.

    lossSocialization object
    amount Amount distributed (string)
    lossType v1LossSocializationType (string)

    Possible values: [TYPE_UNSPECIFIED, TYPE_SETTLEMENT, TYPE_FUNDING_PAYMENT]

    Default value: TYPE_UNSPECIFIED

    Type of transfer that resulted in loss socialization.

    marketId Market ID for the event (string)
    partyId Party ID (public key) for the event (string)
    marginLevels object
    asset string

    Asset ID for which the margin levels apply.

    collateralReleaseLevel string

    Collateral release level value. This field is an unsigned integer scaled to the asset's decimal places.

    initialMargin string

    Initial margin value. This field is an unsigned integer scaled to the asset's decimal places.

    maintenanceMargin string

    Maintenance margin value. This field is an unsigned integer scaled to the asset's decimal places.

    marginFactor string

    Margin factor, relevant only for isolated margin, 0 otherwise.

    marginMode - MARGIN_MODE_UNSPECIFIED: Never valid. - MARGIN_MODE_CROSS_MARGIN: Cross margin mode - margin is dynamically acquired and released as a position is marked to market - MARGIN_MODE_ISOLATED_MARGIN: Isolated margin mode - margin for any newly opened position volume is transferred to the margin account when the trade is executed (string)

    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.

    marketId string

    Market ID for which the margin levels apply.

    orderMargin string

    Margin required to cover orders in isolated margin mode.

    partyId string

    Party ID for whom the margin levels apply.

    searchLevel string

    Margin search level value. This field is an unsigned integer scaled to the asset's decimal places.

    timestamp int64

    Timestamp in Unix nanoseconds for when the ledger entry was created.

    market object
    marketId Market ID for the event (string)
    payload Payload is a unique information string (string)
    marketCreated object
    allowedEmptyAmmLevels uint64

    Number of allowed price levels between an AMM's fair price and its quote prices. An AMM definition that exceeds this will be rejected at submission.

    allowedSellers string[]
    decimalPlaces uint64

    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'.

    enableTransactionReordering If enabled aggressive orders sent to the market will be delayed by the configured number of blocks (boolean)
    fees object

    Fees configuration that apply to the market.

    factors object

    Fee factors.

    buyBackFee string

    Fees used to purchase governance tokens via regular auctions (network wide).

    infrastructureFee string

    Infrastructure fee charged network wide for staking and governance.

    liquidityFee string

    Liquidity fee applied per market for market making.

    makerFee string

    Market maker fee charged network wide.

    treasuryFee string

    Fees sent to network treasury for later use based on governance actions (network wide).

    liquidityFeeSettings object

    Liquidity fee settings for the market describing how the fee was calculated.

    feeConstant string

    Constant liquidity fee used when using the constant fee method.

    method vegaLiquidityFeeSettingsMethod (string)

    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.

    id string

    Unique ID for the market.

    insurancePoolFraction string

    The fraction of the parent market's insurance pool that this market inherits; range 0 through 1.

    linearSlippageFactor string

    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.

    disposalFraction string

    Fraction of the open position the market will try to close in a single attempt; range 0 through 1.

    disposalSlippageRange string

    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).

    disposalTimeStep int64

    Interval, in seconds, at which the network will attempt to close its position.

    fullDisposalSize uint64

    Size of the position that the network will try to close in a single attempt.

    maxFractionConsumed string

    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.

    auctionExtension int64

    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.

    scalingFactor double

    Specifies scaling factors used in target stake calculation.

    timeWindow int64

    Specifies length of time window expressed in seconds for target stake calculation.

    triggeringRatio string

    Specifies the triggering ratio for entering liquidity auction.

    liquiditySlaParams object

    Liquidity SLA parameters for the market.

    commitmentMinTimeFraction string

    Specifies the minimum fraction of time LPs must spend "on the book" providing their committed liquidity.

    performanceHysteresisEpochs uint64

    Specifies the number of liquidity epochs over which past performance will continue to affect rewards.

    priceRange string
    slaCompetitionFactor string

    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.

    lpPriceRange string

    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.

    cashAmount string

    Cash amount, in asset decimals, used for the calculation of the mark price from the order book.

    compositePriceType vegaCompositePriceType (string)

    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.

  • Array [
  • 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.

    abi string

    The ABI of that contract.

    address string

    Ethereum address of the contract to call.

    args object[]

    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[]
  • Array [
  • conditions object[]

    Conditions that should be matched by the data to be considered of interest.

  • Array [
  • operator ConditionOperator (string)

    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 string

    Value to be compared with by the operator.

  • ]
  • key object

    Data source's data property key targeted by the filter.

    name string

    Name of the property.

    numberDecimalPlaces uint64
    type v1PropertyKeyType (string)

    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.

  • ]
  • method string

    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.

  • Array [
  • expression string
    name string
  • ]
  • requiredConfirmations uint64
    sourceChainId uint64

    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.

    every uint64

    Repeat the call every n seconds after the initial call. If no time for initial call was specified, begin repeating immediately.

    initial uint64

    Trigger when the Ethereum time is greater or equal to this time, in Unix seconds.

    until uint64

    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).

  • Array [
  • conditions object[]

    Conditions that should be matched by the data to be considered of interest.

  • Array [
  • operator ConditionOperator (string)

    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 string

    Value to be compared with by the operator.

  • ]
  • key object

    Data source's data property key targeted by the filter.

    name string

    Name of the property.

    numberDecimalPlaces uint64
    type v1PropertyKeyType (string)

    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.

  • Array [
  • ethAddress object

    In case of an open oracle - Ethereum address will be submitted.

    address string
    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.

    key string
  • ]
  • 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.

  • Array [
  • operator ConditionOperator (string)

    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 string

    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.

  • Array [
  • operator ConditionOperator (string)

    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 string

    Value to be compared with by the operator.

  • ]
  • triggers object[]
  • Array [
  • every int64

    Repeat the trigger every n seconds after the initial. If no time for initial was specified, begin repeating immediately.

    initial int64

    Trigger when the vega time is greater or equal to this time, in Unix seconds.

  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • priceSourceProperty string

    The property name of price.

  • ]
  • decayPower uint64

    Decay power used for the calculation of mark price.

    decayWeight string

    Decay weight used for calculation of mark price.

    sourceStalenessTolerance string[]

    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.

    sourceWeights string[]

    Weights for each composite price data source.

    marketTimestamps object

    Timestamps for when the market state changes.

    close int64

    Time when the market closed.

    open int64

    Time when the market has left the opening auction and is ready to accept trades.

    pending int64

    Time when the market has been voted in and began its opening auction.

    proposed int64

    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 int64

    Duration of the auction in seconds.

    volume uint64

    Target uncrossing trading volume.

    parentMarketId ID of the market this market succeeds (string)
    positionDecimalPlaces int64

    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[]
  • Array [
  • auctionExtension int64

    Price monitoring auction extension duration in seconds should the price breach its theoretical level over the specified horizon at the specified probability level.

    horizon int64

    Price monitoring projection horizon τ in seconds.

    probability string

    Price monitoring probability level p.

  • ]
  • quadraticSlippageFactor string

    Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.

    state Current state of the market (string)

    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.

    successorMarketId string

    ID of the market that succeeds this market if it exists. This will be populated by the system when the successor market is enabled.

    tickSize The market tick size defines the minimum change in quote price for the market (string)
    tradableInstrument object

    Tradable instrument configuration.

    instrument object

    Details for the underlying instrument.

    code string

    Code for the instrument.

    future object

    Future.

    cap object

    If set, this product represents a capped future market.

    binarySettlement boolean

    If set to true, the settlement price must either be zero, or equal to the max price.

    fullyCollateralised boolean

    If set to true, positions must be fully collateralised so there is no default risk for any party.

    maxPrice string

    Set the maximum price for orders, and settlement data in market decimals.

    dataSourceSpecBinding object

    Binding between the data spec and the data source.

    settlementDataProperty string

    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.

    tradingTerminationProperty string

    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.

    createdAt int64
    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.

    abi string

    The ABI of that contract.

    address string

    Ethereum address of the contract to call.

    args object[]

    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[]
  • Array [
  • conditions object[]

    Conditions that should be matched by the data to be considered of interest.

  • Array [
  • operator ConditionOperator (string)

    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 string

    Value to be compared with by the operator.

  • ]
  • key object

    Data source's data property key targeted by the filter.

    name string

    Name of the property.

    numberDecimalPlaces uint64
    type v1PropertyKeyType (string)

    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.

  • ]
  • method string

    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.

  • Array [
  • expression string
    name string
  • ]
  • requiredConfirmations uint64
    sourceChainId uint64

    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.

    every uint64

    Repeat the call every n seconds after the initial call. If no time for initial call was specified, begin repeating immediately.

    initial uint64

    Trigger when the Ethereum time is greater or equal to this time, in Unix seconds.

    until uint64

    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).

  • Array [
  • conditions object[]

    Conditions that should be matched by the data to be considered of interest.

  • Array [
  • operator ConditionOperator (string)

    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 string

    Value to be compared with by the operator.

  • ]
  • key object

    Data source's data property key targeted by the filter.

    name string

    Name of the property.

    numberDecimalPlaces uint64
    type v1PropertyKeyType (string)

    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.

  • Array [
  • ethAddress object

    In case of an open oracle - Ethereum address will be submitted.

    address string
    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.

    key string
  • ]
  • 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.

  • Array [
  • operator ConditionOperator (string)

    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 string

    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.

  • Array [
  • operator ConditionOperator (string)

    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 string

    Value to be compared with by the operator.

  • ]
  • triggers object[]
  • Array [
  • every int64

    Repeat the trigger every n seconds after the initial. If no time for initial was specified, begin repeating immediately.

    initial int64

    Trigger when the vega time is greater or equal to this time, in Unix seconds.

  • ]
  • id string

    Hash generated from the DataSpec data.

    status Status describes the status of the data source spec (string)

    Possible values: [STATUS_UNSPECIFIED, STATUS_ACTIVE, STATUS_DEACTIVATED]

    Default value: STATUS_UNSPECIFIED

    • 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.
    updatedAt int64
    dataSourceSpecForTradingTermination object

    Data source specification that describes the trading termination data source filter.

    createdAt int64
    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.

    abi string

    The ABI of that contract.

    address string

    Ethereum address of the contract to call.

    args object[]

    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[]
  • Array [
  • conditions object[]

    Conditions that should be matched by the data to be considered of interest.

  • Array [
  • operator ConditionOperator (string)

    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 string

    Value to be compared with by the operator.

  • ]
  • key object

    Data source's data property key targeted by the filter.

    name string

    Name of the property.

    numberDecimalPlaces uint64
    type v1PropertyKeyType (string)

    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.

  • ]
  • method string

    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.

  • Array [
  • expression string
    name string
  • ]
  • requiredConfirmations uint64
    sourceChainId uint64

    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.

    every uint64

    Repeat the call every n seconds after the initial call. If no time for initial call was specified, begin repeating immediately.

    initial uint64

    Trigger when the Ethereum time is greater or equal to this time, in Unix seconds.

    until uint64

    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).

  • Array [
  • conditions object[]

    Conditions that should be matched by the data to be considered of interest.

  • Array [
  • operator ConditionOperator (string)

    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 string

    Value to be compared with by the operator.

  • ]
  • key object

    Data source's data property key targeted by the filter.

    name string

    Name of the property.

    numberDecimalPlaces uint64
    type v1PropertyKeyType (string)

    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.

  • Array [
  • ethAddress object

    In case of an open oracle - Ethereum address will be submitted.

    address string
    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.

    key string
  • ]
  • 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.

  • Array [
  • operator ConditionOperator (string)

    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 string

    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.

  • Array [
  • operator ConditionOperator (string)

    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 string

    Value to be compared with by the operator.

  • ]
  • triggers object[]
  • Array [
  • every int64

    Repeat the trigger every n seconds after the initial. If no time for initial was specified, begin repeating immediately.

    initial int64

    Trigger when the vega time is greater or equal to this time, in Unix seconds.

  • ]
  • id string

    Hash generated from the DataSpec data.

    status Status describes the status of the data source spec (string)

    Possible values: [STATUS_UNSPECIFIED, STATUS_ACTIVE, STATUS_DEACTIVATED]

    Default value: STATUS_UNSPECIFIED

    • 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.
    updatedAt int64
    quoteName string

    Quote name of the instrument.

    settlementAsset string

    Underlying asset for the future.

    id string

    Unique instrument ID.

    metadata object

    Collection of instrument meta-data.

    tags string[]

    List of 0 or more tags.

    name string

    Name of the instrument.

    perpetual object

    Perpetual.

    clampLowerBound string

    Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].

    clampUpperBound string

    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.

    settlementDataProperty string

    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.

    settlementScheduleProperty string

    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.

    createdAt int64
    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.

    abi string

    The ABI of that contract.

    address string

    Ethereum address of the contract to call.

    args object[]

    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[]
  • Array [
  • conditions object[]

    Conditions that should be matched by the data to be considered of interest.

  • Array [
  • operator ConditionOperator (string)

    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 string

    Value to be compared with by the operator.

  • ]
  • key object

    Data source's data property key targeted by the filter.

    name string

    Name of the property.

    numberDecimalPlaces uint64
    type v1PropertyKeyType (string)

    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.

  • ]
  • method string

    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.

  • Array [
  • expression string
    name string
  • ]
  • requiredConfirmations uint64
    sourceChainId uint64

    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.

    every uint64

    Repeat the call every n seconds after the initial call. If no time for initial call was specified, begin repeating immediately.

    initial uint64

    Trigger when the Ethereum time is greater or equal to this time, in Unix seconds.

    until uint64

    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).

  • Array [
  • conditions object[]

    Conditions that should be matched by the data to be considered of interest.

  • Array [
  • operator ConditionOperator (string)

    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 string

    Value to be compared with by the operator.

  • ]
  • key object

    Data source's data property key targeted by the filter.

    name string

    Name of the property.

    numberDecimalPlaces uint64
    type v1PropertyKeyType (string)

    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.

  • Array [
  • ethAddress object

    In case of an open oracle - Ethereum address will be submitted.

    address string
    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.

    key string
  • ]
  • 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.

  • Array [
  • operator ConditionOperator (string)

    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 string

    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.

  • Array [
  • operator ConditionOperator (string)

    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 string

    Value to be compared with by the operator.

  • ]
  • triggers object[]
  • Array [
  • every int64

    Repeat the trigger every n seconds after the initial. If no time for initial was specified, begin repeating immediately.

    initial int64

    Trigger when the vega time is greater or equal to this time, in Unix seconds.

  • ]
  • id string

    Hash generated from the DataSpec data.

    status Status describes the status of the data source spec (string)

    Possible values: [STATUS_UNSPECIFIED, STATUS_ACTIVE, STATUS_DEACTIVATED]

    Default value: STATUS_UNSPECIFIED

    • 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.
    updatedAt int64
    dataSourceSpecForSettlementSchedule object

    Data source spec describing the data source for settlement schedule.

    createdAt int64
    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.

    abi string

    The ABI of that contract.

    address string

    Ethereum address of the contract to call.

    args object[]

    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[]
  • Array [
  • conditions object[]

    Conditions that should be matched by the data to be considered of interest.

  • Array [
  • operator ConditionOperator (string)

    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 string

    Value to be compared with by the operator.

  • ]
  • key object

    Data source's data property key targeted by the filter.

    name string

    Name of the property.

    numberDecimalPlaces uint64
    type v1PropertyKeyType (string)

    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.

  • ]
  • method string

    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.

  • Array [
  • expression string
    name string
  • ]
  • requiredConfirmations uint64
    sourceChainId uint64

    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.

    every uint64

    Repeat the call every n seconds after the initial call. If no time for initial call was specified, begin repeating immediately.

    initial uint64

    Trigger when the Ethereum time is greater or equal to this time, in Unix seconds.

    until uint64

    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).

  • Array [
  • conditions object[]

    Conditions that should be matched by the data to be considered of interest.

  • Array [
  • operator ConditionOperator (string)

    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 string

    Value to be compared with by the operator.

  • ]
  • key object

    Data source's data property key targeted by the filter.

    name string

    Name of the property.

    numberDecimalPlaces uint64
    type v1PropertyKeyType (string)

    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.

  • Array [
  • ethAddress object

    In case of an open oracle - Ethereum address will be submitted.

    address string
    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.

    key string
  • ]
  • 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.

  • Array [
  • operator ConditionOperator (string)

    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 string

    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.

  • Array [
  • operator ConditionOperator (string)

    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 string

    Value to be compared with by the operator.

  • ]
  • triggers object[]
  • Array [
  • every int64

    Repeat the trigger every n seconds after the initial. If no time for initial was specified, begin repeating immediately.

    initial int64

    Trigger when the vega time is greater or equal to this time, in Unix seconds.

  • ]
  • id string

    Hash generated from the DataSpec data.

    status Status describes the status of the data source spec (string)

    Possible values: [STATUS_UNSPECIFIED, STATUS_ACTIVE, STATUS_DEACTIVATED]

    Default value: STATUS_UNSPECIFIED

    • 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.
    updatedAt int64
    fundingRateLowerBound string

    Lower bound for the funding-rate such that the funding-rate will never be lower than this value.

    fundingRateScalingFactor string

    Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.

    fundingRateUpperBound string

    Upper bound for the funding-rate such that the funding-rate will never be higher than this value.

    interestRate string

    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.

    cashAmount string

    Cash amount, in asset decimals, used for the calculation of the mark price from the order book.

    compositePriceType vegaCompositePriceType (string)

    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.

  • Array [
  • 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.

    abi string

    The ABI of that contract.

    address string

    Ethereum address of the contract to call.

    args object[]

    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[]
  • Array [
  • conditions object[]

    Conditions that should be matched by the data to be considered of interest.

  • Array [
  • operator ConditionOperator (string)

    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 string

    Value to be compared with by the operator.

  • ]
  • key object

    Data source's data property key targeted by the filter.

    name string

    Name of the property.

    numberDecimalPlaces uint64
    type v1PropertyKeyType (string)

    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.

  • ]
  • method string

    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.

  • Array [
  • expression string
    name string
  • ]
  • requiredConfirmations uint64
    sourceChainId uint64

    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.

    every uint64

    Repeat the call every n seconds after the initial call. If no time for initial call was specified, begin repeating immediately.

    initial uint64

    Trigger when the Ethereum time is greater or equal to this time, in Unix seconds.

    until uint64

    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).

  • Array [
  • conditions object[]

    Conditions that should be matched by the data to be considered of interest.

  • Array [
  • operator ConditionOperator (string)

    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 string

    Value to be compared with by the operator.

  • ]
  • key object

    Data source's data property key targeted by the filter.

    name string

    Name of the property.

    numberDecimalPlaces uint64
    type v1PropertyKeyType (string)

    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.

  • Array [
  • ethAddress object

    In case of an open oracle - Ethereum address will be submitted.

    address string
    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.

    key string
  • ]
  • 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.

  • Array [
  • operator ConditionOperator (string)

    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 string

    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.

  • Array [
  • operator ConditionOperator (string)

    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 string

    Value to be compared with by the operator.

  • ]
  • triggers object[]
  • Array [
  • every int64

    Repeat the trigger every n seconds after the initial. If no time for initial was specified, begin repeating immediately.

    initial int64

    Trigger when the vega time is greater or equal to this time, in Unix seconds.

  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • priceSourceProperty string

    The property name of price.

  • ]
  • decayPower uint64

    Decay power used for the calculation of mark price.

    decayWeight string

    Decay weight used for calculation of mark price.

    sourceStalenessTolerance string[]

    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.

    sourceWeights string[]

    Weights for each composite price data source.

    marginFundingFactor string

    Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].

    quoteName string

    Quote name of the instrument.

    settlementAsset string

    Underlying asset for the perpetual.

    spot object

    Spot.

    baseAsset string

    Asset ID of the underlying base asset for the spot product.

    quoteAsset string

    Asset ID of the underlying quote asset for the spot product.

    logNormalRiskModel object

    Log normal.

    params object

    Risk model parameters for log normal.

    mu double

    Mu parameter, annualised growth rate of the underlying asset.

    r double

    R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.

    sigma double

    Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.

    riskAversionParameter double

    Risk Aversion Parameter.

    riskFactorOverride object

    And optional override for the risk factor calculated by the risk model.

    long string

    Long Risk factor value.

    short string

    Short Risk factor value.

    tau double

    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.

    fullyCollateralised boolean

    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.

    collateralRelease double

    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.

    initialMargin double

    Initial margin level. This is the minimum amount of collateral required to open a position in a market that requires margin.

    searchLevel double

    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.

    factorLong double

    Pre-defined risk factor value for long.

    factorShort double

    Pre-defined risk factor value for short.

    maxMoveUp double

    Pre-defined maximum price move up that the model considers as valid.

    minMoveDown double

    Pre-defined minimum price move down that the model considers as valid.

    probabilityOfTrading double

    Pre-defined constant probability of trading.

    tradingMode Trading mode the market is currently running, also referred to as 'market state' (string)

    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, TRADING_MODE_PROTOCOL_AUTOMATED_PURCHASE_AUCTION]

    Default value: TRADING_MODE_UNSPECIFIED

    Current mode of execution of the market.

    marketData object
    activeProtocolAutomatedPurchase object

    Optional information on the active protocol automated purchase for the market - only applies to spot markets.

    id Identifier of the active protocol automated purchase (string)
    orderId Identifier of the active order for protocol automated purchase if any (string)
    auctionEnd int64

    Time in seconds until the end of the auction (zero if currently not in auction period).

    auctionStart int64

    Time until next auction, or start time of the current auction if market is in auction period.

    bestBidPrice string

    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.

    bestBidVolume uint64

    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.

    bestOfferPrice string

    Lowest price level on an order book for offer orders. This field is an unsigned integer scaled to the market's decimal places.

    bestOfferVolume uint64

    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.

    bestStaticBidPrice string

    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.

    bestStaticBidVolume uint64

    Total volume at the best static bid price excluding pegged orders.

    bestStaticOfferPrice string

    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.

    bestStaticOfferVolume uint64

    Total volume at the best static offer price, excluding pegged orders.

    extensionTrigger Auction triggers indicate what condition triggered an auction (if market is in auction mode) (string)

    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, AUCTION_TRIGGER_PROTOCOL_AUTOMATED_PURCHASE]

    Default value: AUCTION_TRIGGER_UNSPECIFIED

    When a market auction is extended, this field indicates what caused the extension.

    indicativePrice string

    Indicative price (zero if not in auction). This field is an unsigned scaled to the market's decimal places.

    indicativeVolume uint64

    Indicative volume (zero if not in auction).

    lastTradedPrice string

    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.

  • Array [
  • averageEntryValuation string

    Average entry valuation of the liquidity provider for the market.

    averageScore string

    Average liquidity score.

    equityLikeShare string

    Share own by this liquidity provider.

    party string

    Liquidity provider party ID.

    virtualStake string

    The virtual stake of this liquidity provider.

  • ]
  • liquidityProviderSla object[]

    SLA performance for each liquidity provider.

  • Array [
  • currentEpochFractionOfTimeOnBook string

    Indicates how often LP meets the commitment during the current epoch.

    hysteresisPeriodFeePenalties string[]

    Determines how the fee penalties from past epochs affect future fee revenue.

    lastEpochBondPenalty string

    Shows the bond penalties from past epochs.

    lastEpochFeePenalty string

    Indicates the fee penalty amount applied in the previous epoch.

    lastEpochFractionOfTimeOnBook string

    Indicates how often LP met the commitment in the previous epoch.

    notionalVolumeBuys string

    Notional volume of orders within the range provided on the buy side of the book.

    notionalVolumeSells string

    Notional volume of orders within the range provided on the sell side of the book.

    party string

    Liquidity provider party ID.

    requiredLiquidity string

    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.

  • ]
  • markPrice string

    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[]
  • Array [
  • lastUpdated int64

    Timestamp in Unix nanoseconds when the price source was last updated.

    price string

    Current value of the composite source price.

    priceSource string

    Source of the price.

  • ]
  • markPriceType vegaCompositePriceType (string)

    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 Market ID for the data (string)
    marketGrowth string

    Market growth at the last market time window.

    marketState Current state of the market (string)

    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.

    marketTradingMode Trading mode the market is currently running, also referred to as 'market state' (string)

    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, TRADING_MODE_PROTOCOL_AUTOMATED_PURCHASE_AUCTION]

    Default value: TRADING_MODE_UNSPECIFIED

    Current trading mode for the market.

    marketValueProxy string

    Market value proxy.

    midPrice string

    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.

    nextMarkToMarket int64

    Time in Unix nanoseconds when the next mark-to-market calculation will occur.

    nextNetworkCloseout int64

    Time in Unix nanoseconds when the market will next submit a trade to reduce its position.

    openInterest uint64

    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.

  • Array [
  • active boolean

    Has this bound been triggered yet or is it still active.

    maxValidPrice string

    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.

    minValidPrice string

    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.

    referencePrice string

    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.

    auctionExtension int64

    Price monitoring auction extension duration in seconds should the price breach its theoretical level over the specified horizon at the specified probability level.

    horizon int64

    Price monitoring projection horizon τ in seconds.

    probability string

    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.

    externalTwap string

    Time-weighted-average the external data points for the in-progress funding period.

    fundingPayment string

    Current funding payment for the in-progress funding period.

    fundingRate string

    Current funding rate for the in-progress funding period.

    internalCompositePrice string

    The internal composite price used for perpetual markets.

    internalCompositePriceState object

    State of the internal composite price.

    priceSources object[]
  • Array [
  • lastUpdated int64

    Timestamp in Unix nanoseconds when the price source was last updated.

    price string

    Current value of the composite source price.

    priceSource string

    Source of the price.

  • ]
  • internalCompositePriceType vegaCompositePriceType (string)

    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.

    internalTwap string

    Time-weighted-average the internal data-points for the in-progress funding period.

    nextInternalCompositePriceCalc int64

    The next time the internal composite price is calculated for the perpetual market, in Unix nanoseconds.

    seqNum uint64
    startTime int64
    underlyingIndexPrice string

    Last seen value of the settlement oracle.

    staticMidPrice string

    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.

    suppliedStake string

    Available stake for the given market. This field is an unsigned integer scaled to the settlement asset's decimal places.

    targetStake string

    Targeted stake for the given market. This field is an unsigned integer scaled to the settlement asset's decimal places.

    timestamp int64

    Timestamp in Unix nanoseconds at which this mark price was relevant.

    trigger Auction triggers indicate what condition triggered an auction (if market is in auction mode) (string)

    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, AUCTION_TRIGGER_PROTOCOL_AUTOMATED_PURCHASE]

    Default value: AUCTION_TRIGGER_UNSPECIFIED

    When a market is in an auction trading mode, this field indicates what triggered the auction.

    marketTick object
    id Market ID for the event (string)
    time int64
    marketUpdated object
    allowedEmptyAmmLevels uint64

    Number of allowed price levels between an AMM's fair price and its quote prices. An AMM definition that exceeds this will be rejected at submission.

    allowedSellers string[]
    decimalPlaces uint64

    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'.

    enableTransactionReordering If enabled aggressive orders sent to the market will be delayed by the configured number of blocks (boolean)
    fees object

    Fees configuration that apply to the market.

    factors object

    Fee factors.

    buyBackFee string

    Fees used to purchase governance tokens via regular auctions (network wide).

    infrastructureFee string

    Infrastructure fee charged network wide for staking and governance.

    liquidityFee string

    Liquidity fee applied per market for market making.

    makerFee string

    Market maker fee charged network wide.

    treasuryFee string

    Fees sent to network treasury for later use based on governance actions (network wide).

    liquidityFeeSettings object

    Liquidity fee settings for the market describing how the fee was calculated.

    feeConstant string

    Constant liquidity fee used when using the constant fee method.

    method vegaLiquidityFeeSettingsMethod (string)

    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.

    id string

    Unique ID for the market.

    insurancePoolFraction string

    The fraction of the parent market's insurance pool that this market inherits; range 0 through 1.

    linearSlippageFactor string

    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.

    disposalFraction string

    Fraction of the open position the market will try to close in a single attempt; range 0 through 1.

    disposalSlippageRange string

    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).

    disposalTimeStep int64

    Interval, in seconds, at which the network will attempt to close its position.

    fullDisposalSize uint64

    Size of the position that the network will try to close in a single attempt.

    maxFractionConsumed string

    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.

    auctionExtension int64

    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.

    scalingFactor double

    Specifies scaling factors used in target stake calculation.

    timeWindow int64

    Specifies length of time window expressed in seconds for target stake calculation.

    triggeringRatio string

    Specifies the triggering ratio for entering liquidity auction.

    liquiditySlaParams object

    Liquidity SLA parameters for the market.

    commitmentMinTimeFraction string

    Specifies the minimum fraction of time LPs must spend "on the book" providing their committed liquidity.

    performanceHysteresisEpochs uint64

    Specifies the number of liquidity epochs over which past performance will continue to affect rewards.

    priceRange string
    slaCompetitionFactor string

    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.

    lpPriceRange string

    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.

    cashAmount string

    Cash amount, in asset decimals, used for the calculation of the mark price from the order book.

    compositePriceType vegaCompositePriceType (string)

    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.

  • Array [
  • 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.

    abi string

    The ABI of that contract.

    address string

    Ethereum address of the contract to call.

    args object[]

    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[]
  • Array [
  • conditions object[]

    Conditions that should be matched by the data to be considered of interest.

  • Array [
  • operator ConditionOperator (string)

    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 string

    Value to be compared with by the operator.

  • ]
  • key object

    Data source's data property key targeted by the filter.

    name string

    Name of the property.

    numberDecimalPlaces uint64
    type v1PropertyKeyType (string)

    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.

  • ]
  • method string

    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.

  • Array [
  • expression string
    name string
  • ]
  • requiredConfirmations uint64
    sourceChainId uint64

    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.

    every uint64

    Repeat the call every n seconds after the initial call. If no time for initial call was specified, begin repeating immediately.

    initial uint64

    Trigger when the Ethereum time is greater or equal to this time, in Unix seconds.

    until uint64

    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).

  • Array [
  • conditions object[]

    Conditions that should be matched by the data to be considered of interest.

  • Array [
  • operator ConditionOperator (string)

    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 string

    Value to be compared with by the operator.

  • ]
  • key object

    Data source's data property key targeted by the filter.

    name string

    Name of the property.

    numberDecimalPlaces uint64
    type v1PropertyKeyType (string)

    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.

  • Array [
  • ethAddress object

    In case of an open oracle - Ethereum address will be submitted.

    address string
    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.

    key string
  • ]
  • 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.

  • Array [
  • operator ConditionOperator (string)

    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 string

    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.

  • Array [
  • operator ConditionOperator (string)

    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 string

    Value to be compared with by the operator.

  • ]
  • triggers object[]
  • Array [
  • every int64

    Repeat the trigger every n seconds after the initial. If no time for initial was specified, begin repeating immediately.

    initial int64

    Trigger when the vega time is greater or equal to this time, in Unix seconds.

  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • priceSourceProperty string

    The property name of price.

  • ]
  • decayPower uint64

    Decay power used for the calculation of mark price.

    decayWeight string

    Decay weight used for calculation of mark price.

    sourceStalenessTolerance string[]

    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.

    sourceWeights string[]

    Weights for each composite price data source.

    marketTimestamps object

    Timestamps for when the market state changes.

    close int64

    Time when the market closed.

    open int64

    Time when the market has left the opening auction and is ready to accept trades.

    pending int64

    Time when the market has been voted in and began its opening auction.

    proposed int64

    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 int64

    Duration of the auction in seconds.

    volume uint64

    Target uncrossing trading volume.

    parentMarketId ID of the market this market succeeds (string)
    positionDecimalPlaces int64

    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[]
  • Array [
  • auctionExtension int64

    Price monitoring auction extension duration in seconds should the price breach its theoretical level over the specified horizon at the specified probability level.

    horizon int64

    Price monitoring projection horizon τ in seconds.

    probability string

    Price monitoring probability level p.

  • ]
  • quadraticSlippageFactor string

    Quadratic slippage factor is used to cap the slippage component of maintenance margin - it is applied to the square of the slippage volume.

    state Current state of the market (string)

    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.

    successorMarketId string

    ID of the market that succeeds this market if it exists. This will be populated by the system when the successor market is enabled.

    tickSize The market tick size defines the minimum change in quote price for the market (string)
    tradableInstrument object

    Tradable instrument configuration.

    instrument object

    Details for the underlying instrument.

    code string

    Code for the instrument.

    future object

    Future.

    cap object

    If set, this product represents a capped future market.

    binarySettlement boolean

    If set to true, the settlement price must either be zero, or equal to the max price.

    fullyCollateralised boolean

    If set to true, positions must be fully collateralised so there is no default risk for any party.

    maxPrice string

    Set the maximum price for orders, and settlement data in market decimals.

    dataSourceSpecBinding object

    Binding between the data spec and the data source.

    settlementDataProperty string

    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.

    tradingTerminationProperty string

    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.

    createdAt int64
    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.

    abi string

    The ABI of that contract.

    address string

    Ethereum address of the contract to call.

    args object[]

    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[]
  • Array [
  • conditions object[]

    Conditions that should be matched by the data to be considered of interest.

  • Array [
  • operator ConditionOperator (string)

    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 string

    Value to be compared with by the operator.

  • ]
  • key object

    Data source's data property key targeted by the filter.

    name string

    Name of the property.

    numberDecimalPlaces uint64
    type v1PropertyKeyType (string)

    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.

  • ]
  • method string

    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.

  • Array [
  • expression string
    name string
  • ]
  • requiredConfirmations uint64
    sourceChainId uint64

    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.

    every uint64

    Repeat the call every n seconds after the initial call. If no time for initial call was specified, begin repeating immediately.

    initial uint64

    Trigger when the Ethereum time is greater or equal to this time, in Unix seconds.

    until uint64

    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).

  • Array [
  • conditions object[]

    Conditions that should be matched by the data to be considered of interest.

  • Array [
  • operator ConditionOperator (string)

    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 string

    Value to be compared with by the operator.

  • ]
  • key object

    Data source's data property key targeted by the filter.

    name string

    Name of the property.

    numberDecimalPlaces uint64
    type v1PropertyKeyType (string)

    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.

  • Array [
  • ethAddress object

    In case of an open oracle - Ethereum address will be submitted.

    address string
    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.

    key string
  • ]
  • 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.

  • Array [
  • operator ConditionOperator (string)

    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 string

    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.

  • Array [
  • operator ConditionOperator (string)

    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 string

    Value to be compared with by the operator.

  • ]
  • triggers object[]
  • Array [
  • every int64

    Repeat the trigger every n seconds after the initial. If no time for initial was specified, begin repeating immediately.

    initial int64

    Trigger when the vega time is greater or equal to this time, in Unix seconds.

  • ]
  • id string

    Hash generated from the DataSpec data.

    status Status describes the status of the data source spec (string)

    Possible values: [STATUS_UNSPECIFIED, STATUS_ACTIVE, STATUS_DEACTIVATED]

    Default value: STATUS_UNSPECIFIED

    • 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.
    updatedAt int64
    dataSourceSpecForTradingTermination object

    Data source specification that describes the trading termination data source filter.

    createdAt int64
    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.

    abi string

    The ABI of that contract.

    address string

    Ethereum address of the contract to call.

    args object[]

    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[]
  • Array [
  • conditions object[]

    Conditions that should be matched by the data to be considered of interest.

  • Array [
  • operator ConditionOperator (string)

    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 string

    Value to be compared with by the operator.

  • ]
  • key object

    Data source's data property key targeted by the filter.

    name string

    Name of the property.

    numberDecimalPlaces uint64
    type v1PropertyKeyType (string)

    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.

  • ]
  • method string

    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.

  • Array [
  • expression string
    name string
  • ]
  • requiredConfirmations uint64
    sourceChainId uint64

    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.

    every uint64

    Repeat the call every n seconds after the initial call. If no time for initial call was specified, begin repeating immediately.

    initial uint64

    Trigger when the Ethereum time is greater or equal to this time, in Unix seconds.

    until uint64

    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).

  • Array [
  • conditions object[]

    Conditions that should be matched by the data to be considered of interest.

  • Array [
  • operator ConditionOperator (string)

    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 string

    Value to be compared with by the operator.

  • ]
  • key object

    Data source's data property key targeted by the filter.

    name string

    Name of the property.

    numberDecimalPlaces uint64
    type v1PropertyKeyType (string)

    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.

  • Array [
  • ethAddress object

    In case of an open oracle - Ethereum address will be submitted.

    address string
    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.

    key string
  • ]
  • 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.

  • Array [
  • operator ConditionOperator (string)

    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 string

    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.

  • Array [
  • operator ConditionOperator (string)

    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 string

    Value to be compared with by the operator.

  • ]
  • triggers object[]
  • Array [
  • every int64

    Repeat the trigger every n seconds after the initial. If no time for initial was specified, begin repeating immediately.

    initial int64

    Trigger when the vega time is greater or equal to this time, in Unix seconds.

  • ]
  • id string

    Hash generated from the DataSpec data.

    status Status describes the status of the data source spec (string)

    Possible values: [STATUS_UNSPECIFIED, STATUS_ACTIVE, STATUS_DEACTIVATED]

    Default value: STATUS_UNSPECIFIED

    • 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.
    updatedAt int64
    quoteName string

    Quote name of the instrument.

    settlementAsset string

    Underlying asset for the future.

    id string

    Unique instrument ID.

    metadata object

    Collection of instrument meta-data.

    tags string[]

    List of 0 or more tags.

    name string

    Name of the instrument.

    perpetual object

    Perpetual.

    clampLowerBound string

    Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].

    clampUpperBound string

    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.

    settlementDataProperty string

    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.

    settlementScheduleProperty string

    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.

    createdAt int64
    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.

    abi string

    The ABI of that contract.

    address string

    Ethereum address of the contract to call.

    args object[]

    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[]
  • Array [
  • conditions object[]

    Conditions that should be matched by the data to be considered of interest.

  • Array [
  • operator ConditionOperator (string)

    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 string

    Value to be compared with by the operator.

  • ]
  • key object

    Data source's data property key targeted by the filter.

    name string

    Name of the property.

    numberDecimalPlaces uint64
    type v1PropertyKeyType (string)

    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.

  • ]
  • method string

    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.

  • Array [
  • expression string
    name string
  • ]
  • requiredConfirmations uint64
    sourceChainId uint64

    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.

    every uint64

    Repeat the call every n seconds after the initial call. If no time for initial call was specified, begin repeating immediately.

    initial uint64

    Trigger when the Ethereum time is greater or equal to this time, in Unix seconds.

    until uint64

    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).

  • Array [
  • conditions object[]

    Conditions that should be matched by the data to be considered of interest.

  • Array [
  • operator ConditionOperator (string)

    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 string

    Value to be compared with by the operator.

  • ]
  • key object

    Data source's data property key targeted by the filter.

    name string

    Name of the property.

    numberDecimalPlaces uint64
    type v1PropertyKeyType (string)

    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.

  • Array [
  • ethAddress object

    In case of an open oracle - Ethereum address will be submitted.

    address string
    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.

    key string
  • ]
  • 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.

  • Array [
  • operator ConditionOperator (string)

    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 string

    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.

  • Array [
  • operator ConditionOperator (string)

    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 string

    Value to be compared with by the operator.

  • ]
  • triggers object[]
  • Array [
  • every int64

    Repeat the trigger every n seconds after the initial. If no time for initial was specified, begin repeating immediately.

    initial int64

    Trigger when the vega time is greater or equal to this time, in Unix seconds.

  • ]
  • id string

    Hash generated from the DataSpec data.

    status Status describes the status of the data source spec (string)

    Possible values: [STATUS_UNSPECIFIED, STATUS_ACTIVE, STATUS_DEACTIVATED]

    Default value: STATUS_UNSPECIFIED

    • 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.
    updatedAt int64
    dataSourceSpecForSettlementSchedule object

    Data source spec describing the data source for settlement schedule.

    createdAt int64
    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.

    abi string

    The ABI of that contract.

    address string

    Ethereum address of the contract to call.

    args object[]

    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[]
  • Array [
  • conditions object[]

    Conditions that should be matched by the data to be considered of interest.

  • Array [
  • operator ConditionOperator (string)

    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 string

    Value to be compared with by the operator.

  • ]
  • key object

    Data source's data property key targeted by the filter.

    name string

    Name of the property.

    numberDecimalPlaces uint64
    type v1PropertyKeyType (string)

    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.

  • ]
  • method string

    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.

  • Array [
  • expression string
    name string
  • ]
  • requiredConfirmations uint64
    sourceChainId uint64

    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.

    every uint64

    Repeat the call every n seconds after the initial call. If no time for initial call was specified, begin repeating immediately.

    initial uint64

    Trigger when the Ethereum time is greater or equal to this time, in Unix seconds.

    until uint64

    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).

  • Array [
  • conditions object[]

    Conditions that should be matched by the data to be considered of interest.

  • Array [
  • operator ConditionOperator (string)

    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 string

    Value to be compared with by the operator.

  • ]
  • key object

    Data source's data property key targeted by the filter.

    name string

    Name of the property.

    numberDecimalPlaces uint64
    type v1PropertyKeyType (string)

    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.

  • Array [
  • ethAddress object

    In case of an open oracle - Ethereum address will be submitted.

    address string
    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.

    key string
  • ]
  • 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.

  • Array [
  • operator ConditionOperator (string)

    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 string

    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.

  • Array [
  • operator ConditionOperator (string)

    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 string

    Value to be compared with by the operator.

  • ]
  • triggers object[]
  • Array [
  • every int64

    Repeat the trigger every n seconds after the initial. If no time for initial was specified, begin repeating immediately.

    initial int64

    Trigger when the vega time is greater or equal to this time, in Unix seconds.

  • ]
  • id string

    Hash generated from the DataSpec data.

    status Status describes the status of the data source spec (string)

    Possible values: [STATUS_UNSPECIFIED, STATUS_ACTIVE, STATUS_DEACTIVATED]

    Default value: STATUS_UNSPECIFIED

    • 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.
    updatedAt int64
    fundingRateLowerBound string

    Lower bound for the funding-rate such that the funding-rate will never be lower than this value.

    fundingRateScalingFactor string

    Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.

    fundingRateUpperBound string

    Upper bound for the funding-rate such that the funding-rate will never be higher than this value.

    interestRate string

    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.

    cashAmount string

    Cash amount, in asset decimals, used for the calculation of the mark price from the order book.

    compositePriceType vegaCompositePriceType (string)

    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.

  • Array [
  • 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.

    abi string

    The ABI of that contract.

    address string

    Ethereum address of the contract to call.

    args object[]

    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[]
  • Array [
  • conditions object[]

    Conditions that should be matched by the data to be considered of interest.

  • Array [
  • operator ConditionOperator (string)

    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 string

    Value to be compared with by the operator.

  • ]
  • key object

    Data source's data property key targeted by the filter.

    name string

    Name of the property.

    numberDecimalPlaces uint64
    type v1PropertyKeyType (string)

    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.

  • ]
  • method string

    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.

  • Array [
  • expression string
    name string
  • ]
  • requiredConfirmations uint64
    sourceChainId uint64

    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.

    every uint64

    Repeat the call every n seconds after the initial call. If no time for initial call was specified, begin repeating immediately.

    initial uint64

    Trigger when the Ethereum time is greater or equal to this time, in Unix seconds.

    until uint64

    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).

  • Array [
  • conditions object[]

    Conditions that should be matched by the data to be considered of interest.

  • Array [
  • operator ConditionOperator (string)

    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 string

    Value to be compared with by the operator.

  • ]
  • key object

    Data source's data property key targeted by the filter.

    name string

    Name of the property.

    numberDecimalPlaces uint64
    type v1PropertyKeyType (string)

    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.

  • Array [
  • ethAddress object

    In case of an open oracle - Ethereum address will be submitted.

    address string
    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.

    key string
  • ]
  • 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.

  • Array [
  • operator ConditionOperator (string)

    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 string

    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.

  • Array [
  • operator ConditionOperator (string)

    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 string

    Value to be compared with by the operator.

  • ]
  • triggers object[]
  • Array [
  • every int64

    Repeat the trigger every n seconds after the initial. If no time for initial was specified, begin repeating immediately.

    initial int64

    Trigger when the vega time is greater or equal to this time, in Unix seconds.

  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • priceSourceProperty string

    The property name of price.

  • ]
  • decayPower uint64

    Decay power used for the calculation of mark price.

    decayWeight string

    Decay weight used for calculation of mark price.

    sourceStalenessTolerance string[]

    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.

    sourceWeights string[]

    Weights for each composite price data source.

    marginFundingFactor string

    Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].

    quoteName string

    Quote name of the instrument.

    settlementAsset string

    Underlying asset for the perpetual.

    spot object

    Spot.

    baseAsset string

    Asset ID of the underlying base asset for the spot product.

    quoteAsset string

    Asset ID of the underlying quote asset for the spot product.

    logNormalRiskModel object

    Log normal.

    params object

    Risk model parameters for log normal.

    mu double

    Mu parameter, annualised growth rate of the underlying asset.

    r double

    R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.

    sigma double

    Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.

    riskAversionParameter double

    Risk Aversion Parameter.

    riskFactorOverride object

    And optional override for the risk factor calculated by the risk model.

    long string

    Long Risk factor value.

    short string

    Short Risk factor value.

    tau double

    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.

    fullyCollateralised boolean

    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.

    collateralRelease double

    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.

    initialMargin double

    Initial margin level. This is the minimum amount of collateral required to open a position in a market that requires margin.

    searchLevel double

    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.

    factorLong double

    Pre-defined risk factor value for long.

    factorShort double

    Pre-defined risk factor value for short.

    maxMoveUp double

    Pre-defined maximum price move up that the model considers as valid.

    minMoveDown double

    Pre-defined minimum price move down that the model considers as valid.

    probabilityOfTrading double

    Pre-defined constant probability of trading.

    tradingMode Trading mode the market is currently running, also referred to as 'market state' (string)

    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, TRADING_MODE_PROTOCOL_AUTOMATED_PURCHASE_AUCTION]

    Default value: TRADING_MODE_UNSPECIFIED

    Current mode of execution of the market.

    networkLimits object
    canProposeAsset boolean

    Are asset proposals allowed at this point in time.

    canProposeMarket boolean

    Are market proposals allowed at this point in time.

    canProposePerpetualMarket boolean

    Are perpetual market proposals allowed at this point in time.

    canProposeSpotMarket boolean

    Are spot market proposals allowed at this point in time.

    canUseAmm boolean

    Can parties use AMM related transactions.

    genesisLoaded boolean

    True once the genesis file is loaded.

    proposeAssetEnabled boolean

    Are asset proposals enabled on this chain.

    proposeAssetEnabledFrom int64

    Timestamp in Unix nanoseconds at which asset proposals will be enabled (0 indicates not set).

    proposeMarketEnabled boolean

    Are market proposals enabled on this chain.

    proposeMarketEnabledFrom int64

    Timestamp in Unix nanoseconds at which market proposals will be enabled (0 indicates not set).

    networkParameter object
    key string

    Unique key of the network parameter.

    value string

    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 string

    ID of the resource that the signature relates to.

    kind Kind of signature created by a node, for example, allow-listing a new asset, withdrawal etc (string)

    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.

    sig byte

    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.

    broadcastAt int64

    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[]
  • Array [
  • name string

    Name of the property.

    value string

    Value of the property.

  • ]
  • error string

    Error message if the data could not be sourced.

    matchedSpecIds string[]

    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[]
  • Array [
  • name string

    Name of the property.

    value string

    Value of the property.

  • ]
  • signers object[]
  • Array [
  • ethAddress object

    In case of an open oracle - Ethereum address will be submitted.

    address string
    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.

    key string
  • ]
  • 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.

    createdAt int64
    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.

    abi string

    The ABI of that contract.

    address string

    Ethereum address of the contract to call.

    args object[]

    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[]
  • Array [
  • conditions object[]

    Conditions that should be matched by the data to be considered of interest.

  • Array [
  • operator ConditionOperator (string)

    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 string

    Value to be compared with by the operator.

  • ]
  • key object

    Data source's data property key targeted by the filter.

    name string

    Name of the property.

    numberDecimalPlaces uint64
    type v1PropertyKeyType (string)

    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.

  • ]
  • method string

    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.

  • Array [
  • expression string
    name string
  • ]
  • requiredConfirmations uint64
    sourceChainId uint64

    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.

    every uint64

    Repeat the call every n seconds after the initial call. If no time for initial call was specified, begin repeating immediately.

    initial uint64

    Trigger when the Ethereum time is greater or equal to this time, in Unix seconds.

    until uint64

    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).

  • Array [
  • conditions object[]

    Conditions that should be matched by the data to be considered of interest.

  • Array [
  • operator ConditionOperator (string)

    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 string

    Value to be compared with by the operator.

  • ]
  • key object

    Data source's data property key targeted by the filter.

    name string

    Name of the property.

    numberDecimalPlaces uint64
    type v1PropertyKeyType (string)

    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.

  • Array [
  • ethAddress object

    In case of an open oracle - Ethereum address will be submitted.

    address string
    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.

    key string
  • ]
  • 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.

  • Array [
  • operator ConditionOperator (string)

    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 string

    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.

  • Array [
  • operator ConditionOperator (string)

    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 string

    Value to be compared with by the operator.

  • ]
  • triggers object[]
  • Array [
  • every int64

    Repeat the trigger every n seconds after the initial. If no time for initial was specified, begin repeating immediately.

    initial int64

    Trigger when the vega time is greater or equal to this time, in Unix seconds.

  • ]
  • id string

    Hash generated from the DataSpec data.

    status Status describes the status of the data source spec (string)

    Possible values: [STATUS_UNSPECIFIED, STATUS_ACTIVE, STATUS_DEACTIVATED]

    Default value: STATUS_UNSPECIFIED

    • 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.
    updatedAt int64
    order object
    batchId uint64

    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.

    createdAt int64

    Timestamp for when the order was created at, in nanoseconds.

    expiresAt int64

    Timestamp in Unix nanoseconds for when the order will expire.

    icebergOrder object
    minimumVisibleSize uint64

    If the visible size of the order falls below this value, it will be replenished back to the peak size using the reserved amount.

    peakSize uint64

    Size of the order that will be made visible if the iceberg order is replenished after trading.

    reservedRemaining uint64

    Size of the order that is reserved and used to restore the iceberg's peak when it is refreshed.

    id string

    Unique ID generated for the order.

    liquidityProvisionId string

    Set if the order was created as part of a liquidity provision, will be empty if not.

    marketId string

    Market ID for the order.

    partyId string

    Party ID for the order.

    peggedOrder object

    Pegged order details, used only if the order represents a pegged order.

    offset string

    Offset from the price reference.

    reference Pegged reference defines which price point a pegged order is linked to - meaning the price for a pegged order is calculated from the value of the reference price point (string)

    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.

    postOnly boolean

    Only valid for Limit orders. Cannot be True at the same time as Reduce-Only.

    price string

    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.

    reason OrderError codes are returned in the Order.reason field - If there is an issue with an order during its life-cycle, it will be marked with `status.ORDER_STATUS_REJECTED` (string)

    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, ORDER_ERROR_SELL_ORDER_NOT_ALLOWED]

    Default value: ORDER_ERROR_UNSPECIFIED

    Futher details for why an order with status STATUS_REJECTED was rejected.

    reduceOnly boolean

    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 string

    Reference given for the order.

    remaining uint64

    Size remaining, when this reaches 0 then the order is fully filled and status becomes STATUS_FILLED.

    side Side relates to the direction of an order, to Buy, or Sell (string)

    Possible values: [SIDE_UNSPECIFIED, SIDE_BUY, SIDE_SELL]

    Default value: SIDE_UNSPECIFIED

    Side for the order, e.g. SIDE_BUY or SIDE_SELL.

    size uint64

    Size for the order, for example, in a futures market the size equals the number of contracts.

    status Status values for an order (string)

    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.

    timeInForce Time in force indicates how long an order will remain active before it is executed or expires. - See OrderTimeInForce (string)

    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

    • 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)
    type Type values for an order (string)

    Possible values: [TYPE_UNSPECIFIED, TYPE_LIMIT, TYPE_MARKET, TYPE_NETWORK]

    Default value: TYPE_UNSPECIFIED

    Type for the order.

    updatedAt int64

    Timestamp in Unix nanoseconds for when the order was last updated.

    version uint64

    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.

    asset string

    Settlement asset of the market.

    epochSeq uint64

    Epoch for which these stats where valid.

    feesPaidPerParty object[]

    Fees paid per party.

  • Array [
  • amount string

    Amount received.

    party string

    Receiving party ID.

    quantumAmount string

    Amount value in quantum.

  • ]
  • market string

    Market the fees were paid in.

    totalFeesPaid string

    Total fees paid across all parties.

    party object
    alias string

    Alias given to the party.

    id string

    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.

  • Array [
  • key string

    Key of the metadata.

    value string

    Value of the metadata.

  • ]
  • partyActivityStreak object
    activeFor uint64

    How many epoch this party has been active for.

    epoch uint64

    The epoch this information is relevant to.

    inactiveFor uint64

    how many epoch this party has been inactive for.

    isActive boolean

    Is this party considered active or not.

    openVolume Party's open interest volume at the end of the given epoch (string)
    party string

    The party.

    rewardDistributionActivityMultiplier string

    The current rewards distribution multiplier for this party.

    rewardVestingActivityMultiplier string

    The vesting multiplier for this party.

    tradedVolume Party's traded volume at the end of the given epoch (string)
    partyMarginModeUpdated object

    Event notifying of a party's margin mode update on a market.

    atEpoch uint64

    Epoch at which the update happened.

    marginFactor string

    Margin factor for the market. Isolated mode only.

    marginMode - MARGIN_MODE_UNSPECIFIED: Never valid. - MARGIN_MODE_CROSS_MARGIN: Cross margin mode - margin is dynamically acquired and released as a position is marked to market - MARGIN_MODE_ISOLATED_MARGIN: Isolated margin mode - margin for any newly opened position volume is transferred to the margin account when the trade is executed (string)

    Possible values: [MARGIN_MODE_UNSPECIFIED, MARGIN_MODE_CROSS_MARGIN, MARGIN_MODE_ISOLATED_MARGIN]

    Default value: MARGIN_MODE_UNSPECIFIED

    Updated margin mode.

    marketId string

    Unique ID of the market in which the update happened.

    maxTheoreticalLeverage string

    Maximum theoretical leverage for the market. Isolated mode only.

    minTheoreticalMarginFactor string

    Minimum theoretical margin factor for the market. Isolated mode only.

    partyId string

    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 string

    Alias given to the party.

    derivedKeys string[]

    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.

  • Array [
  • key string

    Key of the metadata.

    value string

    Value of the metadata.

  • ]
  • partyId string

    Party ID associated to the profile.

    positionResolution object
    closed int64
    distressed int64
    markPrice Mark price as a string representing a scaled price (string)
    marketId Market ID for the event (string)
    positionStateEvent object
    marketId Market ID for this position update (string)
    partyId Party ID for this position update (string)
    potentialBuys int64
    potentialSells int64
    size int64
    vwBuyPrice Volume weighted prices (string)
    vwSellPrice string
    proposal object
    batchId string

    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.

  • Array [
  • cancelTransfer object

    Proposal change to cancel a governance initiated transfe.

    changes object
    transferId string

    ID of the governance transfer proposal.

    enactmentTimestamp int64

    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.

    maxFaucetAmountMint string

    Maximum amount that can be requested by a party through the built-in asset faucet at a time.

    decimals uint64

    Number of decimal / precision handled by this asset.

    erc20 object

    Ethereum ERC20 asset.

    chainId string

    Chain ID the asset originated from.

    contractAddress string

    Address of the contract for the token, on the ethereum network.

    lifetimeLimit string

    Lifetime limits deposit per address note: this is a temporary measure that can be changed by governance.

    withdrawThreshold string

    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 string

    Name of the asset (e.g: Great British Pound).

    quantum string

    Minimum economically meaningful amount in the asset.

    symbol string

    Symbol of the asset (e.g: GBP).

    newFreeform object

    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.

    allowedEmptyAmmLevels uint64

    Number of allowed price levels between an AMM's fair price and its quote prices. An AMM definition that exceeds this will be rejected at submission.

    decimalPlaces uint64

    Decimal places used for the new futures market, sets the smallest price increment on the book.

    enableTransactionReordering If enabled aggressive orders sent to the market will be delayed by the configured number of blocks (boolean)
    instrument object

    New futures market instrument configuration.

    code string

    Instrument code, human-readable shortcode used to describe the instrument.

    future object

    Future.

    cap object

    If set, this product creates a capped future market.

    binarySettlement boolean

    If set to true, the settlement price must either be zero, or equal to the max price.

    fullyCollateralised boolean

    If set to true, positions must be fully collateralised so there is no default risk for any party.

    maxPrice string

    Set the maximum price for orders, and settlement data in market decimals.

    dataSourceSpecBinding object

    Binding between the data source spec and the settlement data.

    settlementDataProperty string

    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.

    tradingTerminationProperty string

    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.

    abi string

    The ABI of that contract.

    address string

    Ethereum address of the contract to call.

    args object[]

    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[]
  • Array [
  • conditions object[]

    Conditions that should be matched by the data to be considered of interest.

  • Array [
  • operator ConditionOperator (string)

    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 string

    Value to be compared with by the operator.

  • ]
  • key object

    Data source's data property key targeted by the filter.

    name string

    Name of the property.

    numberDecimalPlaces uint64
    type v1PropertyKeyType (string)

    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.

  • ]
  • method string

    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.

  • Array [
  • expression string
    name string
  • ]
  • requiredConfirmations uint64
    sourceChainId uint64

    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.

    every uint64

    Repeat the call every n seconds after the initial call. If no time for initial call was specified, begin repeating immediately.

    initial uint64

    Trigger when the Ethereum time is greater or equal to this time, in Unix seconds.

    until uint64

    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).

  • Array [
  • conditions object[]

    Conditions that should be matched by the data to be considered of interest.

  • Array [
  • operator ConditionOperator (string)

    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 string

    Value to be compared with by the operator.

  • ]
  • key object

    Data source's data property key targeted by the filter.

    name string

    Name of the property.

    numberDecimalPlaces uint64
    type v1PropertyKeyType (string)

    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.

  • Array [
  • ethAddress object

    In case of an open oracle - Ethereum address will be submitted.

    address string
    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.

    key string
  • ]
  • 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.

  • Array [
  • operator ConditionOperator (string)

    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 string

    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.

  • Array [
  • operator ConditionOperator (string)

    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 string

    Value to be compared with by the operator.

  • ]
  • triggers object[]
  • Array [
  • every int64

    Repeat the trigger every n seconds after the initial. If no time for initial was specified, begin repeating immediately.

    initial int64

    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.

    abi string

    The ABI of that contract.

    address string

    Ethereum address of the contract to call.

    args object[]

    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[]
  • Array [
  • conditions object[]

    Conditions that should be matched by the data to be considered of interest.

  • Array [
  • operator ConditionOperator (string)

    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 string

    Value to be compared with by the operator.

  • ]
  • key object

    Data source's data property key targeted by the filter.

    name string

    Name of the property.

    numberDecimalPlaces uint64
    type v1PropertyKeyType (string)

    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.

  • ]
  • method string

    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.

  • Array [
  • expression string
    name string
  • ]
  • requiredConfirmations uint64
    sourceChainId uint64

    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.

    every uint64

    Repeat the call every n seconds after the initial call. If no time for initial call was specified, begin repeating immediately.

    initial uint64

    Trigger when the Ethereum time is greater or equal to this time, in Unix seconds.

    until uint64

    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).

  • Array [
  • conditions object[]

    Conditions that should be matched by the data to be considered of interest.

  • Array [
  • operator ConditionOperator (string)

    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 string

    Value to be compared with by the operator.

  • ]
  • key object

    Data source's data property key targeted by the filter.

    name string

    Name of the property.

    numberDecimalPlaces uint64
    type v1PropertyKeyType (string)

    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.

  • Array [
  • ethAddress object

    In case of an open oracle - Ethereum address will be submitted.

    address string
    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.

    key string
  • ]
  • 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.

  • Array [
  • operator ConditionOperator (string)

    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 string

    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.

  • Array [
  • operator ConditionOperator (string)

    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 string

    Value to be compared with by the operator.

  • ]
  • triggers object[]
  • Array [
  • every int64

    Repeat the trigger every n seconds after the initial. If no time for initial was specified, begin repeating immediately.

    initial int64

    Trigger when the vega time is greater or equal to this time, in Unix seconds.

  • ]
  • quoteName string

    Product quote name.

    settlementAsset string

    Asset ID for the product's settlement asset.

    name string

    Instrument name.

    perpetual object

    Perpetual.

    clampLowerBound string

    Lower bound for the clamp function used as part of the funding rate calculation, in the range [-1, 1].

    clampUpperBound string

    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.

    settlementDataProperty string

    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.

    settlementScheduleProperty string

    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.

    abi string

    The ABI of that contract.

    address string

    Ethereum address of the contract to call.

    args object[]

    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[]
  • Array [
  • conditions object[]

    Conditions that should be matched by the data to be considered of interest.

  • Array [
  • operator ConditionOperator (string)

    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 string

    Value to be compared with by the operator.

  • ]
  • key object

    Data source's data property key targeted by the filter.

    name string

    Name of the property.

    numberDecimalPlaces uint64
    type v1PropertyKeyType (string)

    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.

  • ]
  • method string

    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.

  • Array [
  • expression string
    name string
  • ]
  • requiredConfirmations uint64
    sourceChainId uint64

    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.

    every uint64

    Repeat the call every n seconds after the initial call. If no time for initial call was specified, begin repeating immediately.

    initial uint64

    Trigger when the Ethereum time is greater or equal to this time, in Unix seconds.

    until uint64

    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).

  • Array [
  • conditions object[]

    Conditions that should be matched by the data to be considered of interest.

  • Array [
  • operator ConditionOperator (string)

    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 string

    Value to be compared with by the operator.

  • ]
  • key object

    Data source's data property key targeted by the filter.

    name string

    Name of the property.

    numberDecimalPlaces uint64
    type v1PropertyKeyType (string)

    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.

  • Array [
  • ethAddress object

    In case of an open oracle - Ethereum address will be submitted.

    address string
    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.

    key string
  • ]
  • 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.

  • Array [
  • operator ConditionOperator (string)

    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 string

    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.

  • Array [
  • operator ConditionOperator (string)

    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 string

    Value to be compared with by the operator.

  • ]
  • triggers object[]
  • Array [
  • every int64

    Repeat the trigger every n seconds after the initial. If no time for initial was specified, begin repeating immediately.

    initial int64

    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.

    abi string

    The ABI of that contract.

    address string

    Ethereum address of the contract to call.

    args object[]

    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[]
  • Array [
  • conditions object[]

    Conditions that should be matched by the data to be considered of interest.

  • Array [
  • operator ConditionOperator (string)

    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 string

    Value to be compared with by the operator.

  • ]
  • key object

    Data source's data property key targeted by the filter.

    name string

    Name of the property.

    numberDecimalPlaces uint64
    type v1PropertyKeyType (string)

    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.

  • ]
  • method string

    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.

  • Array [
  • expression string
    name string
  • ]
  • requiredConfirmations uint64
    sourceChainId uint64

    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.

    every uint64

    Repeat the call every n seconds after the initial call. If no time for initial call was specified, begin repeating immediately.

    initial uint64

    Trigger when the Ethereum time is greater or equal to this time, in Unix seconds.

    until uint64

    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).

  • Array [
  • conditions object[]

    Conditions that should be matched by the data to be considered of interest.

  • Array [
  • operator ConditionOperator (string)

    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 string

    Value to be compared with by the operator.

  • ]
  • key object

    Data source's data property key targeted by the filter.

    name string

    Name of the property.

    numberDecimalPlaces uint64
    type v1PropertyKeyType (string)

    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.

  • Array [
  • ethAddress object

    In case of an open oracle - Ethereum address will be submitted.

    address string
    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.

    key string
  • ]
  • 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.

  • Array [
  • operator ConditionOperator (string)

    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 string

    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.

  • Array [
  • operator ConditionOperator (string)

    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 string

    Value to be compared with by the operator.

  • ]
  • triggers object[]
  • Array [
  • every int64

    Repeat the trigger every n seconds after the initial. If no time for initial was specified, begin repeating immediately.

    initial int64

    Trigger when the vega time is greater or equal to this time, in Unix seconds.

  • ]
  • fundingRateLowerBound string

    Lower bound for the funding-rate such that the funding-rate will never be lower than this value.

    fundingRateScalingFactor string

    Factor applied to funding-rates. This scales the impact that spot price deviations have on funding payments.

    fundingRateUpperBound string

    Upper bound for the funding-rate such that the funding-rate will never be higher than this value.

    interestRate string

    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.

    cashAmount string

    Cash amount, in asset decimals, used for the calculation of the mark price from the order book.

    compositePriceType vegaCompositePriceType (string)

    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.

  • Array [
  • 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.

    abi string

    The ABI of that contract.

    address string

    Ethereum address of the contract to call.

    args object[]

    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[]
  • Array [
  • conditions object[]

    Conditions that should be matched by the data to be considered of interest.

  • Array [
  • operator ConditionOperator (string)

    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 string

    Value to be compared with by the operator.

  • ]
  • key object

    Data source's data property key targeted by the filter.

    name string

    Name of the property.

    numberDecimalPlaces uint64
    type v1PropertyKeyType (string)

    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.

  • ]
  • method string

    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.

  • Array [
  • expression string
    name string
  • ]
  • requiredConfirmations uint64
    sourceChainId uint64

    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.

    every uint64

    Repeat the call every n seconds after the initial call. If no time for initial call was specified, begin repeating immediately.

    initial uint64

    Trigger when the Ethereum time is greater or equal to this time, in Unix seconds.

    until uint64

    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).

  • Array [
  • conditions object[]

    Conditions that should be matched by the data to be considered of interest.

  • Array [
  • operator ConditionOperator (string)

    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 string

    Value to be compared with by the operator.

  • ]
  • key object

    Data source's data property key targeted by the filter.

    name string

    Name of the property.

    numberDecimalPlaces uint64
    type v1PropertyKeyType (string)

    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.

  • Array [
  • ethAddress object

    In case of an open oracle - Ethereum address will be submitted.

    address string
    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.

    key string
  • ]
  • 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.

  • Array [
  • operator ConditionOperator (string)

    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 string

    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.

  • Array [
  • operator ConditionOperator (string)

    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 string

    Value to be compared with by the operator.

  • ]
  • triggers object[]
  • Array [
  • every int64

    Repeat the trigger every n seconds after the initial. If no time for initial was specified, begin repeating immediately.

    initial int64

    Trigger when the vega time is greater or equal to this time, in Unix seconds.

  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • priceSourceProperty string

    The property name of price.

  • ]
  • decayPower uint64

    Decay power used for the calculation of mark price.

    decayWeight string

    Decay weight used for calculation of mark price.

    sourceStalenessTolerance string[]

    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.

    sourceWeights string[]

    Weights for each composite price data source.

    marginFundingFactor string

    Controls how much the upcoming funding payment liability contributes to party's margin, in the range [0, 1].

    quoteName string

    Product quote name.

    settlementAsset string

    Asset ID for the product's settlement asset.

    spot object

    Spot.

    baseAsset string

    Base asset ID.

    quoteAsset string

    Quote asset ID.

    linearSlippageFactor string

    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.

    disposalFraction string

    Fraction of the open position the market will try to close in a single attempt; range 0 through 1.

    disposalSlippageRange string

    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).

    disposalTimeStep int64

    Interval, in seconds, at which the network will attempt to close its position.

    fullDisposalSize uint64

    Size of the position that the network will try to close in a single attempt.

    maxFractionConsumed string

    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.

    feeConstant string

    Constant liquidity fee used when using the constant fee method.

    method vegaLiquidityFeeSettingsMethod (string)

    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.

    auctionExtension int64

    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.

    scalingFactor double

    Specifies scaling factors used in target stake calculation.

    timeWindow int64

    Specifies length of time window expressed in seconds for target stake calculation.

    triggeringRatio string

    Specifies the triggering ratio for entering liquidity auction.

    liquiditySlaParameters object
    commitmentMinTimeFraction string

    Specifies the minimum fraction of time LPs must spend "on the book" providing their committed liquidity.

    performanceHysteresisEpochs uint64

    Specifies the number of liquidity epochs over which past performance will continue to affect rewards.

    priceRange string
    slaCompetitionFactor string

    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 double

    Mu parameter, annualised growth rate of the underlying asset.

    r double

    R parameter, annualised growth rate of the risk-free asset, used for discounting of future cash flows, can be any real number.

    sigma double

    Sigma parameter, annualised volatility of the underlying asset, must be a strictly non-negative real number.

    riskAversionParameter double

    Risk Aversion Parameter.

    riskFactorOverride object

    And optional override for the risk factor calculated by the risk model.

    long string

    Long Risk factor value.

    short string

    Short Risk factor value.

    tau double

    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.

    lpPriceRange string

    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.

    cashAmount string

    Cash amount, in asset decimals, used for the calculation of the mark price from the order book.

    compositePriceType vegaCompositePriceType (string)

    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.

  • Array [
  • 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.

    abi string

    The ABI of that contract.

    address string

    Ethereum address of the contract to call.

    args object[]

    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[]
  • Array [
  • conditions object[]

    Conditions that should be matched by the data to be considered of interest.

  • Array [
  • operator ConditionOperator (string)

    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 string

    Value to be compared with by the operator.

  • ]
  • key object

    Data source's data property key targeted by the filter.

    name string

    Name of the property.

    numberDecimalPlaces uint64
    type v1PropertyKeyType (string)

    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.

  • ]
  • method string

    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.

  • Array [
  • expression string
    name string
  • ]
  • requiredConfirmations uint64
    sourceChainId uint64

    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.

    every uint64

    Repeat the call every n seconds after the initial call. If no time for initial call was specified, begin repeating immediately.

    initial uint64

    Trigger when the Ethereum time is greater or equal to this time, in Unix seconds.

    until uint64

    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).

  • Array [
  • conditions object[]

    Conditions that should be matched by the data to be considered of interest.

  • Array [
  • operator ConditionOperator (string)

    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 string

    Value to be compared with by the operator.

  • ]
  • key object

    Data source's data property key targeted by the filter.

    name string

    Name of the property.

    numberDecimalPlaces uint64
    type v1PropertyKeyType (string)

    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.

  • Array [
  • ethAddress object

    In case of an open oracle - Ethereum address will be submitted.

    address string
    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.

    key string
  • ]
  • 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.

  • Array [
  • operator ConditionOperator (string)

    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 string

    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.

  • Array [
  • operator ConditionOperator (string)

    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 string

    Value to be compared with by the operator.

  • ]
  • triggers object[]
  • Array [
  • every int64

    Repeat the trigger every n seconds after the initial. If no time for initial was specified, begin repeating immediately.

    initial int64

    Trigger when the vega time is greater or equal to this time, in Unix seconds.

  • ]
  • ]
  • dataSourcesSpecBinding object[]
  • Array [
  • priceSourceProperty string

    The property name of price.

  • ]
  • decayPower uint64

    Decay power used for the calculation of mark price.

    decayWeight string

    Decay weight used for calculation of mark price.

    sourceStalenessTolerance string[]

    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.

    sourceWeights string[]

    Weights for each composite price data source.

    metadata string[]

    Optional new futures market metadata, tags.

    positionDecimalPlaces int64

    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[]
  • Array [
  • auctionExtension int64

    Price monitoring auction extension duration in seconds should the price breach its theoretical level over the specified horizon at the specified probability level.

    horizon int64

    Price monitoring projection horizon τ in seconds.

    probability string

    Price monitoring probability level p.

  • ]
  • quadraticSlippageFactor string

    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.

    factorLong double

    Pre-defined risk factor value for long.

    factorShort double

    Pre-defined risk factor value for short.

    maxMoveUp double

    Pre-defined maximum price move up that the model considers as valid.

    minMoveDown double

    Pre-defined minimum price move down that the model considers as valid.

    probabilityOfTrading double

    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.

    insurancePoolFraction string

    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.

    parentMarketId string

    ID of the market that the successor should take over from.

    tickSize The market tick size defines the minimum change in quote price for the market (string)
    newProtocolAutomatedPurchase object
    changes object
    auctionDuration The duration of the auction (string)
    auctionSchedule 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.

    abi string

    The ABI of that contract.

    address string

    Ethereum address of the contract to call.

    args object[]

    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[]
  • Array [
  • conditions object[]

    Conditions that should be matched by the data to be considered of interest.

  • Array [
  • operator ConditionOperator (string)

    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 string

    Value to be compared with by the operator.

  • ]
  • key object

    Data source's data property key targeted by the filter.

    name string

    Name of the property.

    numberDecimalPlaces uint64
    type v1PropertyKeyType (string)

    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.

  • ]
  • method string

    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.

  • Array [
  • expression string
    name string
  • ]
  • requiredConfirmations uint64
    sourceChainId uint64

    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.

    every uint64

    Repeat the call every n seconds after the initial call. If no time for initial call was specified, begin repeating immediately.

    initial uint64

    Trigger when the Ethereum time is greater or equal to this time, in Unix seconds.

    until uint64

    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).

  • Array [
  • conditions object[]

    Conditions that should be matched by the data to be considered of interest.

  • Array [
  • operator ConditionOperator (string)

    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 string

    Value to be compared with by the operator.

  • ]
  • key object

    Data source's data property key targeted by the filter.

    name string

    Name of the property.

    numberDecimalPlaces uint64
    type v1PropertyKeyType (string)

    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.

  • Array [
  • ethAddress object

    In case of an open oracle - Ethereum address will be submitted.

    address string
    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.

    key string
  • ]
  • 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.

  • Array [
  • operator ConditionOperator (string)

    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 string

    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.

  • Array [
  • operator ConditionOperator (string)

    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 string

    Value to be compared with by the operator.

  • ]
  • triggers object[]
  • Array [
  • every int64

    Repeat the trigger every n seconds after the initial. If no time for initial was specified, begin repeating immediately.

    initial int64

    Trigger when the vega time is greater or equal to this time, in Unix seconds.

  • ]
  • auctionVolumeSnapshotSchedule 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.

    abi string

    The ABI of that contract.

    address string

    Ethereum address of the contract to call.

    args object[]

    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[]
  • Array [
  • conditions object[]

    Conditions that should be matched by the data to be considered of interest.

  • Array [
  • operator ConditionOperator (string)

    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 string

    Value to be compared with by the operator.

  • ]
  • key object

    Data source's data property key targeted by the filter.

    name string

    Name of the property.

    numberDecimalPlaces uint64
    type v1PropertyKeyType (string)

    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.

  • ]
  • method string

    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.

  • Array [
  • expression string
    name string
  • ]
  • requiredConfirmations uint64
    sourceChainId uint64

    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.

    every uint64

    Repeat the call every n seconds after the initial call. If no time for initial call was specified, begin repeating immediately.

    initial uint64

    Trigger when the Ethereum time is greater or equal to this time, in Unix seconds.

    until uint64

    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).

  • Array [
  • conditions object[]

    Conditions that should be matched by the data to be considered of interest.

  • Array [
  • operator ConditionOperator (string)

    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 string

    Value to be compared with by the operator.

  • ]
  • key object

    Data source's data property key targeted by the filter.

    name string

    Name of the property.

    numberDecimalPlaces uint64
    type v1PropertyKeyType (string)

    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.

  • Array [
  • ethAddress object

    In case of an open oracle - Ethereum address will be submitted.

    address string
    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.

    key string
  • ]
  • 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.

  • Array [
  • operator ConditionOperator (string)

    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 string

    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.

  • Array [
  • operator ConditionOperator (string)

    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 string

    Value to be compared with by the operator.

  • ]
  • triggers object[]
  • Array [
  • every int64

    Repeat the trigger every n seconds after the initial. If no time for initial was specified, begin repeating immediately.

    initial int64

    Trigger when the vega time is greater or equal to this time, in Unix seconds.

  • ]
  • automatedPurchaseSpecBinding object

    Describes which properties of the data source data are to be used for automated purchase.

    auctionScheduleProperty string

    Name of the property in the source data that should be used to determine the automated purchase schedule.

    auctionVolumeSnapshotScheduleProperty string

    Name of the property in the source data that should be used to determine the schedule of the automated purchase auction.

    expiryTimestamp int64

    Timestamp in Unix seconds, when the automated purchase is stopped. If an auction is in action it will be removed when the auction is finished.

    from The source token that will be swapped (string)
    fromAccountType The account type for the network from which the tokens will be sourced (string)

    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_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, ACCOUNT_TYPE_BUY_BACK_FEES, ACCOUNT_TYPE_REWARD_AVERAGE_NOTIONAL, ACCOUNT_TYPE_REWARD_ELIGIBLE_ENTITIES, ACCOUNT_TYPE_LOCKED_FOR_STAKING]

    Default value: ACCOUNT_TYPE_UNSPECIFIED

    • ACCOUNT_TYPE_UNSPECIFIED: Default value
    • ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market
    • ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market
    • ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions. Each party will have a margin account for each market they have traded in. Required initial margin is allocated to each market from user's general account. Collateral in the margin account can't be withdrawn or used as margin on another market until it is released back to the general account. Vega protocol uses an internal accounting system to segregate funds held as margin from other funds to ensure they are never lost or 'double spent'

    Margin account funds will vary as margin requirements on positions change

    • ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will have multiple general accounts, one for each asset they want to trade with

    General accounts are where funds are initially deposited or withdrawn from, it is also the account where funds are taken to fulfil fees and initial margin requirements

    • ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega
    • ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets
    • ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book and are then matched with an incoming order to create a trade - These fees reward parties who provide the best priced liquidity that actually allows trading to take place
    • ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments
    • ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)
    • ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset
    • ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset
    • ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)
    • ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers
    • ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers
    • ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers
    • ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold
    • ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds
    • ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.
    • ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.
    • ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury
    • ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period
    • ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period
    • ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return
    • ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility
    • ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking
    • ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts
    • ACCOUNT_TYPE_ORDER_MARGIN: Per asset market account for party in isolated margin mode
    • ACCOUNT_TYPE_REWARD_REALISED_RETURN: Per asset market reward account for realised return
    • ACCOUNT_TYPE_BUY_BACK_FEES: Per asset account for paid buy-back fees
    • ACCOUNT_TYPE_REWARD_AVERAGE_NOTIONAL: Per asset market reward account given for average notional
    • ACCOUNT_TYPE_REWARD_ELIGIBLE_ENTITIES: Reward account for the eligible entities metric.
    • ACCOUNT_TYPE_LOCKED_FOR_STAKING: Account for assets that are locked for staking.
    marketId The market that will be used to enact the purchase/sale (string)
    maximumAuctionSize string

    Maximum number of tokens to be sold (specified in asset decimals). If more than this are available in the account at the last snapshot before auction, this maximum value will be used instead, and the remainder will be rolled over to the next scheduled auction.

    minimumAuctionSize string

    Minimum number of tokens to be sold (specified in asset decimals). If less than this are available in the account at the last snapshot before auction, no auction will occur and the balance will roll over to the next scheduled auction.

    oracleOffsetFactor The final acceptable price is the price oracle value weighted by this factor (e.g. 1.05 to allow for 5% slippage on the purchase) (string)
    oraclePriceStalenessTolerance For how long the oracle price source is considered valid (string)
    priceOracle 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.

    abi string

    The ABI of that contract.

    address string

    Ethereum address of the contract to call.

    args object[]

    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[]
  • Array [
  • conditions object[]

    Conditions that should be matched by the data to be considered of interest.

  • Array [
  • operator ConditionOperator (string)

    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 string

    Value to be compared with by the operator.

  • ]
  • key object

    Data source's data property key targeted by the filter.

    name string

    Name of the property.

    numberDecimalPlaces uint64
    type v1PropertyKeyType (string)

    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.

  • ]
  • method string

    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.

  • Array [
  • expression string
    name string
  • ]
  • requiredConfirmations uint64
    sourceChainId uint64

    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.

    every uint64

    Repeat the call every n seconds after the initial call. If no time for initial call was specified, begin repeating immediately.

    initial uint64

    Trigger when the Ethereum time is greater or equal to this time, in Unix seconds.

    until uint64

    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).

  • Array [
  • conditions object[]

    Conditions that should be matched by the data to be considered of interest.

  • Array [
  • operator ConditionOperator (string)

    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 string

    Value to be compared with by the operator.

  • ]
  • key object

    Data source's data property key targeted by the filter.

    name string

    Name of the property.

    numberDecimalPlaces uint64
    type v1PropertyKeyType (string)

    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.

  • Array [
  • ethAddress object

    In case of an open oracle - Ethereum address will be submitted.

    address string
    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.

    key string
  • ]
  • 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.

  • Array [
  • operator ConditionOperator (string)

    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 string

    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.

  • Array [
  • operator ConditionOperator (string)

    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 string

    Value to be compared with by the operator.

  • ]
  • triggers object[]
  • Array [
  • every int64

    Repeat the trigger every n seconds after the initial. If no time for initial was specified, begin repeating immediately.

    initial int64

    Trigger when the vega time is greater or equal to this time, in Unix seconds.

  • ]
  • priceOracleSpecBinding object

    Describes which property of the data source data is to be used for price source.

    priceSourceProperty string

    The property name of price.

    toAccountType The account type for the network to which the purchased tokens will be sent (string)

    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_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, ACCOUNT_TYPE_BUY_BACK_FEES, ACCOUNT_TYPE_REWARD_AVERAGE_NOTIONAL, ACCOUNT_TYPE_REWARD_ELIGIBLE_ENTITIES, ACCOUNT_TYPE_LOCKED_FOR_STAKING]

    Default value: ACCOUNT_TYPE_UNSPECIFIED

    • ACCOUNT_TYPE_UNSPECIFIED: Default value
    • ACCOUNT_TYPE_INSURANCE: Insurance pool accounts contain insurance pool funds for a market
    • ACCOUNT_TYPE_SETTLEMENT: Settlement accounts exist only during settlement or mark-to-market
    • ACCOUNT_TYPE_MARGIN: Margin accounts contain funds set aside for the margin needed to support a party's open positions. Each party will have a margin account for each market they have traded in. Required initial margin is allocated to each market from user's general account. Collateral in the margin account can't be withdrawn or used as margin on another market until it is released back to the general account. Vega protocol uses an internal accounting system to segregate funds held as margin from other funds to ensure they are never lost or 'double spent'

    Margin account funds will vary as margin requirements on positions change

    • ACCOUNT_TYPE_GENERAL: General accounts contain the collateral for a party that is not otherwise allocated. A party will have multiple general accounts, one for each asset they want to trade with

    General accounts are where funds are initially deposited or withdrawn from, it is also the account where funds are taken to fulfil fees and initial margin requirements

    • ACCOUNT_TYPE_FEES_INFRASTRUCTURE: Infrastructure accounts contain fees earned by providing infrastructure on Vega
    • ACCOUNT_TYPE_FEES_LIQUIDITY: Liquidity accounts contain fees earned by providing liquidity on Vega markets
    • ACCOUNT_TYPE_FEES_MAKER: This account is created to hold fees earned by placing orders that sit on the book and are then matched with an incoming order to create a trade - These fees reward parties who provide the best priced liquidity that actually allows trading to take place
    • ACCOUNT_TYPE_BOND: This account is created to maintain liquidity providers funds commitments
    • ACCOUNT_TYPE_EXTERNAL: External account represents an external source (deposit/withdrawal)
    • ACCOUNT_TYPE_GLOBAL_INSURANCE: Global insurance account for the asset
    • ACCOUNT_TYPE_GLOBAL_REWARD: Global reward account for the asset
    • ACCOUNT_TYPE_PENDING_TRANSFERS: Per asset account used to store pending transfers (if any)
    • ACCOUNT_TYPE_REWARD_MAKER_PAID_FEES: Per asset reward account for fees paid to makers
    • ACCOUNT_TYPE_REWARD_MAKER_RECEIVED_FEES: Per asset reward account for fees received by makers
    • ACCOUNT_TYPE_REWARD_LP_RECEIVED_FEES: Per asset reward account for fees received by liquidity providers
    • ACCOUNT_TYPE_REWARD_MARKET_PROPOSERS: Per asset reward account for market proposers when the market goes above some trading threshold
    • ACCOUNT_TYPE_HOLDING: Per asset account for holding in-flight unfilled orders' funds
    • ACCOUNT_TYPE_LP_LIQUIDITY_FEES: Network controlled liquidity provider's account, per market, to hold accrued liquidity fees.
    • ACCOUNT_TYPE_LIQUIDITY_FEES_BONUS_DISTRIBUTION: Network controlled liquidity fees bonus distribution account, per market.
    • ACCOUNT_TYPE_NETWORK_TREASURY: Network controlled treasury
    • ACCOUNT_TYPE_VESTING_REWARDS: Account holding user's rewards for the vesting period
    • ACCOUNT_TYPE_VESTED_REWARDS: Account holding user's rewards after the vesting period
    • ACCOUNT_TYPE_REWARD_RELATIVE_RETURN: Per asset market reward account given for relative return
    • ACCOUNT_TYPE_REWARD_RETURN_VOLATILITY: Per asset market reward account given for return volatility
    • ACCOUNT_TYPE_REWARD_VALIDATOR_RANKING: Per asset market reward account given to validators by their ranking
    • ACCOUNT_TYPE_PENDING_FEE_REFERRAL_REWARD: Per asset account for pending fee referral reward payouts
    • ACCOUNT_TYPE_ORDER_MARGIN: Per asset market account for party in isolated margin mode
    • ACCOUNT_TYPE_REWARD_REALISED_RETURN: Per asset market reward account for realised return
    • ACCOUNT_TYPE_BUY_BACK_FEES: Per asset account for paid buy-back fees
    • ACCOUNT_TYPE_REWARD_AVERAGE_NOTIONAL: Per asset market reward account given for average notional
    • ACCOUNT_TYPE_REWARD_ELIGIBLE_ENTITIES: Reward account for the eligible entities metric.
    • ACCOUNT_TYPE_LOCKED_FOR_STAKING: Account for assets that are locked for staking.
    newSpotMarket object

    Proposal change for creating new spot market.

    changes object

    Configuration of the new spot market.

    allowedSellers string[]
    enableTransactionReordering If enabled aggressive orders sent to the market will be delayed by the configured number of blocks (boolean)
    instrument object

    New spot market instrument configuration.

    code string

    Instrument code, human-readable shortcode used to describe the instrument.

    future object

    Future.

    cap object

    If set, this product creates a capped future market.

    binarySettlement boolean

    If set to true, the settlement price must either be zero, or equal to the max price.

    fullyCollateralised boolean

    If set to true, positions must be fully collateralised so there is no default risk for any party.

    maxPrice string

    Set the maximum price for orders, and settlement data in market decimals.

    dataSourceSpecBinding object

    Binding between the data source spec and the settlement data.

    settlementDataProperty string

    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.

    tradingTerminationProperty string

    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.

    abi string

    The ABI of that contract.

    address string

    Ethereum address of the contract to call.

    args object[]

    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[]
  • Array [
  • conditions object[]

    Conditions that should be matched by the data to be considered of interest.

  • Array [
  • operator ConditionOperator (string)

    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 string

    Value to be compared with by the operator.

  • ]
  • key object

    Data source's data property key targeted by the filter.

    name string

    Name of the property.

    numberDecimalPlaces uint64
    type v1PropertyKeyType (string)

    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.

  • ]
  • method string

    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.

  • Array [
  • expression string
    name string
  • ]
  • requiredConfirmations uint64
    sourceChainId uint64

    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.

    every uint64

    Repeat the call every n seconds after the initial call. If no time for initial call was specified, begin repeating immediately.

    initial uint64

    Trigger when the Ethereum time is greater or equal to this time, in Unix seconds.

    until uint64

    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).

  • Array [
  • conditions object[]

    Conditions that should be matched by the data to be considered of interest.

  • Array [
  • operator ConditionOperator (string)

    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 string

    Value to be compared with by the operator.

  • ]
  • key object

    Data source's data property key targeted by the filter.

    name string

    Name of the property.

    numberDecimalPlaces uint64
    type v1PropertyKeyType (string)

    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.

  • Array [
  • ethAddress object

    In case of an open oracle - Ethereum address will be submitted.

    address string
    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.

    key string
  • ]
  • 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.

  • Array [
  • operator ConditionOperator (string)

    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 string

    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.

  • Array [
  • operator ConditionOperator (string)

    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 string

    Value to be compared with by the operator.

  • ]
  • triggers object[]
  • Array [
  • every int64

    Repeat the trigger every n seconds after the initial. If no time for initial was specified, begin repeating immediately.

    initial int64

    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.

    abi string

    The ABI of that contract.

    address string

    Ethereum address of the contract to call.

    args object[]

    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[]
  • Array [
  • conditions object[]

    Conditions that should be matched by the data to be considered of interest.

  • Array [
  • operator ConditionOperator (string)

    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 string

    Value to be compared with by the operator.

  • ]
  • key object

    Data source's data property key targeted by the filter.

    name string

    Name of the property.

    numberDecimalPlaces uint64
    type v1PropertyKeyType (string)

    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.

  • ]
  • method string

    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.

  • Array [
  • expression string
    name string
  • ]
  • requiredConfirmations uint64
    sourceChainId uint64

    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.

    every uint64

    Repeat the call every n seconds after the initial call. If no time for initial call was specified, begin repeating immediately.

    initial uint64

    Trigger when the Ethereum time is greater or equal to this time, in Unix seconds.

    until uint64

    If repeating, s