From cd185a912c240bf084b3ccda13a4d7a132195628 Mon Sep 17 00:00:00 2001 From: Charlie Date: Thu, 28 Sep 2023 11:00:08 +0100 Subject: [PATCH 1/6] feat: enhance trades api --- tests/vega_sim/api/test_data.py | 36 +++++++++++++++++++++-- vega_sim/api/data.py | 51 +++++++++++++++++++++++++++++++++ 2 files changed, 85 insertions(+), 2 deletions(-) diff --git a/tests/vega_sim/api/test_data.py b/tests/vega_sim/api/test_data.py index 8c22d6a0f..ea199a42e 100644 --- a/tests/vega_sim/api/test_data.py +++ b/tests/vega_sim/api/test_data.py @@ -557,8 +557,28 @@ def test_get_trades( sell_order="so1", timestamp=100, trade_type=vega_protos.vega.Trade.TYPE_DEFAULT, - buyer_fee=Fee(maker_fee=10, infrastructure_fee=1.2, liquidity_fee=1.4), - seller_fee=Fee(maker_fee=20, infrastructure_fee=12.2, liquidity_fee=14.4), + buyer_fee=Fee( + maker_fee=10, + infrastructure_fee=1.2, + liquidity_fee=1.4, + maker_fee_referrer_discount=0, + maker_fee_volume_discount=0, + infrastructure_fee_referrer_discount=0, + infrastructure_fee_volume_discount=0, + liquidity_fee_referrer_discount=0, + liquidity_fee_volume_discount=0, + ), + seller_fee=Fee( + maker_fee=20, + infrastructure_fee=12.2, + liquidity_fee=14.4, + maker_fee_referrer_discount=0, + maker_fee_volume_discount=0, + infrastructure_fee_referrer_discount=0, + infrastructure_fee_volume_discount=0, + liquidity_fee_referrer_discount=0, + liquidity_fee_volume_discount=0, + ), buyer_auction_batch=100, seller_auction_batch=96, ) @@ -592,11 +612,23 @@ def ListTrades(self, request, context): maker_fee="100", infrastructure_fee="12", liquidity_fee="14", + maker_fee_referrer_discount="0", + maker_fee_volume_discount="0", + infrastructure_fee_referrer_discount="0", + infrastructure_fee_volume_discount="0", + liquidity_fee_referrer_discount="0", + liquidity_fee_volume_discount="0", ), seller_fee=vega_protos.vega.Fee( maker_fee="200", infrastructure_fee="122", liquidity_fee="144", + maker_fee_referrer_discount="0", + maker_fee_volume_discount="0", + infrastructure_fee_referrer_discount="0", + infrastructure_fee_volume_discount="0", + liquidity_fee_referrer_discount="0", + liquidity_fee_volume_discount="0", ), buyer_auction_batch=100, seller_auction_batch=96, diff --git a/vega_sim/api/data.py b/vega_sim/api/data.py index ae8d4f601..c66a76b28 100644 --- a/vega_sim/api/data.py +++ b/vega_sim/api/data.py @@ -184,6 +184,12 @@ class Fee: maker_fee: float infrastructure_fee: float liquidity_fee: float + maker_fee_volume_discount: float + infrastructure_fee_volume_discount: float + liquidity_fee_volume_discount: float + maker_fee_referrer_discount: float + infrastructure_fee_referrer_discount: float + liquidity_fee_referrer_discount: float @dataclass(frozen=True) @@ -354,6 +360,28 @@ def _trade_from_proto( liquidity_fee=num_from_padded_int( trade.buyer_fee.liquidity_fee, decimal_spec.asset_decimals ), + maker_fee_volume_discount=num_from_padded_int( + trade.buyer_fee.maker_fee_volume_discount, decimal_spec.asset_decimals + ), + infrastructure_fee_volume_discount=num_from_padded_int( + trade.buyer_fee.infrastructure_fee_volume_discount, + decimal_spec.asset_decimals, + ), + liquidity_fee_volume_discount=num_from_padded_int( + trade.buyer_fee.liquidity_fee_volume_discount, + decimal_spec.asset_decimals, + ), + maker_fee_referrer_discount=num_from_padded_int( + trade.buyer_fee.maker_fee_referrer_discount, decimal_spec.asset_decimals + ), + infrastructure_fee_referrer_discount=num_from_padded_int( + trade.buyer_fee.infrastructure_fee_referrer_discount, + decimal_spec.asset_decimals, + ), + liquidity_fee_referrer_discount=num_from_padded_int( + trade.buyer_fee.liquidity_fee_referrer_discount, + decimal_spec.asset_decimals, + ), ), seller_fee=Fee( maker_fee=num_from_padded_int( @@ -365,6 +393,29 @@ def _trade_from_proto( liquidity_fee=num_from_padded_int( trade.seller_fee.liquidity_fee, decimal_spec.asset_decimals ), + maker_fee_volume_discount=num_from_padded_int( + trade.seller_fee.maker_fee_volume_discount, decimal_spec.asset_decimals + ), + infrastructure_fee_volume_discount=num_from_padded_int( + trade.seller_fee.infrastructure_fee_volume_discount, + decimal_spec.asset_decimals, + ), + liquidity_fee_volume_discount=num_from_padded_int( + trade.seller_fee.liquidity_fee_volume_discount, + decimal_spec.asset_decimals, + ), + maker_fee_referrer_discount=num_from_padded_int( + trade.seller_fee.maker_fee_referrer_discount, + decimal_spec.asset_decimals, + ), + infrastructure_fee_referrer_discount=num_from_padded_int( + trade.seller_fee.infrastructure_fee_referrer_discount, + decimal_spec.asset_decimals, + ), + liquidity_fee_referrer_discount=num_from_padded_int( + trade.seller_fee.liquidity_fee_referrer_discount, + decimal_spec.asset_decimals, + ), ), buyer_auction_batch=trade.buyer_auction_batch, seller_auction_batch=trade.seller_auction_batch, From f425e1f9da5979d9d29092cf560cb4fa6d6ce7d4 Mon Sep 17 00:00:00 2001 From: Charlie Date: Thu, 28 Sep 2023 11:00:49 +0100 Subject: [PATCH 2/6] feat: add vdpr governance proposal --- tests/integration/test_trading.py | 74 +++++++++++++++++++++++++++++++ vega_sim/api/governance.py | 52 ++++++++++++++++++++++ vega_sim/service.py | 56 +++++++++++++++++++++++ vega_sim/vegahome/genesis.json | 8 ++++ 4 files changed, 190 insertions(+) diff --git a/tests/integration/test_trading.py b/tests/integration/test_trading.py index 8c7dde588..0e17fa2db 100644 --- a/tests/integration/test_trading.py +++ b/tests/integration/test_trading.py @@ -1616,3 +1616,77 @@ def test_referral_program(vega_service_with_market: VegaServiceNull): next_epoch(vega=vega) referral_program = vega.get_current_referral_program() assert referral_program is not None + + +@pytest.mark.integration +def test_volume_discount_program(vega_service_with_market: VegaServiceNull): + vega = vega_service_with_market + market_id = vega.all_markets()[0].id + create_and_faucet_wallet(vega=vega, wallet=PARTY_A, amount=1e9) + vega.wait_for_total_catchup() + create_and_faucet_wallet(vega=vega, wallet=PARTY_B, amount=1e9) + vega.wait_for_total_catchup() + vega.update_volume_discount_program( + proposal_key=MM_WALLET.name, + benefit_tiers=[ + { + "minimum_running_notional_taker_volume": 1, + "volume_discount_factor": 0.01, + }, + ], + window_length=7, + ) + next_epoch(vega=vega) + vega.submit_order( + trading_key=PARTY_A.name, + market_id=market_id, + order_type="TYPE_LIMIT", + time_in_force="TIME_IN_FORCE_GTC", + side="SIDE_BUY", + price=0.30, + volume=100, + ) + vega.wait_fn(1) + non_discounted_order_id = vega.submit_order( + trading_key=PARTY_B.name, + market_id=market_id, + order_type="TYPE_LIMIT", + time_in_force="TIME_IN_FORCE_GTC", + side="SIDE_SELL", + price=0.30, + volume=100, + wait=True, + ) + non_discounted_trades = vega.get_trades( + market_id=market_id, order_id=non_discounted_order_id + ) + assert non_discounted_trades[0].seller_fee.maker_fee_volume_discount == 0 + assert non_discounted_trades[0].seller_fee.liquidity_fee_volume_discount == 0 + assert non_discounted_trades[0].seller_fee.infrastructure_fee_volume_discount == 0 + next_epoch(vega=vega) + vega.submit_order( + trading_key=PARTY_A.name, + market_id=market_id, + order_type="TYPE_LIMIT", + time_in_force="TIME_IN_FORCE_GTC", + side="SIDE_SELL", + price=0.30, + volume=10000, + ) + vega.wait_fn(1) + discounted_order_id = vega.submit_order( + trading_key=PARTY_B.name, + market_id=market_id, + order_type="TYPE_LIMIT", + time_in_force="TIME_IN_FORCE_GTC", + side="SIDE_BUY", + price=0.30, + volume=10000, + wait=True, + ) + discounted_trades = vega.get_trades( + market_id=market_id, order_id=discounted_order_id + ) + assert discounted_trades[0].buyer_fee.maker_fee_volume_discount != 0 + assert discounted_trades[0].buyer_fee.liquidity_fee_volume_discount != 0 + assert discounted_trades[0].buyer_fee.infrastructure_fee_volume_discount != 0 diff --git a/vega_sim/api/governance.py b/vega_sim/api/governance.py index a1e21142d..bbf3f04d8 100644 --- a/vega_sim/api/governance.py +++ b/vega_sim/api/governance.py @@ -693,3 +693,55 @@ def update_referral_program( time_forward_fn=time_forward_fn, key_name=key_name, ).proposal.id + + +def update_volume_discount_program( + key_name: str, + wallet: Wallet, + data_client: vac.VegaTradingDataClientV2, + benefit_tiers: Optional[list[dict]] = None, + end_of_program_timestamp: Optional[int] = None, + window_length: Optional[int] = None, + wallet_name: Optional[str] = None, + closing_time: Optional[int] = None, + enactment_time: Optional[int] = None, + time_forward_fn: Optional[Callable[[], None]] = None, +): + volume_discount_program = vega_protos.vega.VolumeDiscountProgram( + end_of_program_timestamp=end_of_program_timestamp, + window_length=window_length, + ) + if benefit_tiers is not None: + for benefit_tier in benefit_tiers: + volume_discount_program.benefit_tiers.extend( + [ + vega_protos.vega.VolumeBenefitTier( + minimum_running_notional_taker_volume=str( + benefit_tier["minimum_running_notional_taker_volume"] + ), + volume_discount_factor=str( + benefit_tier["volume_discount_factor"] + ), + ) + ] + ) + + proposal = _build_generic_proposal( + pub_key=wallet.public_key(wallet_name=wallet_name, name=key_name), + data_client=data_client, + closing_time=closing_time, + enactment_time=enactment_time, + ) + proposal.terms.update_volume_discount_program.CopyFrom( + vega_protos.governance.UpdateVolumeDiscountProgram( + changes=volume_discount_program + ) + ) + return _make_and_wait_for_proposal( + wallet_name=wallet_name, + wallet=wallet, + proposal=proposal, + data_client=data_client, + time_forward_fn=time_forward_fn, + key_name=key_name, + ).proposal.id diff --git a/vega_sim/service.py b/vega_sim/service.py index 85f11346f..558b058bf 100644 --- a/vega_sim/service.py +++ b/vega_sim/service.py @@ -2751,3 +2751,59 @@ def get_current_referral_program( return data.get_current_referral_program( data_client=self.trading_data_client_v2 ) + + def update_volume_discount_program( + self, + proposal_key: str, + benefit_tiers: Optional[list[dict]] = None, + end_of_program_timestamp: Optional[int] = None, + window_length: Optional[int] = None, + wallet_name: Optional[str] = None, + vote_closing_time: Optional[int] = None, + vote_enactment_time: Optional[int] = None, + approve_proposal: bool = True, + forward_time_to_enactment: bool = True, + ): + blockchain_time_seconds = self.get_blockchain_time(in_seconds=True) + closing_time = ( + blockchain_time_seconds + self.seconds_per_block * 40 + if vote_closing_time is None + else int(vote_closing_time.timestamp()) + ) + enactment_time = ( + blockchain_time_seconds + self.seconds_per_block * 50 + if vote_enactment_time is None + else int(vote_enactment_time.timestamp()) + ) + end_of_program_timestamp = ( + enactment_time + self.seconds_per_block * 60 * 60 * 24 * 7 * 52 + if end_of_program_timestamp is None + else int(end_of_program_timestamp.timestamp()) + ) + proposal_id = gov.update_volume_discount_program( + key_name=proposal_key, + wallet=self.wallet, + data_client=self.trading_data_client_v2, + benefit_tiers=benefit_tiers, + end_of_program_timestamp=end_of_program_timestamp, + window_length=window_length, + wallet_name=wallet_name, + closing_time=closing_time, + enactment_time=enactment_time, + time_forward_fn=lambda: self.wait_fn(2), + ) + if approve_proposal: + gov.approve_proposal( + proposal_id=proposal_id, + wallet=self.wallet, + wallet_name=wallet_name, + key_name=proposal_key, + ) + + if forward_time_to_enactment: + time_to_enactment = enactment_time - self.get_blockchain_time( + in_seconds=True + ) + self.wait_fn(int(time_to_enactment / self.seconds_per_block) + 1) + self.wait_for_thread_catchup() + return proposal_id diff --git a/vega_sim/vegahome/genesis.json b/vega_sim/vegahome/genesis.json index 38e6c5409..82a5f61c2 100644 --- a/vega_sim/vegahome/genesis.json +++ b/vega_sim/vegahome/genesis.json @@ -119,6 +119,14 @@ "governance.proposal.referralProgram.minVoterBalance": "1", "governance.proposal.referralProgram.requiredMajority": "0.5", "governance.proposal.referralProgram.requiredParticipation": "0.00001", + "governance.proposal.VolumeDiscountProgram.maxClose": "8760h0m0s", + "governance.proposal.VolumeDiscountProgram.maxEnact": "8760h0m0s", + "governance.proposal.VolumeDiscountProgram.minClose": "1s", + "governance.proposal.VolumeDiscountProgram.minEnact": "1s", + "governance.proposal.VolumeDiscountProgram.minProposerBalance": "1", + "governance.proposal.VolumeDiscountProgram.minVoterBalance": "1", + "governance.proposal.VolumeDiscountProgram.requiredMajority": "0.5", + "governance.proposal.VolumeDiscountProgram.requiredParticipation": "0.00001", "limits.markets.maxPeggedOrders": "1500", "market.auction.maximumDuration": "168h", "market.auction.minimumDuration": "1s", From 2b167967bf03aae5eaf505a2f4616802ba3bfbe0 Mon Sep 17 00:00:00 2001 From: Charlie Date: Thu, 28 Sep 2023 13:08:11 +0100 Subject: [PATCH 3/6] feat: add vdpr to fuzz test --- vega_sim/scenario/fuzzed_markets/agents.py | 105 +++++++++++++++++++ vega_sim/scenario/fuzzed_markets/scenario.py | 9 ++ 2 files changed, 114 insertions(+) diff --git a/vega_sim/scenario/fuzzed_markets/agents.py b/vega_sim/scenario/fuzzed_markets/agents.py index af074de5b..72aedd933 100644 --- a/vega_sim/scenario/fuzzed_markets/agents.py +++ b/vega_sim/scenario/fuzzed_markets/agents.py @@ -1033,3 +1033,108 @@ def _fuzzed_proposal(self): ) ), ) + + +class FuzzyVolumeDiscountProgramManager(StateAgentWithWallet): + """Agent proposes sensible and fuzzed update referral program proposals at a + controlled frequency. + """ + + def __init__( + self, + key_name: str, + step_bias=0.5, + attempts_per_step=100, + stake_key: bool = False, + wallet_name: Optional[str] = None, + random_state: Optional[RandomState] = None, + tag: Optional[str] = None, + ): + self.key_name = key_name + self.wallet_name = wallet_name + self.tag = tag + self.stake_key = stake_key + + self.step_bias = step_bias + self.attempts_per_step = attempts_per_step + + self.random_state = random_state if random_state is not None else RandomState() + + def initialise(self, vega: VegaServiceNull, create_key: bool = True, mint_key=True): + super().initialise(vega, create_key) + self.vega.wait_for_total_catchup() + if mint_key: + self.vega.mint( + wallet_name=self.wallet_name, + asset="VOTE", + amount=1e4, + key_name=self.key_name, + ) + self.vega.wait_for_total_catchup() + if self.stake_key: + self.vega.stake( + amount=1, + key_name=self.key_name, + wallet_name=self.wallet_name, + ) + self.vega.wait_for_total_catchup() + self._sensible_proposal() + + def step(self, vega_state): + if self.random_state.rand() > self.step_bias: + for i in range(self.attempts_per_step): + try: + self._fuzzed_proposal() + return + except (HTTPError, ProposalNotAcceptedError): + continue + logging.info( + "All fuzzed UpdateReferralProgram proposals failed, submitting sensible proposal." + ) + self._sensible_proposal() + + def _sensible_proposal(self): + self.vega.update_volume_discount_program( + forward_time_to_enactment=False, + proposal_key=self.key_name, + wallet_name=self.wallet_name, + benefit_tiers=[ + { + "minimum_running_notional_taker_volume": 1000, + "volume_discount_factor": 0.01, + }, + { + "minimum_running_notional_taker_volume": 2000, + "volume_discount_factor": 0.02, + }, + { + "minimum_running_notional_taker_volume": 3000, + "volume_discount_factor": 0.03, + }, + ], + window_length=1, + ) + + def _fuzzed_proposal(self): + self.vega.update_volume_discount_program( + forward_time_to_enactment=False, + proposal_key=self.key_name, + wallet_name=self.wallet_name, + benefit_tiers=[ + { + "minimum_running_notional_taker_volume": self.random_state.randint( + 1, 1e6 + ), + "volume_discount_factor": self.random_state.rand(), + } + for _ in range(self.random_state.randint(1, 5)) + ], + window_length=self.random_state.randint(1, 100), + end_of_program_timestamp=datetime.fromtimestamp( + self.vega.get_blockchain_time(in_seconds=True) + + self.random_state.normal( + loc=600 * self.vega.seconds_per_block, + scale=300 * self.vega.seconds_per_block, + ) + ), + ) diff --git a/vega_sim/scenario/fuzzed_markets/scenario.py b/vega_sim/scenario/fuzzed_markets/scenario.py index 9cecef59e..f6715bfcc 100644 --- a/vega_sim/scenario/fuzzed_markets/scenario.py +++ b/vega_sim/scenario/fuzzed_markets/scenario.py @@ -34,6 +34,7 @@ RiskySimpleLiquidityProvider, FuzzyLiquidityProvider, FuzzyReferralProgramManager, + FuzzyVolumeDiscountProgramManager, ) import itertools @@ -197,6 +198,14 @@ def configure_agents( attempts_per_step=100, ) ) + self.agents.append( + FuzzyVolumeDiscountProgramManager( + wallet_name="REFERRAL_PROGRAM_MANAGERS", + key_name=f"REFERRAL_PROGRAM_MANAGER", + step_bias=0.2, + attempts_per_step=100, + ) + ) for i_market in range(self.n_markets): # Define the market and the asset: From 95f3b4c8cefa02b75ed0e5b6eb8769eab1365189 Mon Sep 17 00:00:00 2001 From: Charlie Date: Fri, 29 Sep 2023 18:22:10 +0100 Subject: [PATCH 4/6] chore: bump vega version --- .../data_node/api/v2/trading_data_pb2.py | 48 +++++++--- .../data_node/api/v2/trading_data_pb2_grpc.py | 93 +++++++++++++++++++ 2 files changed, 130 insertions(+), 11 deletions(-) diff --git a/vega_sim/proto/data_node/api/v2/trading_data_pb2.py b/vega_sim/proto/data_node/api/v2/trading_data_pb2.py index d2e6040c5..33603edbf 100644 --- a/vega_sim/proto/data_node/api/v2/trading_data_pb2.py +++ b/vega_sim/proto/data_node/api/v2/trading_data_pb2.py @@ -29,7 +29,7 @@ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile( - b'\n#data-node/api/v2/trading_data.proto\x12\x0f\x64\x61tanode.api.v2\x1a\x1fgoogle/api/field_behavior.proto\x1a\x19google/api/httpbody.proto\x1a.protoc-gen-openapiv2/options/annotations.proto\x1a\x11vega/assets.proto\x1a)vega/commands/v1/validator_commands.proto\x1a\x1bvega/events/v1/events.proto\x1a\x15vega/governance.proto\x1a\x12vega/markets.proto\x1a\x11vega/oracle.proto\x1a\x0fvega/vega.proto"\xd9\x01\n\nPagination\x12\x19\n\x05\x66irst\x18\x01 \x01(\x05H\x00R\x05\x66irst\x88\x01\x01\x12\x19\n\x05\x61\x66ter\x18\x02 \x01(\tH\x01R\x05\x61\x66ter\x88\x01\x01\x12\x17\n\x04last\x18\x03 \x01(\x05H\x02R\x04last\x88\x01\x01\x12\x1b\n\x06\x62\x65\x66ore\x18\x04 \x01(\tH\x03R\x06\x62\x65\x66ore\x88\x01\x01\x12&\n\x0cnewest_first\x18\x05 \x01(\x08H\x04R\x0bnewestFirst\x88\x01\x01\x42\x08\n\x06_firstB\x08\n\x06_afterB\x07\n\x05_lastB\t\n\x07_beforeB\x0f\n\r_newest_first"\x9c\x01\n\x08PageInfo\x12"\n\rhas_next_page\x18\x01 \x01(\x08R\x0bhasNextPage\x12*\n\x11has_previous_page\x18\x02 \x01(\x08R\x0fhasPreviousPage\x12!\n\x0cstart_cursor\x18\x03 \x01(\tR\x0bstartCursor\x12\x1d\n\nend_cursor\x18\x04 \x01(\tR\tendCursor"\x9a\x01\n\x0e\x41\x63\x63ountBalance\x12\x14\n\x05owner\x18\x02 \x01(\tR\x05owner\x12\x18\n\x07\x62\x61lance\x18\x03 \x01(\tR\x07\x62\x61lance\x12\x14\n\x05\x61sset\x18\x04 \x01(\tR\x05\x61sset\x12\x1b\n\tmarket_id\x18\x05 \x01(\tR\x08marketId\x12%\n\x04type\x18\x06 \x01(\x0e\x32\x11.vega.AccountTypeR\x04type"\x9e\x01\n\x13ListAccountsRequest\x12\x36\n\x06\x66ilter\x18\x01 \x01(\x0b\x32\x1e.datanode.api.v2.AccountFilterR\x06\x66ilter\x12@\n\npagination\x18\x02 \x01(\x0b\x32\x1b.datanode.api.v2.PaginationH\x00R\npagination\x88\x01\x01\x42\r\n\x0b_pagination"W\n\x14ListAccountsResponse\x12?\n\x08\x61\x63\x63ounts\x18\x01 \x01(\x0b\x32#.datanode.api.v2.AccountsConnectionR\x08\x61\x63\x63ounts"\x80\x01\n\x12\x41\x63\x63ountsConnection\x12\x32\n\x05\x65\x64ges\x18\x01 \x03(\x0b\x32\x1c.datanode.api.v2.AccountEdgeR\x05\x65\x64ges\x12\x36\n\tpage_info\x18\x02 \x01(\x0b\x32\x19.datanode.api.v2.PageInfoR\x08pageInfo"Z\n\x0b\x41\x63\x63ountEdge\x12\x33\n\x04node\x18\x01 \x01(\x0b\x32\x1f.datanode.api.v2.AccountBalanceR\x04node\x12\x16\n\x06\x63ursor\x18\x02 \x01(\tR\x06\x63ursor"\x8d\x01\n\x16ObserveAccountsRequest\x12\x1b\n\tmarket_id\x18\x01 \x01(\tR\x08marketId\x12\x19\n\x08party_id\x18\x02 \x01(\tR\x07partyId\x12\x14\n\x05\x61sset\x18\x03 \x01(\tR\x05\x61sset\x12%\n\x04type\x18\x04 \x01(\x0e\x32\x11.vega.AccountTypeR\x04type"\xa6\x01\n\x17ObserveAccountsResponse\x12\x42\n\x08snapshot\x18\x01 \x01(\x0b\x32$.datanode.api.v2.AccountSnapshotPageH\x00R\x08snapshot\x12;\n\x07updates\x18\x02 \x01(\x0b\x32\x1f.datanode.api.v2.AccountUpdatesH\x00R\x07updatesB\n\n\x08response"o\n\x13\x41\x63\x63ountSnapshotPage\x12;\n\x08\x61\x63\x63ounts\x18\x01 \x03(\x0b\x32\x1f.datanode.api.v2.AccountBalanceR\x08\x61\x63\x63ounts\x12\x1b\n\tlast_page\x18\x02 \x01(\x08R\x08lastPage"M\n\x0e\x41\x63\x63ountUpdates\x12;\n\x08\x61\x63\x63ounts\x18\x01 \x03(\x0b\x32\x1f.datanode.api.v2.AccountBalanceR\x08\x61\x63\x63ounts"\r\n\x0bInfoRequest"I\n\x0cInfoResponse\x12\x18\n\x07version\x18\x01 \x01(\tR\x07version\x12\x1f\n\x0b\x63ommit_hash\x18\x02 \x01(\tR\ncommitHash"]\n\x0fGetOrderRequest\x12\x1f\n\x08order_id\x18\x01 \x01(\tB\x04\xe2\x41\x01\x02R\x07orderId\x12\x1d\n\x07version\x18\x02 \x01(\x05H\x00R\x07version\x88\x01\x01\x42\n\n\x08_version"5\n\x10GetOrderResponse\x12!\n\x05order\x18\x01 \x01(\x0b\x32\x0b.vega.OrderR\x05order"\xbd\x03\n\x0bOrderFilter\x12.\n\x08statuses\x18\x01 \x03(\x0e\x32\x12.vega.Order.StatusR\x08statuses\x12&\n\x05types\x18\x02 \x03(\x0e\x32\x10.vega.Order.TypeR\x05types\x12=\n\x0etime_in_forces\x18\x03 \x03(\x0e\x32\x17.vega.Order.TimeInForceR\x0ctimeInForces\x12+\n\x11\x65xclude_liquidity\x18\x04 \x01(\x08R\x10\x65xcludeLiquidity\x12\x1b\n\tparty_ids\x18\x05 \x03(\tR\x08partyIds\x12\x1d\n\nmarket_ids\x18\x06 \x03(\tR\tmarketIds\x12!\n\treference\x18\x07 \x01(\tH\x00R\treference\x88\x01\x01\x12>\n\ndate_range\x18\x08 \x01(\x0b\x32\x1a.datanode.api.v2.DateRangeH\x01R\tdateRange\x88\x01\x01\x12 \n\tlive_only\x18\t \x01(\x08H\x02R\x08liveOnly\x88\x01\x01\x42\x0c\n\n_referenceB\r\n\x0b_date_rangeB\x0c\n\n_live_only"\xaa\x01\n\x11ListOrdersRequest\x12@\n\npagination\x18\x02 \x01(\x0b\x32\x1b.datanode.api.v2.PaginationH\x00R\npagination\x88\x01\x01\x12\x39\n\x06\x66ilter\x18\x05 \x01(\x0b\x32\x1c.datanode.api.v2.OrderFilterH\x01R\x06\x66ilter\x88\x01\x01\x42\r\n\x0b_paginationB\t\n\x07_filter"N\n\x12ListOrdersResponse\x12\x38\n\x06orders\x18\x01 \x01(\x0b\x32 .datanode.api.v2.OrderConnectionR\x06orders"\x8c\x01\n\x18ListOrderVersionsRequest\x12\x1f\n\x08order_id\x18\x01 \x01(\tB\x04\xe2\x41\x01\x02R\x07orderId\x12@\n\npagination\x18\x04 \x01(\x0b\x32\x1b.datanode.api.v2.PaginationH\x00R\npagination\x88\x01\x01\x42\r\n\x0b_pagination"U\n\x19ListOrderVersionsResponse\x12\x38\n\x06orders\x18\x01 \x01(\x0b\x32 .datanode.api.v2.OrderConnectionR\x06orders"\x9a\x01\n\x14ObserveOrdersRequest\x12\x1d\n\nmarket_ids\x18\x01 \x03(\tR\tmarketIds\x12\x1b\n\tparty_ids\x18\x02 \x03(\tR\x08partyIds\x12\x30\n\x11\x65xclude_liquidity\x18\x03 \x01(\x08H\x00R\x10\x65xcludeLiquidity\x88\x01\x01\x42\x14\n\x12_exclude_liquidity"\xa0\x01\n\x15ObserveOrdersResponse\x12@\n\x08snapshot\x18\x01 \x01(\x0b\x32".datanode.api.v2.OrderSnapshotPageH\x00R\x08snapshot\x12\x39\n\x07updates\x18\x02 \x01(\x0b\x32\x1d.datanode.api.v2.OrderUpdatesH\x00R\x07updatesB\n\n\x08response"U\n\x11OrderSnapshotPage\x12#\n\x06orders\x18\x01 \x03(\x0b\x32\x0b.vega.OrderR\x06orders\x12\x1b\n\tlast_page\x18\x02 \x01(\x08R\x08lastPage"3\n\x0cOrderUpdates\x12#\n\x06orders\x18\x01 \x03(\x0b\x32\x0b.vega.OrderR\x06orders"6\n\x13GetStopOrderRequest\x12\x1f\n\x08order_id\x18\x01 \x01(\tB\x04\xe2\x41\x01\x02R\x07orderId"L\n\x14GetStopOrderResponse\x12\x34\n\x05order\x18\x01 \x01(\x0b\x32\x1e.vega.events.v1.StopOrderEventR\x05order"\xb2\x01\n\x15ListStopOrdersRequest\x12@\n\npagination\x18\x02 \x01(\x0b\x32\x1b.datanode.api.v2.PaginationH\x00R\npagination\x88\x01\x01\x12=\n\x06\x66ilter\x18\x05 \x01(\x0b\x32 .datanode.api.v2.StopOrderFilterH\x01R\x06\x66ilter\x88\x01\x01\x42\r\n\x0b_paginationB\t\n\x07_filter"\xcd\x02\n\x0fStopOrderFilter\x12\x32\n\x08statuses\x18\x01 \x03(\x0e\x32\x16.vega.StopOrder.StatusR\x08statuses\x12K\n\x11\x65xpiry_strategies\x18\x02 \x03(\x0e\x32\x1e.vega.StopOrder.ExpiryStrategyR\x10\x65xpiryStrategies\x12>\n\ndate_range\x18\x03 \x01(\x0b\x32\x1a.datanode.api.v2.DateRangeH\x00R\tdateRange\x88\x01\x01\x12\x1b\n\tparty_ids\x18\x04 \x03(\tR\x08partyIds\x12\x1d\n\nmarket_ids\x18\x05 \x03(\tR\tmarketIds\x12 \n\tlive_only\x18\x06 \x01(\x08H\x01R\x08liveOnly\x88\x01\x01\x42\r\n\x0b_date_rangeB\x0c\n\n_live_only"[\n\rStopOrderEdge\x12\x32\n\x04node\x18\x01 \x01(\x0b\x32\x1e.vega.events.v1.StopOrderEventR\x04node\x12\x16\n\x06\x63ursor\x18\x02 \x01(\tR\x06\x63ursor"\x83\x01\n\x13StopOrderConnection\x12\x34\n\x05\x65\x64ges\x18\x01 \x03(\x0b\x32\x1e.datanode.api.v2.StopOrderEdgeR\x05\x65\x64ges\x12\x36\n\tpage_info\x18\x02 \x01(\x0b\x32\x19.datanode.api.v2.PageInfoR\x08pageInfo"V\n\x16ListStopOrdersResponse\x12<\n\x06orders\x18\x01 \x01(\x0b\x32$.datanode.api.v2.StopOrderConnectionR\x06orders"\xa3\x01\n\x14ListPositionsRequest\x12\x19\n\x08party_id\x18\x01 \x01(\tR\x07partyId\x12\x1b\n\tmarket_id\x18\x02 \x01(\tR\x08marketId\x12@\n\npagination\x18\x03 \x01(\x0b\x32\x1b.datanode.api.v2.PaginationH\x00R\npagination\x88\x01\x01:\x02\x18\x01\x42\r\n\x0b_pagination"^\n\x15ListPositionsResponse\x12\x41\n\tpositions\x18\x01 \x01(\x0b\x32#.datanode.api.v2.PositionConnectionR\tpositions:\x02\x18\x01"M\n\x0fPositionsFilter\x12\x1b\n\tparty_ids\x18\x01 \x03(\tR\x08partyIds\x12\x1d\n\nmarket_ids\x18\x02 \x03(\tR\tmarketIds"\xa4\x01\n\x17ListAllPositionsRequest\x12\x38\n\x06\x66ilter\x18\x01 \x01(\x0b\x32 .datanode.api.v2.PositionsFilterR\x06\x66ilter\x12@\n\npagination\x18\x02 \x01(\x0b\x32\x1b.datanode.api.v2.PaginationH\x00R\npagination\x88\x01\x01\x42\r\n\x0b_pagination"]\n\x18ListAllPositionsResponse\x12\x41\n\tpositions\x18\x01 \x01(\x0b\x32#.datanode.api.v2.PositionConnectionR\tpositions"J\n\x0cPositionEdge\x12"\n\x04node\x18\x01 \x01(\x0b\x32\x0e.vega.PositionR\x04node\x12\x16\n\x06\x63ursor\x18\x02 \x01(\tR\x06\x63ursor"\x81\x01\n\x12PositionConnection\x12\x33\n\x05\x65\x64ges\x18\x01 \x03(\x0b\x32\x1d.datanode.api.v2.PositionEdgeR\x05\x65\x64ges\x12\x36\n\tpage_info\x18\x02 \x01(\x0b\x32\x19.datanode.api.v2.PageInfoR\x08pageInfo"v\n\x17ObservePositionsRequest\x12\x1e\n\x08party_id\x18\x01 \x01(\tH\x00R\x07partyId\x88\x01\x01\x12 \n\tmarket_id\x18\x02 \x01(\tH\x01R\x08marketId\x88\x01\x01\x42\x0b\n\t_party_idB\x0c\n\n_market_id"\xa9\x01\n\x18ObservePositionsResponse\x12\x43\n\x08snapshot\x18\x01 \x01(\x0b\x32%.datanode.api.v2.PositionSnapshotPageH\x00R\x08snapshot\x12<\n\x07updates\x18\x02 \x01(\x0b\x32 .datanode.api.v2.PositionUpdatesH\x00R\x07updatesB\n\n\x08response"a\n\x14PositionSnapshotPage\x12,\n\tpositions\x18\x01 \x03(\x0b\x32\x0e.vega.PositionR\tpositions\x12\x1b\n\tlast_page\x18\x02 \x01(\x08R\x08lastPage"?\n\x0fPositionUpdates\x12,\n\tpositions\x18\x01 \x03(\x0b\x32\x0e.vega.PositionR\tpositions"\xa3\x02\n\x11LedgerEntryFilter\x12\x37\n\x18\x63lose_on_account_filters\x18\x01 \x01(\x08R\x15\x63loseOnAccountFilters\x12N\n\x13\x66rom_account_filter\x18\x02 \x01(\x0b\x32\x1e.datanode.api.v2.AccountFilterR\x11\x66romAccountFilter\x12J\n\x11to_account_filter\x18\x03 \x01(\x0b\x32\x1e.datanode.api.v2.AccountFilterR\x0ftoAccountFilter\x12\x39\n\x0etransfer_types\x18\x05 \x03(\x0e\x32\x12.vega.TransferTypeR\rtransferTypes"\xd9\x05\n\x15\x41ggregatedLedgerEntry\x12\x1c\n\ttimestamp\x18\x02 \x01(\x03R\ttimestamp\x12\x1a\n\x08quantity\x18\x03 \x01(\tR\x08quantity\x12\x37\n\rtransfer_type\x18\x04 \x01(\x0e\x32\x12.vega.TransferTypeR\x0ctransferType\x12\x1e\n\x08\x61sset_id\x18\x05 \x01(\tH\x00R\x07\x61ssetId\x88\x01\x01\x12=\n\x11\x66rom_account_type\x18\x06 \x01(\x0e\x32\x11.vega.AccountTypeR\x0f\x66romAccountType\x12\x39\n\x0fto_account_type\x18\x07 \x01(\x0e\x32\x11.vega.AccountTypeR\rtoAccountType\x12\x36\n\x15\x66rom_account_party_id\x18\x08 \x01(\tH\x01R\x12\x66romAccountPartyId\x88\x01\x01\x12\x32\n\x13to_account_party_id\x18\t \x01(\tH\x02R\x10toAccountPartyId\x88\x01\x01\x12\x38\n\x16\x66rom_account_market_id\x18\n \x01(\tH\x03R\x13\x66romAccountMarketId\x88\x01\x01\x12\x34\n\x14to_account_market_id\x18\x0b \x01(\tH\x04R\x11toAccountMarketId\x88\x01\x01\x12\x30\n\x14\x66rom_account_balance\x18\x0c \x01(\tR\x12\x66romAccountBalance\x12,\n\x12to_account_balance\x18\r \x01(\tR\x10toAccountBalanceB\x0b\n\t_asset_idB\x18\n\x16_from_account_party_idB\x16\n\x14_to_account_party_idB\x19\n\x17_from_account_market_idB\x17\n\x15_to_account_market_idJ\x04\x08\x01\x10\x02"\xf6\x01\n\x18ListLedgerEntriesRequest\x12:\n\x06\x66ilter\x18\x01 \x01(\x0b\x32".datanode.api.v2.LedgerEntryFilterR\x06\x66ilter\x12@\n\npagination\x18\x02 \x01(\x0b\x32\x1b.datanode.api.v2.PaginationH\x00R\npagination\x88\x01\x01\x12>\n\ndate_range\x18\x03 \x01(\x0b\x32\x1a.datanode.api.v2.DateRangeH\x01R\tdateRange\x88\x01\x01\x42\r\n\x0b_paginationB\r\n\x0b_date_range"\xb9\x01\n\x1a\x45xportLedgerEntriesRequest\x12\x1f\n\x08party_id\x18\x01 \x01(\tB\x04\xe2\x41\x01\x02R\x07partyId\x12\x1e\n\x08\x61sset_id\x18\x02 \x01(\tH\x00R\x07\x61ssetId\x88\x01\x01\x12>\n\ndate_range\x18\x04 \x01(\x0b\x32\x1a.datanode.api.v2.DateRangeH\x01R\tdateRange\x88\x01\x01\x42\x0b\n\t_asset_idB\r\n\x0b_date_range"v\n\x19ListLedgerEntriesResponse\x12Y\n\x0eledger_entries\x18\x01 \x01(\x0b\x32\x32.datanode.api.v2.AggregatedLedgerEntriesConnectionR\rledgerEntries"q\n\x1b\x41ggregatedLedgerEntriesEdge\x12:\n\x04node\x18\x01 \x01(\x0b\x32&.datanode.api.v2.AggregatedLedgerEntryR\x04node\x12\x16\n\x06\x63ursor\x18\x02 \x01(\tR\x06\x63ursor"\x9f\x01\n!AggregatedLedgerEntriesConnection\x12\x42\n\x05\x65\x64ges\x18\x01 \x03(\x0b\x32,.datanode.api.v2.AggregatedLedgerEntriesEdgeR\x05\x65\x64ges\x12\x36\n\tpage_info\x18\x02 \x01(\x0b\x32\x19.datanode.api.v2.PageInfoR\x08pageInfo"\xf3\x01\n\x19ListBalanceChangesRequest\x12\x36\n\x06\x66ilter\x18\x01 \x01(\x0b\x32\x1e.datanode.api.v2.AccountFilterR\x06\x66ilter\x12@\n\npagination\x18\x05 \x01(\x0b\x32\x1b.datanode.api.v2.PaginationH\x00R\npagination\x88\x01\x01\x12>\n\ndate_range\x18\x06 \x01(\x0b\x32\x1a.datanode.api.v2.DateRangeH\x01R\tdateRange\x88\x01\x01\x42\r\n\x0b_paginationB\r\n\x0b_date_range"f\n\x1aListBalanceChangesResponse\x12H\n\x08\x62\x61lances\x18\x01 \x01(\x0b\x32,.datanode.api.v2.AggregatedBalanceConnectionR\x08\x62\x61lances"\xac\x02\n\x18GetBalanceHistoryRequest\x12\x36\n\x06\x66ilter\x18\x01 \x01(\x0b\x32\x1e.datanode.api.v2.AccountFilterR\x06\x66ilter\x12\x38\n\x08group_by\x18\x02 \x03(\x0e\x32\x1d.datanode.api.v2.AccountFieldR\x07groupBy\x12@\n\npagination\x18\x03 \x01(\x0b\x32\x1b.datanode.api.v2.PaginationH\x00R\npagination\x88\x01\x01\x12>\n\ndate_range\x18\x04 \x01(\x0b\x32\x1a.datanode.api.v2.DateRangeH\x01R\tdateRange\x88\x01\x01\x42\r\n\x0b_paginationB\r\n\x0b_date_range"e\n\x19GetBalanceHistoryResponse\x12H\n\x08\x62\x61lances\x18\x01 \x01(\x0b\x32,.datanode.api.v2.AggregatedBalanceConnectionR\x08\x62\x61lances"g\n\x15\x41ggregatedBalanceEdge\x12\x36\n\x04node\x18\x01 \x01(\x0b\x32".datanode.api.v2.AggregatedBalanceR\x04node\x12\x16\n\x06\x63ursor\x18\x02 \x01(\tR\x06\x63ursor"\x93\x01\n\x1b\x41ggregatedBalanceConnection\x12<\n\x05\x65\x64ges\x18\x01 \x03(\x0b\x32&.datanode.api.v2.AggregatedBalanceEdgeR\x05\x65\x64ges\x12\x36\n\tpage_info\x18\x02 \x01(\x0b\x32\x19.datanode.api.v2.PageInfoR\x08pageInfo"\x9e\x01\n\rAccountFilter\x12\x19\n\x08\x61sset_id\x18\x01 \x01(\tR\x07\x61ssetId\x12\x1b\n\tparty_ids\x18\x02 \x03(\tR\x08partyIds\x12\x1d\n\nmarket_ids\x18\x03 \x03(\tR\tmarketIds\x12\x36\n\raccount_types\x18\x04 \x03(\x0e\x32\x11.vega.AccountTypeR\x0c\x61\x63\x63ountTypes"\xa1\x02\n\x11\x41ggregatedBalance\x12\x1c\n\ttimestamp\x18\x01 \x01(\x03R\ttimestamp\x12\x18\n\x07\x62\x61lance\x18\x02 \x01(\tR\x07\x62\x61lance\x12\x1e\n\x08party_id\x18\x04 \x01(\tH\x00R\x07partyId\x88\x01\x01\x12\x1e\n\x08\x61sset_id\x18\x05 \x01(\tH\x01R\x07\x61ssetId\x88\x01\x01\x12 \n\tmarket_id\x18\x06 \x01(\tH\x02R\x08marketId\x88\x01\x01\x12\x39\n\x0c\x61\x63\x63ount_type\x18\x07 \x01(\x0e\x32\x11.vega.AccountTypeH\x03R\x0b\x61\x63\x63ountType\x88\x01\x01\x42\x0b\n\t_party_idB\x0b\n\t_asset_idB\x0c\n\n_market_idB\x0f\n\r_account_type";\n\x1aObserveMarketsDepthRequest\x12\x1d\n\nmarket_ids\x18\x01 \x03(\tR\tmarketIds"S\n\x1bObserveMarketsDepthResponse\x12\x34\n\x0cmarket_depth\x18\x01 \x03(\x0b\x32\x11.vega.MarketDepthR\x0bmarketDepth"B\n!ObserveMarketsDepthUpdatesRequest\x12\x1d\n\nmarket_ids\x18\x01 \x03(\tR\tmarketIds"U\n"ObserveMarketsDepthUpdatesResponse\x12/\n\x06update\x18\x01 \x03(\x0b\x32\x17.vega.MarketDepthUpdateR\x06update":\n\x19ObserveMarketsDataRequest\x12\x1d\n\nmarket_ids\x18\x01 \x03(\tR\tmarketIds"O\n\x1aObserveMarketsDataResponse\x12\x31\n\x0bmarket_data\x18\x01 \x03(\x0b\x32\x10.vega.MarketDataR\nmarketData"p\n\x1bGetLatestMarketDepthRequest\x12!\n\tmarket_id\x18\x01 \x01(\tB\x04\xe2\x41\x01\x02R\x08marketId\x12 \n\tmax_depth\x18\x02 \x01(\x04H\x00R\x08maxDepth\x88\x01\x01\x42\x0c\n\n_max_depth"\xda\x01\n\x1cGetLatestMarketDepthResponse\x12\x1b\n\tmarket_id\x18\x01 \x01(\tR\x08marketId\x12"\n\x03\x62uy\x18\x02 \x03(\x0b\x32\x10.vega.PriceLevelR\x03\x62uy\x12$\n\x04sell\x18\x03 \x03(\x0b\x32\x10.vega.PriceLevelR\x04sell\x12*\n\nlast_trade\x18\x04 \x01(\x0b\x32\x0b.vega.TradeR\tlastTrade\x12\'\n\x0fsequence_number\x18\x05 \x01(\x04R\x0esequenceNumber"\x1d\n\x1bListLatestMarketDataRequest"S\n\x1cListLatestMarketDataResponse\x12\x33\n\x0cmarkets_data\x18\x01 \x03(\x0b\x32\x10.vega.MarketDataR\x0bmarketsData"?\n\x1aGetLatestMarketDataRequest\x12!\n\tmarket_id\x18\x01 \x01(\tB\x04\xe2\x41\x01\x02R\x08marketId"P\n\x1bGetLatestMarketDataResponse\x12\x31\n\x0bmarket_data\x18\x01 \x01(\x0b\x32\x10.vega.MarketDataR\nmarketData"\x99\x02\n\x1fGetMarketDataHistoryByIDRequest\x12!\n\tmarket_id\x18\x01 \x01(\tB\x04\xe2\x41\x01\x02R\x08marketId\x12,\n\x0fstart_timestamp\x18\x02 \x01(\x03H\x00R\x0estartTimestamp\x88\x01\x01\x12(\n\rend_timestamp\x18\x03 \x01(\x03H\x01R\x0c\x65ndTimestamp\x88\x01\x01\x12@\n\npagination\x18\x04 \x01(\x0b\x32\x1b.datanode.api.v2.PaginationH\x02R\npagination\x88\x01\x01\x42\x12\n\x10_start_timestampB\x10\n\x0e_end_timestampB\r\n\x0b_paginationJ\x04\x08\x05\x10\x06"j\n GetMarketDataHistoryByIDResponse\x12\x46\n\x0bmarket_data\x18\x01 \x01(\x0b\x32%.datanode.api.v2.MarketDataConnectionR\nmarketData"N\n\x0eMarketDataEdge\x12$\n\x04node\x18\x01 \x01(\x0b\x32\x10.vega.MarketDataR\x04node\x12\x16\n\x06\x63ursor\x18\x02 \x01(\tR\x06\x63ursor"\x85\x01\n\x14MarketDataConnection\x12\x35\n\x05\x65\x64ges\x18\x01 \x03(\x0b\x32\x1f.datanode.api.v2.MarketDataEdgeR\x05\x65\x64ges\x12\x36\n\tpage_info\x18\x02 \x01(\x0b\x32\x19.datanode.api.v2.PageInfoR\x08pageInfo"\xd1\x01\n\x14ListTransfersRequest\x12\x1b\n\x06pubkey\x18\x01 \x01(\tH\x00R\x06pubkey\x88\x01\x01\x12@\n\tdirection\x18\x02 \x01(\x0e\x32".datanode.api.v2.TransferDirectionR\tdirection\x12@\n\npagination\x18\x03 \x01(\x0b\x32\x1b.datanode.api.v2.PaginationH\x01R\npagination\x88\x01\x01\x42\t\n\x07_pubkeyB\r\n\x0b_pagination"Z\n\x15ListTransfersResponse\x12\x41\n\ttransfers\x18\x01 \x01(\x0b\x32#.datanode.api.v2.TransferConnectionR\ttransfers"T\n\x0cTransferEdge\x12,\n\x04node\x18\x01 \x01(\x0b\x32\x18.vega.events.v1.TransferR\x04node\x12\x16\n\x06\x63ursor\x18\x02 \x01(\tR\x06\x63ursor"\x81\x01\n\x12TransferConnection\x12\x33\n\x05\x65\x64ges\x18\x01 \x03(\x0b\x32\x1d.datanode.api.v2.TransferEdgeR\x05\x65\x64ges\x12\x36\n\tpage_info\x18\x02 \x01(\x0b\x32\x19.datanode.api.v2.PageInfoR\x08pageInfo";\n\x12GetTransferRequest\x12%\n\x0btransfer_id\x18\x01 \x01(\tB\x04\xe2\x41\x01\x02R\ntransferId"K\n\x13GetTransferResponse\x12\x34\n\x08transfer\x18\x01 \x01(\x0b\x32\x18.vega.events.v1.TransferR\x08transfer"\x19\n\x17GetNetworkLimitsRequest"G\n\x18GetNetworkLimitsResponse\x12+\n\x06limits\x18\x01 \x01(\x0b\x32\x13.vega.NetworkLimitsR\x06limits"?\n\x1aListCandleIntervalsRequest\x12!\n\tmarket_id\x18\x01 \x01(\tB\x04\xe2\x41\x01\x02R\x08marketId"M\n\x12IntervalToCandleId\x12\x1a\n\x08interval\x18\x01 \x01(\tR\x08interval\x12\x1b\n\tcandle_id\x18\x02 \x01(\tR\x08\x63\x61ndleId"u\n\x1bListCandleIntervalsResponse\x12V\n\x15interval_to_candle_id\x18\x01 \x03(\x0b\x32#.datanode.api.v2.IntervalToCandleIdR\x12intervalToCandleId"\xc3\x01\n\x06\x43\x61ndle\x12\x14\n\x05start\x18\x01 \x01(\x03R\x05start\x12\x1f\n\x0blast_update\x18\x02 \x01(\x03R\nlastUpdate\x12\x12\n\x04high\x18\x03 \x01(\tR\x04high\x12\x10\n\x03low\x18\x04 \x01(\tR\x03low\x12\x12\n\x04open\x18\x05 \x01(\tR\x04open\x12\x14\n\x05\x63lose\x18\x06 \x01(\tR\x05\x63lose\x12\x16\n\x06volume\x18\x07 \x01(\x04R\x06volume\x12\x1a\n\x08notional\x18\x08 \x01(\x04R\x08notional"=\n\x18ObserveCandleDataRequest\x12!\n\tcandle_id\x18\x01 \x01(\tB\x04\xe2\x41\x01\x02R\x08\x63\x61ndleId"L\n\x19ObserveCandleDataResponse\x12/\n\x06\x63\x61ndle\x18\x01 \x01(\x0b\x32\x17.datanode.api.v2.CandleR\x06\x63\x61ndle"\xdb\x01\n\x15ListCandleDataRequest\x12!\n\tcandle_id\x18\x01 \x01(\tB\x04\xe2\x41\x01\x02R\x08\x63\x61ndleId\x12%\n\x0e\x66rom_timestamp\x18\x02 \x01(\x03R\rfromTimestamp\x12!\n\x0cto_timestamp\x18\x03 \x01(\x03R\x0btoTimestamp\x12@\n\npagination\x18\x05 \x01(\x0b\x32\x1b.datanode.api.v2.PaginationH\x00R\npagination\x88\x01\x01\x42\r\n\x0b_paginationJ\x04\x08\x04\x10\x05"Y\n\x16ListCandleDataResponse\x12?\n\x07\x63\x61ndles\x18\x01 \x01(\x0b\x32%.datanode.api.v2.CandleDataConnectionR\x07\x63\x61ndles"Q\n\nCandleEdge\x12+\n\x04node\x18\x01 \x01(\x0b\x32\x17.datanode.api.v2.CandleR\x04node\x12\x16\n\x06\x63ursor\x18\x02 \x01(\tR\x06\x63ursor"\x81\x01\n\x14\x43\x61ndleDataConnection\x12\x31\n\x05\x65\x64ges\x18\x01 \x03(\x0b\x32\x1b.datanode.api.v2.CandleEdgeR\x05\x65\x64ges\x12\x36\n\tpage_info\x18\x02 \x01(\x0b\x32\x19.datanode.api.v2.PageInfoR\x08pageInfo"\xc6\x01\n\x10ListVotesRequest\x12\x1e\n\x08party_id\x18\x01 \x01(\tH\x00R\x07partyId\x88\x01\x01\x12$\n\x0bproposal_id\x18\x02 \x01(\tH\x01R\nproposalId\x88\x01\x01\x12@\n\npagination\x18\x03 \x01(\x0b\x32\x1b.datanode.api.v2.PaginationH\x02R\npagination\x88\x01\x01\x42\x0b\n\t_party_idB\x0e\n\x0c_proposal_idB\r\n\x0b_pagination"J\n\x11ListVotesResponse\x12\x35\n\x05votes\x18\x01 \x01(\x0b\x32\x1f.datanode.api.v2.VoteConnectionR\x05votes"B\n\x08VoteEdge\x12\x1e\n\x04node\x18\x01 \x01(\x0b\x32\n.vega.VoteR\x04node\x12\x16\n\x06\x63ursor\x18\x02 \x01(\tR\x06\x63ursor"y\n\x0eVoteConnection\x12/\n\x05\x65\x64ges\x18\x01 \x03(\x0b\x32\x19.datanode.api.v2.VoteEdgeR\x05\x65\x64ges\x12\x36\n\tpage_info\x18\x02 \x01(\x0b\x32\x19.datanode.api.v2.PageInfoR\x08pageInfo"x\n\x13ObserveVotesRequest\x12\x1e\n\x08party_id\x18\x01 \x01(\tH\x00R\x07partyId\x88\x01\x01\x12$\n\x0bproposal_id\x18\x02 \x01(\tH\x01R\nproposalId\x88\x01\x01\x42\x0b\n\t_party_idB\x0e\n\x0c_proposal_id"6\n\x14ObserveVotesResponse\x12\x1e\n\x04vote\x18\x01 \x01(\x0b\x32\n.vega.VoteR\x04vote"\xbd\x01\n*ListERC20MultiSigSignerAddedBundlesRequest\x12\x17\n\x07node_id\x18\x01 \x01(\tR\x06nodeId\x12\x1c\n\tsubmitter\x18\x02 \x01(\tR\tsubmitter\x12\x1b\n\tepoch_seq\x18\x03 \x01(\tR\x08\x65pochSeq\x12;\n\npagination\x18\x04 \x01(\x0b\x32\x1b.datanode.api.v2.PaginationR\npagination"|\n+ListERC20MultiSigSignerAddedBundlesResponse\x12M\n\x07\x62undles\x18\x01 \x01(\x0b\x32\x33.datanode.api.v2.ERC20MultiSigSignerAddedConnectionR\x07\x62undles"t\n\x1c\x45RC20MultiSigSignerAddedEdge\x12<\n\x04node\x18\x01 \x01(\x0b\x32(.vega.events.v1.ERC20MultiSigSignerAddedR\x04node\x12\x16\n\x06\x63ursor\x18\x02 \x01(\tR\x06\x63ursor"\x81\x01\n"ERC20MultiSigSignerAddedBundleEdge\x12\x43\n\x04node\x18\x01 \x01(\x0b\x32/.datanode.api.v2.ERC20MultiSigSignerAddedBundleR\x04node\x12\x16\n\x06\x63ursor\x18\x02 \x01(\tR\x06\x63ursor"\xa7\x01\n"ERC20MultiSigSignerAddedConnection\x12I\n\x05\x65\x64ges\x18\x01 \x03(\x0b\x32\x33.datanode.api.v2.ERC20MultiSigSignerAddedBundleEdgeR\x05\x65\x64ges\x12\x36\n\tpage_info\x18\x02 \x01(\x0b\x32\x19.datanode.api.v2.PageInfoR\x08pageInfo"\xce\x01\n\x1e\x45RC20MultiSigSignerAddedBundle\x12\x1d\n\nnew_signer\x18\x01 \x01(\tR\tnewSigner\x12\x1c\n\tsubmitter\x18\x02 \x01(\tR\tsubmitter\x12\x14\n\x05nonce\x18\x04 \x01(\tR\x05nonce\x12\x1c\n\ttimestamp\x18\x05 \x01(\x03R\ttimestamp\x12\x1e\n\nsignatures\x18\x06 \x01(\tR\nsignatures\x12\x1b\n\tepoch_seq\x18\x03 \x01(\tR\x08\x65pochSeq"\xbf\x01\n,ListERC20MultiSigSignerRemovedBundlesRequest\x12\x17\n\x07node_id\x18\x01 \x01(\tR\x06nodeId\x12\x1c\n\tsubmitter\x18\x02 \x01(\tR\tsubmitter\x12\x1b\n\tepoch_seq\x18\x03 \x01(\tR\x08\x65pochSeq\x12;\n\npagination\x18\x04 \x01(\x0b\x32\x1b.datanode.api.v2.PaginationR\npagination"\x80\x01\n-ListERC20MultiSigSignerRemovedBundlesResponse\x12O\n\x07\x62undles\x18\x01 \x01(\x0b\x32\x35.datanode.api.v2.ERC20MultiSigSignerRemovedConnectionR\x07\x62undles"x\n\x1e\x45RC20MultiSigSignerRemovedEdge\x12>\n\x04node\x18\x01 \x01(\x0b\x32*.vega.events.v1.ERC20MultiSigSignerRemovedR\x04node\x12\x16\n\x06\x63ursor\x18\x02 \x01(\tR\x06\x63ursor"\x85\x01\n$ERC20MultiSigSignerRemovedBundleEdge\x12\x45\n\x04node\x18\x01 \x01(\x0b\x32\x31.datanode.api.v2.ERC20MultiSigSignerRemovedBundleR\x04node\x12\x16\n\x06\x63ursor\x18\x02 \x01(\tR\x06\x63ursor"\xab\x01\n$ERC20MultiSigSignerRemovedConnection\x12K\n\x05\x65\x64ges\x18\x01 \x03(\x0b\x32\x35.datanode.api.v2.ERC20MultiSigSignerRemovedBundleEdgeR\x05\x65\x64ges\x12\x36\n\tpage_info\x18\x02 \x01(\x0b\x32\x19.datanode.api.v2.PageInfoR\x08pageInfo"\xd0\x01\n ERC20MultiSigSignerRemovedBundle\x12\x1d\n\nold_signer\x18\x01 \x01(\tR\toldSigner\x12\x1c\n\tsubmitter\x18\x02 \x01(\tR\tsubmitter\x12\x14\n\x05nonce\x18\x04 \x01(\tR\x05nonce\x12\x1c\n\ttimestamp\x18\x05 \x01(\x03R\ttimestamp\x12\x1e\n\nsignatures\x18\x06 \x01(\tR\nsignatures\x12\x1b\n\tepoch_seq\x18\x07 \x01(\tR\x08\x65pochSeq"A\n\x1eGetERC20ListAssetBundleRequest\x12\x1f\n\x08\x61sset_id\x18\x01 \x01(\tB\x04\xe2\x41\x01\x02R\x07\x61ssetId"\x9e\x01\n\x1fGetERC20ListAssetBundleResponse\x12!\n\x0c\x61sset_source\x18\x01 \x01(\tR\x0b\x61ssetSource\x12"\n\rvega_asset_id\x18\x02 \x01(\tR\x0bvegaAssetId\x12\x14\n\x05nonce\x18\x03 \x01(\tR\x05nonce\x12\x1e\n\nsignatures\x18\x04 \x01(\tR\nsignatures"L\n#GetERC20SetAssetLimitsBundleRequest\x12%\n\x0bproposal_id\x18\x01 \x01(\tB\x04\xe2\x41\x01\x02R\nproposalId"\xe8\x01\n$GetERC20SetAssetLimitsBundleResponse\x12!\n\x0c\x61sset_source\x18\x01 \x01(\tR\x0b\x61ssetSource\x12"\n\rvega_asset_id\x18\x02 \x01(\tR\x0bvegaAssetId\x12\x14\n\x05nonce\x18\x03 \x01(\tR\x05nonce\x12%\n\x0elifetime_limit\x18\x04 \x01(\tR\rlifetimeLimit\x12\x1c\n\tthreshold\x18\x05 \x01(\tR\tthreshold\x12\x1e\n\nsignatures\x18\x06 \x01(\tR\nsignatures"N\n!GetERC20WithdrawalApprovalRequest\x12)\n\rwithdrawal_id\x18\x01 \x01(\tB\x04\xe2\x41\x01\x02R\x0cwithdrawalId"\xde\x01\n"GetERC20WithdrawalApprovalResponse\x12!\n\x0c\x61sset_source\x18\x01 \x01(\tR\x0b\x61ssetSource\x12\x16\n\x06\x61mount\x18\x02 \x01(\tR\x06\x61mount\x12\x14\n\x05nonce\x18\x04 \x01(\tR\x05nonce\x12\x1e\n\nsignatures\x18\x05 \x01(\tR\nsignatures\x12%\n\x0etarget_address\x18\x06 \x01(\tR\rtargetAddress\x12\x1a\n\x08\x63reation\x18\x07 \x01(\x03R\x08\x63reationJ\x04\x08\x03\x10\x04"8\n\x13GetLastTradeRequest\x12!\n\tmarket_id\x18\x01 \x01(\tB\x04\xe2\x41\x01\x02R\x08marketId"9\n\x14GetLastTradeResponse\x12!\n\x05trade\x18\x01 \x01(\x0b\x32\x0b.vega.TradeR\x05trade"\x8c\x02\n\x11ListTradesRequest\x12\x1d\n\nmarket_ids\x18\x01 \x03(\tR\tmarketIds\x12\x1b\n\torder_ids\x18\x02 \x03(\tR\x08orderIds\x12\x1b\n\tparty_ids\x18\x03 \x03(\tR\x08partyIds\x12@\n\npagination\x18\x04 \x01(\x0b\x32\x1b.datanode.api.v2.PaginationH\x00R\npagination\x88\x01\x01\x12>\n\ndate_range\x18\x05 \x01(\x0b\x32\x1a.datanode.api.v2.DateRangeH\x01R\tdateRange\x88\x01\x01\x42\r\n\x0b_paginationB\r\n\x0b_date_range"N\n\x12ListTradesResponse\x12\x38\n\x06trades\x18\x01 \x01(\x0b\x32 .datanode.api.v2.TradeConnectionR\x06trades"{\n\x0fTradeConnection\x12\x30\n\x05\x65\x64ges\x18\x01 \x03(\x0b\x32\x1a.datanode.api.v2.TradeEdgeR\x05\x65\x64ges\x12\x36\n\tpage_info\x18\x02 \x01(\x0b\x32\x19.datanode.api.v2.PageInfoR\x08pageInfo"D\n\tTradeEdge\x12\x1f\n\x04node\x18\x01 \x01(\x0b\x32\x0b.vega.TradeR\x04node\x12\x16\n\x06\x63ursor\x18\x02 \x01(\tR\x06\x63ursor"R\n\x14ObserveTradesRequest\x12\x1d\n\nmarket_ids\x18\x01 \x03(\tR\tmarketIds\x12\x1b\n\tparty_ids\x18\x02 \x03(\tR\x08partyIds"<\n\x15ObserveTradesResponse\x12#\n\x06trades\x18\x01 \x03(\x0b\x32\x0b.vega.TradeR\x06trades"B\n\x14GetOracleSpecRequest\x12*\n\x0eoracle_spec_id\x18\x01 \x01(\tB\x04\xe2\x41\x01\x02R\x0coracleSpecId"J\n\x15GetOracleSpecResponse\x12\x31\n\x0boracle_spec\x18\x01 \x01(\x0b\x32\x10.vega.OracleSpecR\noracleSpec"i\n\x16ListOracleSpecsRequest\x12@\n\npagination\x18\x02 \x01(\x0b\x32\x1b.datanode.api.v2.PaginationH\x00R\npagination\x88\x01\x01\x42\r\n\x0b_pagination"d\n\x17ListOracleSpecsResponse\x12I\n\x0coracle_specs\x18\x01 \x01(\x0b\x32&.datanode.api.v2.OracleSpecsConnectionR\x0boracleSpecs"\xa6\x01\n\x15ListOracleDataRequest\x12)\n\x0eoracle_spec_id\x18\x01 \x01(\tH\x00R\x0coracleSpecId\x88\x01\x01\x12@\n\npagination\x18\x02 \x01(\x0b\x32\x1b.datanode.api.v2.PaginationH\x01R\npagination\x88\x01\x01\x42\x11\n\x0f_oracle_spec_idB\r\n\x0b_pagination"`\n\x16ListOracleDataResponse\x12\x46\n\x0boracle_data\x18\x01 \x01(\x0b\x32%.datanode.api.v2.OracleDataConnectionR\noracleData"N\n\x0eOracleSpecEdge\x12$\n\x04node\x18\x01 \x01(\x0b\x32\x10.vega.OracleSpecR\x04node\x12\x16\n\x06\x63ursor\x18\x02 \x01(\tR\x06\x63ursor"\x86\x01\n\x15OracleSpecsConnection\x12\x35\n\x05\x65\x64ges\x18\x01 \x03(\x0b\x32\x1f.datanode.api.v2.OracleSpecEdgeR\x05\x65\x64ges\x12\x36\n\tpage_info\x18\x02 \x01(\x0b\x32\x19.datanode.api.v2.PageInfoR\x08pageInfo"N\n\x0eOracleDataEdge\x12$\n\x04node\x18\x01 \x01(\x0b\x32\x10.vega.OracleDataR\x04node\x12\x16\n\x06\x63ursor\x18\x02 \x01(\tR\x06\x63ursor"\x85\x01\n\x14OracleDataConnection\x12\x35\n\x05\x65\x64ges\x18\x01 \x03(\x0b\x32\x1f.datanode.api.v2.OracleDataEdgeR\x05\x65\x64ges\x12\x36\n\tpage_info\x18\x02 \x01(\x0b\x32\x19.datanode.api.v2.PageInfoR\x08pageInfo"5\n\x10GetMarketRequest\x12!\n\tmarket_id\x18\x01 \x01(\tB\x04\xe2\x41\x01\x02R\x08marketId"9\n\x11GetMarketResponse\x12$\n\x06market\x18\x01 \x01(\x0b\x32\x0c.vega.MarketR\x06market"\xa7\x01\n\x12ListMarketsRequest\x12@\n\npagination\x18\x02 \x01(\x0b\x32\x1b.datanode.api.v2.PaginationH\x00R\npagination\x88\x01\x01\x12,\n\x0finclude_settled\x18\x03 \x01(\x08H\x01R\x0eincludeSettled\x88\x01\x01\x42\r\n\x0b_paginationB\x12\n\x10_include_settled"R\n\x13ListMarketsResponse\x12;\n\x07markets\x18\x01 \x01(\x0b\x32!.datanode.api.v2.MarketConnectionR\x07markets"F\n\nMarketEdge\x12 \n\x04node\x18\x01 \x01(\x0b\x32\x0c.vega.MarketR\x04node\x12\x16\n\x06\x63ursor\x18\x02 \x01(\tR\x06\x63ursor"}\n\x10MarketConnection\x12\x31\n\x05\x65\x64ges\x18\x01 \x03(\x0b\x32\x1b.datanode.api.v2.MarketEdgeR\x05\x65\x64ges\x12\x36\n\tpage_info\x18\x02 \x01(\x0b\x32\x19.datanode.api.v2.PageInfoR\x08pageInfo"\xaf\x01\n\x1bListSuccessorMarketsRequest\x12!\n\tmarket_id\x18\x01 \x01(\tB\x04\xe2\x41\x01\x02R\x08marketId\x12\x30\n\x14include_full_history\x18\x02 \x01(\x08R\x12includeFullHistory\x12;\n\npagination\x18\x03 \x01(\x0b\x32\x1b.datanode.api.v2.PaginationR\npagination"k\n\x0fSuccessorMarket\x12$\n\x06market\x18\x01 \x01(\x0b\x32\x0c.vega.MarketR\x06market\x12\x32\n\tproposals\x18\x02 \x03(\x0b\x32\x14.vega.GovernanceDataR\tproposals"c\n\x13SuccessorMarketEdge\x12\x34\n\x04node\x18\x01 \x01(\x0b\x32 .datanode.api.v2.SuccessorMarketR\x04node\x12\x16\n\x06\x63ursor\x18\x02 \x01(\tR\x06\x63ursor"\x8f\x01\n\x19SuccessorMarketConnection\x12:\n\x05\x65\x64ges\x18\x01 \x03(\x0b\x32$.datanode.api.v2.SuccessorMarketEdgeR\x05\x65\x64ges\x12\x36\n\tpage_info\x18\x02 \x01(\x0b\x32\x19.datanode.api.v2.PageInfoR\x08pageInfo"w\n\x1cListSuccessorMarketsResponse\x12W\n\x11successor_markets\x18\x01 \x01(\x0b\x32*.datanode.api.v2.SuccessorMarketConnectionR\x10successorMarkets"2\n\x0fGetPartyRequest\x12\x1f\n\x08party_id\x18\x01 \x01(\tB\x04\xe2\x41\x01\x02R\x07partyId"5\n\x10GetPartyResponse\x12!\n\x05party\x18\x01 \x01(\x0b\x32\x0b.vega.PartyR\x05party"l\n\x12ListPartiesRequest\x12\x19\n\x08party_id\x18\x01 \x01(\tR\x07partyId\x12;\n\npagination\x18\x02 \x01(\x0b\x32\x1b.datanode.api.v2.PaginationR\npagination"Q\n\x13ListPartiesResponse\x12:\n\x07parties\x18\x01 \x01(\x0b\x32 .datanode.api.v2.PartyConnectionR\x07parties"D\n\tPartyEdge\x12\x1f\n\x04node\x18\x01 \x01(\x0b\x32\x0b.vega.PartyR\x04node\x12\x16\n\x06\x63ursor\x18\x02 \x01(\tR\x06\x63ursor"{\n\x0fPartyConnection\x12\x30\n\x05\x65\x64ges\x18\x01 \x03(\x0b\x32\x1a.datanode.api.v2.PartyEdgeR\x05\x65\x64ges\x12\x36\n\tpage_info\x18\x02 \x01(\x0b\x32\x19.datanode.api.v2.PageInfoR\x08pageInfo"D\n\tOrderEdge\x12\x1f\n\x04node\x18\x01 \x01(\x0b\x32\x0b.vega.OrderR\x04node\x12\x16\n\x06\x63ursor\x18\x02 \x01(\tR\x06\x63ursor"\x8e\x01\n\x17ListMarginLevelsRequest\x12\x19\n\x08party_id\x18\x01 \x01(\tR\x07partyId\x12\x1b\n\tmarket_id\x18\x02 \x01(\tR\x08marketId\x12;\n\npagination\x18\x03 \x01(\x0b\x32\x1b.datanode.api.v2.PaginationR\npagination"b\n\x18ListMarginLevelsResponse\x12\x46\n\rmargin_levels\x18\x01 \x01(\x0b\x32!.datanode.api.v2.MarginConnectionR\x0cmarginLevels"g\n\x1aObserveMarginLevelsRequest\x12\x19\n\x08party_id\x18\x01 \x01(\tR\x07partyId\x12 \n\tmarket_id\x18\x02 \x01(\tH\x00R\x08marketId\x88\x01\x01\x42\x0c\n\n_market_id"V\n\x1bObserveMarginLevelsResponse\x12\x37\n\rmargin_levels\x18\x01 \x01(\x0b\x32\x12.vega.MarginLevelsR\x0cmarginLevels"{\n\x0fOrderConnection\x12\x30\n\x05\x65\x64ges\x18\x01 \x03(\x0b\x32\x1a.datanode.api.v2.OrderEdgeR\x05\x65\x64ges\x12\x36\n\tpage_info\x18\x02 \x01(\x0b\x32\x19.datanode.api.v2.PageInfoR\x08pageInfo"L\n\nMarginEdge\x12&\n\x04node\x18\x01 \x01(\x0b\x32\x12.vega.MarginLevelsR\x04node\x12\x16\n\x06\x63ursor\x18\x02 \x01(\tR\x06\x63ursor"}\n\x10MarginConnection\x12\x31\n\x05\x65\x64ges\x18\x01 \x03(\x0b\x32\x1b.datanode.api.v2.MarginEdgeR\x05\x65\x64ges\x12\x36\n\tpage_info\x18\x02 \x01(\x0b\x32\x19.datanode.api.v2.PageInfoR\x08pageInfo"\x8d\x02\n\x12ListRewardsRequest\x12\x19\n\x08party_id\x18\x01 \x01(\tR\x07partyId\x12\x1e\n\x08\x61sset_id\x18\x02 \x01(\tH\x00R\x07\x61ssetId\x88\x01\x01\x12@\n\npagination\x18\x03 \x01(\x0b\x32\x1b.datanode.api.v2.PaginationH\x01R\npagination\x88\x01\x01\x12"\n\nfrom_epoch\x18\x04 \x01(\x04H\x02R\tfromEpoch\x88\x01\x01\x12\x1e\n\x08to_epoch\x18\x05 \x01(\x04H\x03R\x07toEpoch\x88\x01\x01\x42\x0b\n\t_asset_idB\r\n\x0b_paginationB\r\n\x0b_from_epochB\x0b\n\t_to_epoch"S\n\x13ListRewardsResponse\x12<\n\x07rewards\x18\x01 \x01(\x0b\x32".datanode.api.v2.RewardsConnectionR\x07rewards"F\n\nRewardEdge\x12 \n\x04node\x18\x01 \x01(\x0b\x32\x0c.vega.RewardR\x04node\x12\x16\n\x06\x63ursor\x18\x02 \x01(\tR\x06\x63ursor"~\n\x11RewardsConnection\x12\x31\n\x05\x65\x64ges\x18\x01 \x03(\x0b\x32\x1b.datanode.api.v2.RewardEdgeR\x05\x65\x64ges\x12\x36\n\tpage_info\x18\x02 \x01(\x0b\x32\x19.datanode.api.v2.PageInfoR\x08pageInfo"\xc7\x01\n\x1aListRewardSummariesRequest\x12\x1e\n\x08party_id\x18\x01 \x01(\tH\x00R\x07partyId\x88\x01\x01\x12\x1e\n\x08\x61sset_id\x18\x02 \x01(\tH\x01R\x07\x61ssetId\x88\x01\x01\x12@\n\npagination\x18\x03 \x01(\x0b\x32\x1b.datanode.api.v2.PaginationH\x02R\npagination\x88\x01\x01\x42\x0b\n\t_party_idB\x0b\n\t_asset_idB\r\n\x0b_pagination"P\n\x1bListRewardSummariesResponse\x12\x31\n\tsummaries\x18\x01 \x03(\x0b\x32\x13.vega.RewardSummaryR\tsummaries"\xb1\x01\n\x13RewardSummaryFilter\x12\x1b\n\tasset_ids\x18\x01 \x03(\tR\x08\x61ssetIds\x12\x1d\n\nmarket_ids\x18\x02 \x03(\tR\tmarketIds\x12"\n\nfrom_epoch\x18\x03 \x01(\x04H\x00R\tfromEpoch\x88\x01\x01\x12\x1e\n\x08to_epoch\x18\x04 \x01(\x04H\x01R\x07toEpoch\x88\x01\x01\x42\r\n\x0b_from_epochB\x0b\n\t_to_epoch"\xb0\x01\n\x1fListEpochRewardSummariesRequest\x12<\n\x06\x66ilter\x18\x01 \x01(\x0b\x32$.datanode.api.v2.RewardSummaryFilterR\x06\x66ilter\x12@\n\npagination\x18\x04 \x01(\x0b\x32\x1b.datanode.api.v2.PaginationH\x00R\npagination\x88\x01\x01\x42\r\n\x0b_pagination"o\n ListEpochRewardSummariesResponse\x12K\n\tsummaries\x18\x01 \x01(\x0b\x32-.datanode.api.v2.EpochRewardSummaryConnectionR\tsummaries"\x95\x01\n\x1c\x45pochRewardSummaryConnection\x12=\n\x05\x65\x64ges\x18\x01 \x03(\x0b\x32\'.datanode.api.v2.EpochRewardSummaryEdgeR\x05\x65\x64ges\x12\x36\n\tpage_info\x18\x02 \x01(\x0b\x32\x19.datanode.api.v2.PageInfoR\x08pageInfo"^\n\x16\x45pochRewardSummaryEdge\x12,\n\x04node\x18\x01 \x01(\x0b\x32\x18.vega.EpochRewardSummaryR\x04node\x12\x16\n\x06\x63ursor\x18\x02 \x01(\tR\x06\x63ursor"q\n\x15ObserveRewardsRequest\x12\x1e\n\x08\x61sset_id\x18\x01 \x01(\tH\x00R\x07\x61ssetId\x88\x01\x01\x12\x1e\n\x08party_id\x18\x02 \x01(\tH\x01R\x07partyId\x88\x01\x01\x42\x0b\n\t_asset_idB\x0b\n\t_party_id">\n\x16ObserveRewardsResponse\x12$\n\x06reward\x18\x01 \x01(\x0b\x32\x0c.vega.RewardR\x06reward")\n\x11GetDepositRequest\x12\x14\n\x02id\x18\x01 \x01(\tB\x04\xe2\x41\x01\x02R\x02id"=\n\x12GetDepositResponse\x12\'\n\x07\x64\x65posit\x18\x01 \x01(\x0b\x32\r.vega.DepositR\x07\x64\x65posit"\xd0\x01\n\x13ListDepositsRequest\x12\x19\n\x08party_id\x18\x01 \x01(\tR\x07partyId\x12@\n\npagination\x18\x02 \x01(\x0b\x32\x1b.datanode.api.v2.PaginationH\x00R\npagination\x88\x01\x01\x12>\n\ndate_range\x18\x03 \x01(\x0b\x32\x1a.datanode.api.v2.DateRangeH\x01R\tdateRange\x88\x01\x01\x42\r\n\x0b_paginationB\r\n\x0b_date_range"W\n\x14ListDepositsResponse\x12?\n\x08\x64\x65posits\x18\x01 \x01(\x0b\x32#.datanode.api.v2.DepositsConnectionR\x08\x64\x65posits"H\n\x0b\x44\x65positEdge\x12!\n\x04node\x18\x01 \x01(\x0b\x32\r.vega.DepositR\x04node\x12\x16\n\x06\x63ursor\x18\x02 \x01(\tR\x06\x63ursor"\x80\x01\n\x12\x44\x65positsConnection\x12\x32\n\x05\x65\x64ges\x18\x01 \x03(\x0b\x32\x1c.datanode.api.v2.DepositEdgeR\x05\x65\x64ges\x12\x36\n\tpage_info\x18\x02 \x01(\x0b\x32\x19.datanode.api.v2.PageInfoR\x08pageInfo",\n\x14GetWithdrawalRequest\x12\x14\n\x02id\x18\x01 \x01(\tB\x04\xe2\x41\x01\x02R\x02id"I\n\x15GetWithdrawalResponse\x12\x30\n\nwithdrawal\x18\x01 \x01(\x0b\x32\x10.vega.WithdrawalR\nwithdrawal"\xd3\x01\n\x16ListWithdrawalsRequest\x12\x19\n\x08party_id\x18\x01 \x01(\tR\x07partyId\x12@\n\npagination\x18\x02 \x01(\x0b\x32\x1b.datanode.api.v2.PaginationH\x00R\npagination\x88\x01\x01\x12>\n\ndate_range\x18\x03 \x01(\x0b\x32\x1a.datanode.api.v2.DateRangeH\x01R\tdateRange\x88\x01\x01\x42\r\n\x0b_paginationB\r\n\x0b_date_range"c\n\x17ListWithdrawalsResponse\x12H\n\x0bwithdrawals\x18\x01 \x01(\x0b\x32&.datanode.api.v2.WithdrawalsConnectionR\x0bwithdrawals"N\n\x0eWithdrawalEdge\x12$\n\x04node\x18\x01 \x01(\x0b\x32\x10.vega.WithdrawalR\x04node\x12\x16\n\x06\x63ursor\x18\x02 \x01(\tR\x06\x63ursor"\x86\x01\n\x15WithdrawalsConnection\x12\x35\n\x05\x65\x64ges\x18\x01 \x03(\x0b\x32\x1f.datanode.api.v2.WithdrawalEdgeR\x05\x65\x64ges\x12\x36\n\tpage_info\x18\x02 \x01(\x0b\x32\x19.datanode.api.v2.PageInfoR\x08pageInfo"2\n\x0fGetAssetRequest\x12\x1f\n\x08\x61sset_id\x18\x01 \x01(\tB\x04\xe2\x41\x01\x02R\x07\x61ssetId"5\n\x10GetAssetResponse\x12!\n\x05\x61sset\x18\x01 \x01(\x0b\x32\x0b.vega.AssetR\x05\x61sset"\x91\x01\n\x11ListAssetsRequest\x12\x1e\n\x08\x61sset_id\x18\x01 \x01(\tH\x00R\x07\x61ssetId\x88\x01\x01\x12@\n\npagination\x18\x02 \x01(\x0b\x32\x1b.datanode.api.v2.PaginationH\x01R\npagination\x88\x01\x01\x42\x0b\n\t_asset_idB\r\n\x0b_pagination"O\n\x12ListAssetsResponse\x12\x39\n\x06\x61ssets\x18\x01 \x01(\x0b\x32!.datanode.api.v2.AssetsConnectionR\x06\x61ssets"D\n\tAssetEdge\x12\x1f\n\x04node\x18\x01 \x01(\x0b\x32\x0b.vega.AssetR\x04node\x12\x16\n\x06\x63ursor\x18\x02 \x01(\tR\x06\x63ursor"|\n\x10\x41ssetsConnection\x12\x30\n\x05\x65\x64ges\x18\x01 \x03(\x0b\x32\x1a.datanode.api.v2.AssetEdgeR\x05\x65\x64ges\x12\x36\n\tpage_info\x18\x02 \x01(\x0b\x32\x19.datanode.api.v2.PageInfoR\x08pageInfo"\xa1\x02\n\x1eListLiquidityProvisionsRequest\x12 \n\tmarket_id\x18\x01 \x01(\tH\x00R\x08marketId\x88\x01\x01\x12\x1e\n\x08party_id\x18\x02 \x01(\tH\x01R\x07partyId\x88\x01\x01\x12!\n\treference\x18\x03 \x01(\tH\x02R\treference\x88\x01\x01\x12\x17\n\x04live\x18\x04 \x01(\x08H\x03R\x04live\x88\x01\x01\x12@\n\npagination\x18\x05 \x01(\x0b\x32\x1b.datanode.api.v2.PaginationH\x04R\npagination\x88\x01\x01\x42\x0c\n\n_market_idB\x0b\n\t_party_idB\x0c\n\n_referenceB\x07\n\x05_liveB\r\n\x0b_pagination"\x84\x01\n\x1fListLiquidityProvisionsResponse\x12\x61\n\x14liquidity_provisions\x18\x01 \x01(\x0b\x32..datanode.api.v2.LiquidityProvisionsConnectionR\x13liquidityProvisions"_\n\x17LiquidityProvisionsEdge\x12,\n\x04node\x18\x01 \x01(\x0b\x32\x18.vega.LiquidityProvisionR\x04node\x12\x16\n\x06\x63ursor\x18\x02 \x01(\tR\x06\x63ursor"\x97\x01\n\x1dLiquidityProvisionsConnection\x12>\n\x05\x65\x64ges\x18\x01 \x03(\x0b\x32(.datanode.api.v2.LiquidityProvisionsEdgeR\x05\x65\x64ges\x12\x36\n\tpage_info\x18\x02 \x01(\x0b\x32\x19.datanode.api.v2.PageInfoR\x08pageInfo"\x80\x01\n!ObserveLiquidityProvisionsRequest\x12 \n\tmarket_id\x18\x01 \x01(\tH\x00R\x08marketId\x88\x01\x01\x12\x1e\n\x08party_id\x18\x02 \x01(\tH\x01R\x07partyId\x88\x01\x01\x42\x0c\n\n_market_idB\x0b\n\t_party_id"q\n"ObserveLiquidityProvisionsResponse\x12K\n\x14liquidity_provisions\x18\x01 \x03(\x0b\x32\x18.vega.LiquidityProvisionR\x13liquidityProvisions"\xcd\x01\n\x1dListLiquidityProvidersRequest\x12 \n\tmarket_id\x18\x01 \x01(\tH\x00R\x08marketId\x88\x01\x01\x12\x1e\n\x08party_id\x18\x02 \x01(\tH\x01R\x07partyId\x88\x01\x01\x12@\n\npagination\x18\x03 \x01(\x0b\x32\x1b.datanode.api.v2.PaginationH\x02R\npagination\x88\x01\x01\x42\x0c\n\n_market_idB\x0b\n\t_party_idB\r\n\x0b_pagination"\xb7\x01\n\x11LiquidityProvider\x12\x19\n\x08party_id\x18\x01 \x01(\tR\x07partyId\x12\x1b\n\tmarket_id\x18\x02 \x01(\tR\x08marketId\x12<\n\tfee_share\x18\x03 \x01(\x0b\x32\x1f.vega.LiquidityProviderFeeShareR\x08\x66\x65\x65Share\x12,\n\x03sla\x18\x04 \x01(\x0b\x32\x1a.vega.LiquidityProviderSLAR\x03sla"g\n\x15LiquidityProviderEdge\x12\x36\n\x04node\x18\x01 \x01(\x0b\x32".datanode.api.v2.LiquidityProviderR\x04node\x12\x16\n\x06\x63ursor\x18\x02 \x01(\tR\x06\x63ursor"\x93\x01\n\x1bLiquidityProviderConnection\x12<\n\x05\x65\x64ges\x18\x01 \x03(\x0b\x32&.datanode.api.v2.LiquidityProviderEdgeR\x05\x65\x64ges\x12\x36\n\tpage_info\x18\x02 \x01(\x0b\x32\x19.datanode.api.v2.PageInfoR\x08pageInfo"\x7f\n\x1eListLiquidityProvidersResponse\x12]\n\x13liquidity_providers\x18\x01 \x01(\x0b\x32,.datanode.api.v2.LiquidityProviderConnectionR\x12liquidityProviders"\x81\x01\n\x18GetGovernanceDataRequest\x12$\n\x0bproposal_id\x18\x01 \x01(\tH\x00R\nproposalId\x88\x01\x01\x12!\n\treference\x18\x02 \x01(\tH\x01R\treference\x88\x01\x01\x42\x0e\n\x0c_proposal_idB\x0c\n\n_reference"E\n\x19GetGovernanceDataResponse\x12(\n\x04\x64\x61ta\x18\x01 \x01(\x0b\x32\x14.vega.GovernanceDataR\x04\x64\x61ta"\xcb\x06\n\x19ListGovernanceDataRequest\x12@\n\x0eproposal_state\x18\x01 \x01(\x0e\x32\x14.vega.Proposal.StateH\x00R\rproposalState\x88\x01\x01\x12Y\n\rproposal_type\x18\x02 \x01(\x0e\x32/.datanode.api.v2.ListGovernanceDataRequest.TypeH\x01R\x0cproposalType\x88\x01\x01\x12/\n\x11proposer_party_id\x18\x03 \x01(\tH\x02R\x0fproposerPartyId\x88\x01\x01\x12\x32\n\x12proposal_reference\x18\x04 \x01(\tH\x03R\x11proposalReference\x88\x01\x01\x12@\n\npagination\x18\x05 \x01(\x0b\x32\x1b.datanode.api.v2.PaginationH\x04R\npagination\x88\x01\x01"\x88\x03\n\x04Type\x12\x14\n\x10TYPE_UNSPECIFIED\x10\x00\x12\x0c\n\x08TYPE_ALL\x10\x01\x12\x13\n\x0fTYPE_NEW_MARKET\x10\x02\x12\x16\n\x12TYPE_UPDATE_MARKET\x10\x03\x12\x1b\n\x17TYPE_NETWORK_PARAMETERS\x10\x04\x12\x12\n\x0eTYPE_NEW_ASSET\x10\x05\x12\x16\n\x12TYPE_NEW_FREE_FORM\x10\x06\x12\x15\n\x11TYPE_UPDATE_ASSET\x10\x07\x12\x18\n\x14TYPE_NEW_SPOT_MARKET\x10\x08\x12\x1b\n\x17TYPE_UPDATE_SPOT_MARKET\x10\t\x12\x15\n\x11TYPE_NEW_TRANSFER\x10\n\x12\x18\n\x14TYPE_CANCEL_TRANSFER\x10\x0b\x12\x1c\n\x18TYPE_UPDATE_MARKET_STATE\x10\x0c\x12 \n\x1cTYPE_UPDATE_REFERRAL_PROGRAM\x10\r\x12\'\n#TYPE_UPDATE_VOLUME_DISCOUNT_PROGRAM\x10\x0e\x42\x11\n\x0f_proposal_stateB\x10\n\x0e_proposal_typeB\x14\n\x12_proposer_party_idB\x15\n\x13_proposal_referenceB\r\n\x0b_pagination"g\n\x1aListGovernanceDataResponse\x12I\n\nconnection\x18\x01 \x01(\x0b\x32).datanode.api.v2.GovernanceDataConnectionR\nconnection"V\n\x12GovernanceDataEdge\x12(\n\x04node\x18\x01 \x01(\x0b\x32\x14.vega.GovernanceDataR\x04node\x12\x16\n\x06\x63ursor\x18\x02 \x01(\tR\x06\x63ursor"\x8d\x01\n\x18GovernanceDataConnection\x12\x39\n\x05\x65\x64ges\x18\x01 \x03(\x0b\x32#.datanode.api.v2.GovernanceDataEdgeR\x05\x65\x64ges\x12\x36\n\tpage_info\x18\x02 \x01(\x0b\x32\x19.datanode.api.v2.PageInfoR\x08pageInfo"G\n\x18ObserveGovernanceRequest\x12\x1e\n\x08party_id\x18\x01 \x01(\tH\x00R\x07partyId\x88\x01\x01\x42\x0b\n\t_party_id"E\n\x19ObserveGovernanceResponse\x12(\n\x04\x64\x61ta\x18\x01 \x01(\x0b\x32\x14.vega.GovernanceDataR\x04\x64\x61ta"\xed\x01\n\x16ListDelegationsRequest\x12\x1e\n\x08party_id\x18\x01 \x01(\tH\x00R\x07partyId\x88\x01\x01\x12\x1c\n\x07node_id\x18\x02 \x01(\tH\x01R\x06nodeId\x88\x01\x01\x12\x1e\n\x08\x65poch_id\x18\x03 \x01(\tH\x02R\x07\x65pochId\x88\x01\x01\x12@\n\npagination\x18\x04 \x01(\x0b\x32\x1b.datanode.api.v2.PaginationH\x03R\npagination\x88\x01\x01\x42\x0b\n\t_party_idB\n\n\x08_node_idB\x0b\n\t_epoch_idB\r\n\x0b_pagination"c\n\x17ListDelegationsResponse\x12H\n\x0b\x64\x65legations\x18\x01 \x01(\x0b\x32&.datanode.api.v2.DelegationsConnectionR\x0b\x64\x65legations"N\n\x0e\x44\x65legationEdge\x12$\n\x04node\x18\x01 \x01(\x0b\x32\x10.vega.DelegationR\x04node\x12\x16\n\x06\x63ursor\x18\x02 \x01(\tR\x06\x63ursor"\x86\x01\n\x15\x44\x65legationsConnection\x12\x35\n\x05\x65\x64ges\x18\x01 \x03(\x0b\x32\x1f.datanode.api.v2.DelegationEdgeR\x05\x65\x64ges\x12\x36\n\tpage_info\x18\x02 \x01(\x0b\x32\x19.datanode.api.v2.PageInfoR\x08pageInfo"r\n\x19ObserveDelegationsRequest\x12\x1e\n\x08party_id\x18\x01 \x01(\tH\x00R\x07partyId\x88\x01\x01\x12\x1c\n\x07node_id\x18\x02 \x01(\tH\x01R\x06nodeId\x88\x01\x01\x42\x0b\n\t_party_idB\n\n\x08_node_id"N\n\x1aObserveDelegationsResponse\x12\x30\n\ndelegation\x18\x01 \x01(\x0b\x32\x10.vega.DelegationR\ndelegation"\x91\x02\n\tNodeBasic\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12\x17\n\x07pub_key\x18\x02 \x01(\tR\x06pubKey\x12\x1c\n\ntm_pub_key\x18\x03 \x01(\tR\x08tmPubKey\x12)\n\x10\x65thereum_address\x18\x04 \x01(\tR\x0f\x65thereumAddress\x12\x19\n\x08info_url\x18\x05 \x01(\tR\x07infoUrl\x12\x1a\n\x08location\x18\x06 \x01(\tR\x08location\x12(\n\x06status\x18\r \x01(\x0e\x32\x10.vega.NodeStatusR\x06status\x12\x12\n\x04name\x18\x11 \x01(\tR\x04name\x12\x1d\n\navatar_url\x18\x12 \x01(\tR\tavatarUrl"\x17\n\x15GetNetworkDataRequest"E\n\x16GetNetworkDataResponse\x12+\n\tnode_data\x18\x01 \x01(\x0b\x32\x0e.vega.NodeDataR\x08nodeData"&\n\x0eGetNodeRequest\x12\x14\n\x02id\x18\x01 \x01(\tB\x04\xe2\x41\x01\x02R\x02id"1\n\x0fGetNodeResponse\x12\x1e\n\x04node\x18\x01 \x01(\x0b\x32\n.vega.NodeR\x04node"\x93\x01\n\x10ListNodesRequest\x12 \n\tepoch_seq\x18\x01 \x01(\x04H\x00R\x08\x65pochSeq\x88\x01\x01\x12@\n\npagination\x18\x02 \x01(\x0b\x32\x1b.datanode.api.v2.PaginationH\x01R\npagination\x88\x01\x01\x42\x0c\n\n_epoch_seqB\r\n\x0b_pagination"K\n\x11ListNodesResponse\x12\x36\n\x05nodes\x18\x01 \x01(\x0b\x32 .datanode.api.v2.NodesConnectionR\x05nodes"B\n\x08NodeEdge\x12\x1e\n\x04node\x18\x01 \x01(\x0b\x32\n.vega.NodeR\x04node\x12\x16\n\x06\x63ursor\x18\x02 \x01(\tR\x06\x63ursor"z\n\x0fNodesConnection\x12/\n\x05\x65\x64ges\x18\x01 \x03(\x0b\x32\x19.datanode.api.v2.NodeEdgeR\x05\x65\x64ges\x12\x36\n\tpage_info\x18\x02 \x01(\x0b\x32\x19.datanode.api.v2.PageInfoR\x08pageInfo"\x82\x01\n\x19ListNodeSignaturesRequest\x12\x14\n\x02id\x18\x01 \x01(\tB\x04\xe2\x41\x01\x02R\x02id\x12@\n\npagination\x18\x02 \x01(\x0b\x32\x1b.datanode.api.v2.PaginationH\x00R\npagination\x88\x01\x01\x42\r\n\x0b_pagination"g\n\x1aListNodeSignaturesResponse\x12I\n\nsignatures\x18\x01 \x01(\x0b\x32).datanode.api.v2.NodeSignaturesConnectionR\nsignatures"`\n\x11NodeSignatureEdge\x12\x33\n\x04node\x18\x01 \x01(\x0b\x32\x1f.vega.commands.v1.NodeSignatureR\x04node\x12\x16\n\x06\x63ursor\x18\x02 \x01(\tR\x06\x63ursor"\x8c\x01\n\x18NodeSignaturesConnection\x12\x38\n\x05\x65\x64ges\x18\x01 \x03(\x0b\x32".datanode.api.v2.NodeSignatureEdgeR\x05\x65\x64ges\x12\x36\n\tpage_info\x18\x02 \x01(\x0b\x32\x19.datanode.api.v2.PageInfoR\x08pageInfo"R\n\x0fGetEpochRequest\x12\x13\n\x02id\x18\x01 \x01(\x04H\x00R\x02id\x88\x01\x01\x12\x19\n\x05\x62lock\x18\x02 \x01(\x04H\x01R\x05\x62lock\x88\x01\x01\x42\x05\n\x03_idB\x08\n\x06_block"5\n\x10GetEpochResponse\x12!\n\x05\x65poch\x18\x01 \x01(\x0b\x32\x0b.vega.EpochR\x05\x65poch"m\n\x12\x45stimateFeeRequest\x12!\n\tmarket_id\x18\x01 \x01(\tB\x04\xe2\x41\x01\x02R\x08marketId\x12\x1a\n\x05price\x18\x02 \x01(\tB\x04\xe2\x41\x01\x02R\x05price\x12\x18\n\x04size\x18\x03 \x01(\x04\x42\x04\xe2\x41\x01\x02R\x04size"2\n\x13\x45stimateFeeResponse\x12\x1b\n\x03\x66\x65\x65\x18\x02 \x01(\x0b\x32\t.vega.FeeR\x03\x66\x65\x65"\xe7\x01\n\x15\x45stimateMarginRequest\x12!\n\tmarket_id\x18\x01 \x01(\tB\x04\xe2\x41\x01\x02R\x08marketId\x12\x1f\n\x08party_id\x18\x02 \x01(\tB\x04\xe2\x41\x01\x02R\x07partyId\x12$\n\x04side\x18\x03 \x01(\x0e\x32\n.vega.SideB\x04\xe2\x41\x01\x02R\x04side\x12*\n\x04type\x18\x04 \x01(\x0e\x32\x10.vega.Order.TypeB\x04\xe2\x41\x01\x02R\x04type\x12\x18\n\x04size\x18\x05 \x01(\x04\x42\x04\xe2\x41\x01\x02R\x04size\x12\x1a\n\x05price\x18\x06 \x01(\tB\x04\xe2\x41\x01\x02R\x05price:\x02\x18\x01"U\n\x16\x45stimateMarginResponse\x12\x37\n\rmargin_levels\x18\x02 \x01(\x0b\x32\x12.vega.MarginLevelsR\x0cmarginLevels:\x02\x18\x01"o\n\x1cListNetworkParametersRequest\x12@\n\npagination\x18\x01 \x01(\x0b\x32\x1b.datanode.api.v2.PaginationH\x00R\npagination\x88\x01\x01\x42\r\n\x0b_pagination"{\n\x1dListNetworkParametersResponse\x12Z\n\x12network_parameters\x18\x01 \x01(\x0b\x32+.datanode.api.v2.NetworkParameterConnectionR\x11networkParameters"4\n\x1aGetNetworkParameterRequest\x12\x16\n\x03key\x18\x01 \x01(\tB\x04\xe2\x41\x01\x02R\x03key"b\n\x1bGetNetworkParameterResponse\x12\x43\n\x11network_parameter\x18\x01 \x01(\x0b\x32\x16.vega.NetworkParameterR\x10networkParameter"Z\n\x14NetworkParameterEdge\x12*\n\x04node\x18\x01 \x01(\x0b\x32\x16.vega.NetworkParameterR\x04node\x12\x16\n\x06\x63ursor\x18\x02 \x01(\tR\x06\x63ursor"\x91\x01\n\x1aNetworkParameterConnection\x12;\n\x05\x65\x64ges\x18\x01 \x03(\x0b\x32%.datanode.api.v2.NetworkParameterEdgeR\x05\x65\x64ges\x12\x36\n\tpage_info\x18\x02 \x01(\x0b\x32\x19.datanode.api.v2.PageInfoR\x08pageInfo"Z\n\nCheckpoint\x12\x12\n\x04hash\x18\x01 \x01(\tR\x04hash\x12\x1d\n\nblock_hash\x18\x02 \x01(\tR\tblockHash\x12\x19\n\x08\x61t_block\x18\x03 \x01(\x04R\x07\x61tBlock"i\n\x16ListCheckpointsRequest\x12@\n\npagination\x18\x01 \x01(\x0b\x32\x1b.datanode.api.v2.PaginationH\x00R\npagination\x88\x01\x01\x42\r\n\x0b_pagination"c\n\x17ListCheckpointsResponse\x12H\n\x0b\x63heckpoints\x18\x01 \x01(\x0b\x32&.datanode.api.v2.CheckpointsConnectionR\x0b\x63heckpoints"Y\n\x0e\x43heckpointEdge\x12/\n\x04node\x18\x01 \x01(\x0b\x32\x1b.datanode.api.v2.CheckpointR\x04node\x12\x16\n\x06\x63ursor\x18\x02 \x01(\tR\x06\x63ursor"\x86\x01\n\x15\x43heckpointsConnection\x12\x35\n\x05\x65\x64ges\x18\x01 \x03(\x0b\x32\x1f.datanode.api.v2.CheckpointEdgeR\x05\x65\x64ges\x12\x36\n\tpage_info\x18\x02 \x01(\x0b\x32\x19.datanode.api.v2.PageInfoR\x08pageInfo"\x83\x01\n\x0fGetStakeRequest\x12\x1f\n\x08party_id\x18\x01 \x01(\tB\x04\xe2\x41\x01\x02R\x07partyId\x12@\n\npagination\x18\x02 \x01(\x0b\x32\x1b.datanode.api.v2.PaginationH\x00R\npagination\x88\x01\x01\x42\r\n\x0b_pagination"\x94\x01\n\x10GetStakeResponse\x12\x36\n\x17\x63urrent_stake_available\x18\x01 \x01(\tR\x15\x63urrentStakeAvailable\x12H\n\x0estake_linkings\x18\x02 \x01(\x0b\x32!.datanode.api.v2.StakesConnectionR\rstakeLinkings"\\\n\x10StakeLinkingEdge\x12\x30\n\x04node\x18\x01 \x01(\x0b\x32\x1c.vega.events.v1.StakeLinkingR\x04node\x12\x16\n\x06\x63ursor\x18\x02 \x01(\tR\x06\x63ursor"\x83\x01\n\x10StakesConnection\x12\x37\n\x05\x65\x64ges\x18\x01 \x03(\x0b\x32!.datanode.api.v2.StakeLinkingEdgeR\x05\x65\x64ges\x12\x36\n\tpage_info\x18\x02 \x01(\x0b\x32\x19.datanode.api.v2.PageInfoR\x08pageInfo":\n\x15GetRiskFactorsRequest\x12!\n\tmarket_id\x18\x01 \x01(\tB\x04\xe2\x41\x01\x02R\x08marketId"K\n\x16GetRiskFactorsResponse\x12\x31\n\x0brisk_factor\x18\x01 \x01(\x0b\x32\x10.vega.RiskFactorR\nriskFactor"\xa1\x01\n\x16ObserveEventBusRequest\x12\x30\n\x04type\x18\x01 \x03(\x0e\x32\x1c.vega.events.v1.BusEventTypeR\x04type\x12\x1b\n\tmarket_id\x18\x02 \x01(\tR\x08marketId\x12\x19\n\x08party_id\x18\x03 \x01(\tR\x07partyId\x12\x1d\n\nbatch_size\x18\x04 \x01(\x03R\tbatchSize"K\n\x17ObserveEventBusResponse\x12\x30\n\x06\x65vents\x18\x01 \x03(\x0b\x32\x18.vega.events.v1.BusEventR\x06\x65vents"\x1f\n\x1dObserveLedgerMovementsRequest"_\n\x1eObserveLedgerMovementsResponse\x12=\n\x0fledger_movement\x18\x01 \x01(\x0b\x32\x14.vega.LedgerMovementR\x0eledgerMovement"\x94\x01\n\x17ListKeyRotationsRequest\x12\x1c\n\x07node_id\x18\x01 \x01(\tH\x00R\x06nodeId\x88\x01\x01\x12@\n\npagination\x18\x02 \x01(\x0b\x32\x1b.datanode.api.v2.PaginationH\x01R\npagination\x88\x01\x01\x42\n\n\x08_node_idB\r\n\x0b_pagination"`\n\x18ListKeyRotationsResponse\x12\x44\n\trotations\x18\x01 \x01(\x0b\x32&.datanode.api.v2.KeyRotationConnectionR\trotations"Z\n\x0fKeyRotationEdge\x12/\n\x04node\x18\x01 \x01(\x0b\x32\x1b.vega.events.v1.KeyRotationR\x04node\x12\x16\n\x06\x63ursor\x18\x02 \x01(\tR\x06\x63ursor"\x87\x01\n\x15KeyRotationConnection\x12\x36\n\x05\x65\x64ges\x18\x01 \x03(\x0b\x32 .datanode.api.v2.KeyRotationEdgeR\x05\x65\x64ges\x12\x36\n\tpage_info\x18\x02 \x01(\x0b\x32\x19.datanode.api.v2.PageInfoR\x08pageInfo"\x9c\x01\n\x1fListEthereumKeyRotationsRequest\x12\x1c\n\x07node_id\x18\x01 \x01(\tH\x00R\x06nodeId\x88\x01\x01\x12@\n\npagination\x18\x02 \x01(\x0b\x32\x1b.datanode.api.v2.PaginationH\x01R\npagination\x88\x01\x01\x42\n\n\x08_node_idB\r\n\x0b_pagination"x\n ListEthereumKeyRotationsResponse\x12T\n\rkey_rotations\x18\x01 \x01(\x0b\x32/.datanode.api.v2.EthereumKeyRotationsConnectionR\x0ckeyRotations"\x98\x01\n\x1e\x45thereumKeyRotationsConnection\x12>\n\x05\x65\x64ges\x18\x01 \x03(\x0b\x32(.datanode.api.v2.EthereumKeyRotationEdgeR\x05\x65\x64ges\x12\x36\n\tpage_info\x18\x02 \x01(\x0b\x32\x19.datanode.api.v2.PageInfoR\x08pageInfo"j\n\x17\x45thereumKeyRotationEdge\x12\x37\n\x04node\x18\x01 \x01(\x0b\x32#.vega.events.v1.EthereumKeyRotationR\x04node\x12\x16\n\x06\x63ursor\x18\x02 \x01(\tR\x06\x63ursor"\x14\n\x12GetVegaTimeRequest"3\n\x13GetVegaTimeResponse\x12\x1c\n\ttimestamp\x18\x01 \x01(\x03R\ttimestamp"\x89\x01\n\tDateRange\x12,\n\x0fstart_timestamp\x18\x01 \x01(\x03H\x00R\x0estartTimestamp\x88\x01\x01\x12(\n\rend_timestamp\x18\x02 \x01(\x03H\x01R\x0c\x65ndTimestamp\x88\x01\x01\x42\x12\n\x10_start_timestampB\x10\n\x0e_end_timestamp"!\n\x1fGetProtocolUpgradeStatusRequest"8\n GetProtocolUpgradeStatusResponse\x12\x14\n\x05ready\x18\x01 \x01(\x08R\x05ready"\x83\x02\n#ListProtocolUpgradeProposalsRequest\x12J\n\x06status\x18\x01 \x01(\x0e\x32-.vega.events.v1.ProtocolUpgradeProposalStatusH\x00R\x06status\x88\x01\x01\x12$\n\x0b\x61pproved_by\x18\x02 \x01(\tH\x01R\napprovedBy\x88\x01\x01\x12@\n\npagination\x18\x03 \x01(\x0b\x32\x1b.datanode.api.v2.PaginationH\x02R\npagination\x88\x01\x01\x42\t\n\x07_statusB\x0e\n\x0c_approved_byB\r\n\x0b_pagination"\x98\x01\n$ListProtocolUpgradeProposalsResponse\x12p\n\x1aprotocol_upgrade_proposals\x18\x01 \x01(\x0b\x32\x32.datanode.api.v2.ProtocolUpgradeProposalConnectionR\x18protocolUpgradeProposals"\x9f\x01\n!ProtocolUpgradeProposalConnection\x12\x42\n\x05\x65\x64ges\x18\x01 \x03(\x0b\x32,.datanode.api.v2.ProtocolUpgradeProposalEdgeR\x05\x65\x64ges\x12\x36\n\tpage_info\x18\x02 \x01(\x0b\x32\x19.datanode.api.v2.PageInfoR\x08pageInfo"o\n\x1bProtocolUpgradeProposalEdge\x12\x38\n\x04node\x18\x01 \x01(\x0b\x32$.vega.events.v1.ProtocolUpgradeEventR\x04node\x12\x16\n\x06\x63ursor\x18\x02 \x01(\tR\x06\x63ursor"k\n\x18ListCoreSnapshotsRequest\x12@\n\npagination\x18\x01 \x01(\x0b\x32\x1b.datanode.api.v2.PaginationH\x00R\npagination\x88\x01\x01\x42\r\n\x0b_pagination"k\n\x19ListCoreSnapshotsResponse\x12N\n\x0e\x63ore_snapshots\x18\x01 \x01(\x0b\x32\'.datanode.api.v2.CoreSnapshotConnectionR\rcoreSnapshots"\x89\x01\n\x16\x43oreSnapshotConnection\x12\x37\n\x05\x65\x64ges\x18\x01 \x03(\x0b\x32!.datanode.api.v2.CoreSnapshotEdgeR\x05\x65\x64ges\x12\x36\n\tpage_info\x18\x02 \x01(\x0b\x32\x19.datanode.api.v2.PageInfoR\x08pageInfo"`\n\x10\x43oreSnapshotEdge\x12\x34\n\x04node\x18\x01 \x01(\x0b\x32 .vega.events.v1.CoreSnapshotDataR\x04node\x12\x16\n\x06\x63ursor\x18\x02 \x01(\tR\x06\x63ursor"\x81\x02\n\x0eHistorySegment\x12\x1f\n\x0b\x66rom_height\x18\x01 \x01(\x03R\nfromHeight\x12\x1b\n\tto_height\x18\x02 \x01(\x03R\x08toHeight\x12,\n\x12history_segment_id\x18\x03 \x01(\tR\x10historySegmentId\x12=\n\x1bprevious_history_segment_id\x18\x04 \x01(\tR\x18previousHistorySegmentId\x12)\n\x10\x64\x61tabase_version\x18\x05 \x01(\x03R\x0f\x64\x61tabaseVersion\x12\x19\n\x08\x63hain_id\x18\x06 \x01(\tR\x07\x63hainId"+\n)GetMostRecentNetworkHistorySegmentRequest"\x8d\x01\n*GetMostRecentNetworkHistorySegmentResponse\x12\x39\n\x07segment\x18\x01 \x01(\x0b\x32\x1f.datanode.api.v2.HistorySegmentR\x07segment\x12$\n\x0eswarm_key_seed\x18\x02 \x01(\tR\x0cswarmKeySeed"&\n$ListAllNetworkHistorySegmentsRequest"d\n%ListAllNetworkHistorySegmentsResponse\x12;\n\x08segments\x18\x01 \x03(\x0b\x32\x1f.datanode.api.v2.HistorySegmentR\x08segments"-\n+GetActiveNetworkHistoryPeerAddressesRequest"Q\n,GetActiveNetworkHistoryPeerAddressesResponse\x12!\n\x0cip_addresses\x18\x01 \x03(\tR\x0bipAddresses" \n\x1eGetNetworkHistoryStatusRequest"\xb0\x01\n\x1fGetNetworkHistoryStatusResponse\x12!\n\x0cipfs_address\x18\x01 \x01(\tR\x0bipfsAddress\x12\x1b\n\tswarm_key\x18\x02 \x01(\tR\x08swarmKey\x12$\n\x0eswarm_key_seed\x18\x03 \x01(\tR\x0cswarmKeySeed\x12\'\n\x0f\x63onnected_peers\x18\x05 \x03(\tR\x0e\x63onnectedPeers"(\n&GetNetworkHistoryBootstrapPeersRequest"R\n\'GetNetworkHistoryBootstrapPeersResponse\x12\'\n\x0f\x62ootstrap_peers\x18\x01 \x03(\tR\x0e\x62ootstrapPeers"\x85\x01\n\x1b\x45xportNetworkHistoryRequest\x12\x1d\n\nfrom_block\x18\x01 \x01(\x03R\tfromBlock\x12\x19\n\x08to_block\x18\x02 \x01(\x03R\x07toBlock\x12,\n\x05table\x18\x03 \x01(\x0e\x32\x16.datanode.api.v2.TableR\x05table"F\n\x13ListEntitiesRequest\x12/\n\x10transaction_hash\x18\x01 \x01(\tB\x04\xe2\x41\x01\x02R\x0ftransactionHash"\xad\r\n\x14ListEntitiesResponse\x12)\n\x08\x61\x63\x63ounts\x18\x01 \x03(\x0b\x32\r.vega.AccountR\x08\x61\x63\x63ounts\x12#\n\x06orders\x18\x02 \x03(\x0b\x32\x0b.vega.OrderR\x06orders\x12,\n\tpositions\x18\x03 \x03(\x0b\x32\x0e.vega.PositionR\tpositions\x12\x38\n\x0eledger_entries\x18\x04 \x03(\x0b\x32\x11.vega.LedgerEntryR\rledgerEntries\x12H\n\x0f\x62\x61lance_changes\x18\x05 \x03(\x0b\x32\x1f.datanode.api.v2.AccountBalanceR\x0e\x62\x61lanceChanges\x12\x36\n\ttransfers\x18\x06 \x03(\x0b\x32\x18.vega.events.v1.TransferR\ttransfers\x12 \n\x05votes\x18\x07 \x03(\x0b\x32\n.vega.VoteR\x05votes\x12~\n$erc20_multi_sig_signer_added_bundles\x18\x08 \x03(\x0b\x32/.datanode.api.v2.ERC20MultiSigSignerAddedBundleR\x1f\x65rc20MultiSigSignerAddedBundles\x12\x84\x01\n&erc20_multi_sig_signer_removed_bundles\x18\t \x03(\x0b\x32\x31.datanode.api.v2.ERC20MultiSigSignerRemovedBundleR!erc20MultiSigSignerRemovedBundles\x12#\n\x06trades\x18\n \x03(\x0b\x32\x0b.vega.TradeR\x06trades\x12\x33\n\x0coracle_specs\x18\x0b \x03(\x0b\x32\x10.vega.OracleSpecR\x0boracleSpecs\x12\x31\n\x0boracle_data\x18\x0c \x03(\x0b\x32\x10.vega.OracleDataR\noracleData\x12&\n\x07markets\x18\r \x03(\x0b\x32\x0c.vega.MarketR\x07markets\x12%\n\x07parties\x18\x0e \x03(\x0b\x32\x0b.vega.PartyR\x07parties\x12\x37\n\rmargin_levels\x18\x0f \x03(\x0b\x32\x12.vega.MarginLevelsR\x0cmarginLevels\x12&\n\x07rewards\x18\x10 \x03(\x0b\x32\x0c.vega.RewardR\x07rewards\x12)\n\x08\x64\x65posits\x18\x11 \x03(\x0b\x32\r.vega.DepositR\x08\x64\x65posits\x12\x32\n\x0bwithdrawals\x18\x12 \x03(\x0b\x32\x10.vega.WithdrawalR\x0bwithdrawals\x12#\n\x06\x61ssets\x18\x13 \x03(\x0b\x32\x0b.vega.AssetR\x06\x61ssets\x12K\n\x14liquidity_provisions\x18\x14 \x03(\x0b\x32\x18.vega.LiquidityProvisionR\x13liquidityProvisions\x12,\n\tproposals\x18\x15 \x03(\x0b\x32\x0e.vega.ProposalR\tproposals\x12\x32\n\x0b\x64\x65legations\x18\x16 \x03(\x0b\x32\x10.vega.DelegationR\x0b\x64\x65legations\x12\x30\n\x05nodes\x18\x17 \x03(\x0b\x32\x1a.datanode.api.v2.NodeBasicR\x05nodes\x12H\n\x0fnode_signatures\x18\x18 \x03(\x0b\x32\x1f.vega.commands.v1.NodeSignatureR\x0enodeSignatures\x12\x45\n\x12network_parameters\x18\x19 \x03(\x0b\x32\x16.vega.NetworkParameterR\x11networkParameters\x12@\n\rkey_rotations\x18\x1a \x03(\x0b\x32\x1b.vega.events.v1.KeyRotationR\x0ckeyRotations\x12Y\n\x16\x65thereum_key_rotations\x18\x1b \x03(\x0b\x32#.vega.events.v1.EthereumKeyRotationR\x14\x65thereumKeyRotations\x12\x62\n\x1aprotocol_upgrade_proposals\x18\x1c \x03(\x0b\x32$.vega.events.v1.ProtocolUpgradeEventR\x18protocolUpgradeProposals"e\n\x1dGetPartyActivityStreakRequest\x12\x1f\n\x08party_id\x18\x01 \x01(\tB\x04\xe2\x41\x01\x02R\x07partyId\x12\x19\n\x05\x65poch\x18\x02 \x01(\x04H\x00R\x05\x65poch\x88\x01\x01\x42\x08\n\x06_epoch"n\n\x1eGetPartyActivityStreakResponse\x12L\n\x0f\x61\x63tivity_streak\x18\x01 \x01(\x0b\x32#.vega.events.v1.PartyActivityStreakR\x0e\x61\x63tivityStreak"\xac\x01\n\x0e\x46undingPayment\x12\x19\n\x08party_id\x18\x01 \x01(\tR\x07partyId\x12\x1b\n\tmarket_id\x18\x02 \x01(\tR\x08marketId\x12,\n\x12\x66unding_period_seq\x18\x03 \x01(\x04R\x10\x66undingPeriodSeq\x12\x1c\n\ttimestamp\x18\x04 \x01(\x03R\ttimestamp\x12\x16\n\x06\x61mount\x18\x05 \x01(\tR\x06\x61mount"\xbe\x01\n\x1aListFundingPaymentsRequest\x12\x1f\n\x08party_id\x18\x01 \x01(\tB\x04\xe2\x41\x01\x02R\x07partyId\x12 \n\tmarket_id\x18\x02 \x01(\tH\x00R\x08marketId\x88\x01\x01\x12@\n\npagination\x18\x03 \x01(\x0b\x32\x1b.datanode.api.v2.PaginationH\x01R\npagination\x88\x01\x01\x42\x0c\n\n_market_idB\r\n\x0b_pagination"a\n\x12\x46undingPaymentEdge\x12\x33\n\x04node\x18\x01 \x01(\x0b\x32\x1f.datanode.api.v2.FundingPaymentR\x04node\x12\x16\n\x06\x63ursor\x18\x02 \x01(\tR\x06\x63ursor"\x8d\x01\n\x18\x46undingPaymentConnection\x12\x39\n\x05\x65\x64ges\x18\x01 \x03(\x0b\x32#.datanode.api.v2.FundingPaymentEdgeR\x05\x65\x64ges\x12\x36\n\tpage_info\x18\x02 \x01(\x0b\x32\x19.datanode.api.v2.PageInfoR\x08pageInfo"s\n\x1bListFundingPaymentsResponse\x12T\n\x10\x66unding_payments\x18\x01 \x01(\x0b\x32).datanode.api.v2.FundingPaymentConnectionR\x0f\x66undingPayments"\xde\x01\n\x19ListFundingPeriodsRequest\x12!\n\tmarket_id\x18\x01 \x01(\tB\x04\xe2\x41\x01\x02R\x08marketId\x12>\n\ndate_range\x18\x02 \x01(\x0b\x32\x1a.datanode.api.v2.DateRangeH\x00R\tdateRange\x88\x01\x01\x12@\n\npagination\x18\x03 \x01(\x0b\x32\x1b.datanode.api.v2.PaginationH\x01R\npagination\x88\x01\x01\x42\r\n\x0b_date_rangeB\r\n\x0b_pagination"^\n\x11\x46undingPeriodEdge\x12\x31\n\x04node\x18\x01 \x01(\x0b\x32\x1d.vega.events.v1.FundingPeriodR\x04node\x12\x16\n\x06\x63ursor\x18\x02 \x01(\tR\x06\x63ursor"\x8b\x01\n\x17\x46undingPeriodConnection\x12\x38\n\x05\x65\x64ges\x18\x01 \x03(\x0b\x32".datanode.api.v2.FundingPeriodEdgeR\x05\x65\x64ges\x12\x36\n\tpage_info\x18\x02 \x01(\x0b\x32\x19.datanode.api.v2.PageInfoR\x08pageInfo"o\n\x1aListFundingPeriodsResponse\x12Q\n\x0f\x66unding_periods\x18\x01 \x01(\x0b\x32(.datanode.api.v2.FundingPeriodConnectionR\x0e\x66undingPeriods"\xdd\x02\n"ListFundingPeriodDataPointsRequest\x12!\n\tmarket_id\x18\x01 \x01(\tB\x04\xe2\x41\x01\x02R\x08marketId\x12>\n\ndate_range\x18\x02 \x01(\x0b\x32\x1a.datanode.api.v2.DateRangeH\x00R\tdateRange\x88\x01\x01\x12J\n\x06source\x18\x03 \x01(\x0e\x32-.vega.events.v1.FundingPeriodDataPoint.SourceH\x01R\x06source\x88\x01\x01\x12\x15\n\x03seq\x18\x04 \x01(\x04H\x02R\x03seq\x88\x01\x01\x12@\n\npagination\x18\x05 \x01(\x0b\x32\x1b.datanode.api.v2.PaginationH\x03R\npagination\x88\x01\x01\x42\r\n\x0b_date_rangeB\t\n\x07_sourceB\x06\n\x04_seqB\r\n\x0b_pagination"p\n\x1a\x46undingPeriodDataPointEdge\x12:\n\x04node\x18\x01 \x01(\x0b\x32&.vega.events.v1.FundingPeriodDataPointR\x04node\x12\x16\n\x06\x63ursor\x18\x02 \x01(\tR\x06\x63ursor"\x9d\x01\n FundingPeriodDataPointConnection\x12\x41\n\x05\x65\x64ges\x18\x01 \x03(\x0b\x32+.datanode.api.v2.FundingPeriodDataPointEdgeR\x05\x65\x64ges\x12\x36\n\tpage_info\x18\x02 \x01(\x0b\x32\x19.datanode.api.v2.PageInfoR\x08pageInfo"\x95\x01\n#ListFundingPeriodDataPointsResponse\x12n\n\x1a\x66unding_period_data_points\x18\x01 \x01(\x0b\x32\x31.datanode.api.v2.FundingPeriodDataPointConnectionR\x17\x66undingPeriodDataPoints"\r\n\x0bPingRequest"\x0e\n\x0cPingResponse"\x87\x01\n\tOrderInfo\x12\x1e\n\x04side\x18\x01 \x01(\x0e\x32\n.vega.SideR\x04side\x12\x14\n\x05price\x18\x02 \x01(\tR\x05price\x12\x1c\n\tremaining\x18\x03 \x01(\x04R\tremaining\x12&\n\x0fis_market_order\x18\x04 \x01(\x08R\risMarketOrder"\xf7\x02\n\x17\x45stimatePositionRequest\x12!\n\tmarket_id\x18\x01 \x01(\tB\x04\xe2\x41\x01\x02R\x08marketId\x12%\n\x0bopen_volume\x18\x02 \x01(\x03\x42\x04\xe2\x41\x01\x02R\nopenVolume\x12\x32\n\x06orders\x18\x03 \x03(\x0b\x32\x1a.datanode.api.v2.OrderInfoR\x06orders\x12\x36\n\x14\x63ollateral_available\x18\x04 \x01(\tH\x00R\x13\x63ollateralAvailable\x88\x01\x01\x12^\n*scale_liquidation_price_to_market_decimals\x18\x05 \x01(\x08H\x01R%scaleLiquidationPriceToMarketDecimals\x88\x01\x01\x42\x17\n\x15_collateral_availableB-\n+_scale_liquidation_price_to_market_decimals"\x9b\x01\n\x18\x45stimatePositionResponse\x12\x37\n\x06margin\x18\x01 \x01(\x0b\x32\x1f.datanode.api.v2.MarginEstimateR\x06margin\x12\x46\n\x0bliquidation\x18\x02 \x01(\x0b\x32$.datanode.api.v2.LiquidationEstimateR\x0bliquidation"t\n\x0eMarginEstimate\x12\x31\n\nworst_case\x18\x01 \x01(\x0b\x32\x12.vega.MarginLevelsR\tworstCase\x12/\n\tbest_case\x18\x02 \x01(\x0b\x32\x12.vega.MarginLevelsR\x08\x62\x65stCase"\x97\x01\n\x13LiquidationEstimate\x12@\n\nworst_case\x18\x01 \x01(\x0b\x32!.datanode.api.v2.LiquidationPriceR\tworstCase\x12>\n\tbest_case\x18\x02 \x01(\x0b\x32!.datanode.api.v2.LiquidationPriceR\x08\x62\x65stCase"\xa2\x01\n\x10LiquidationPrice\x12(\n\x10open_volume_only\x18\x01 \x01(\tR\x0eopenVolumeOnly\x12\x30\n\x14including_buy_orders\x18\x02 \x01(\tR\x12includingBuyOrders\x12\x32\n\x15including_sell_orders\x18\x03 \x01(\tR\x13includingSellOrders""\n GetCurrentReferralProgramRequest"\x7f\n!GetCurrentReferralProgramResponse\x12Z\n\x18\x63urrent_referral_program\x18\x01 \x01(\x0b\x32 .datanode.api.v2.ReferralProgramR\x16\x63urrentReferralProgram"\xb6\x02\n\x0fReferralProgram\x12\x18\n\x07version\x18\x01 \x01(\x04R\x07version\x12\x0e\n\x02id\x18\x02 \x01(\tR\x02id\x12\x36\n\rbenefit_tiers\x18\x03 \x03(\x0b\x32\x11.vega.BenefitTierR\x0c\x62\x65nefitTiers\x12\x37\n\x18\x65nd_of_program_timestamp\x18\x04 \x01(\x03R\x15\x65ndOfProgramTimestamp\x12#\n\rwindow_length\x18\x05 \x01(\x04R\x0cwindowLength\x12\x36\n\rstaking_tiers\x18\x06 \x03(\x0b\x32\x11.vega.StakingTierR\x0cstakingTiers\x12\x1e\n\x08\x65nded_at\x18\x07 \x01(\x03H\x00R\x07\x65ndedAt\x88\x01\x01\x42\x0b\n\t_ended_at"w\n\x0bReferralSet\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12\x1a\n\x08referrer\x18\x02 \x01(\tR\x08referrer\x12\x1d\n\ncreated_at\x18\x03 \x01(\x03R\tcreatedAt\x12\x1d\n\nupdated_at\x18\x04 \x01(\x03R\tupdatedAt"[\n\x0fReferralSetEdge\x12\x30\n\x04node\x18\x01 \x01(\x0b\x32\x1c.datanode.api.v2.ReferralSetR\x04node\x12\x16\n\x06\x63ursor\x18\x02 \x01(\tR\x06\x63ursor"\x87\x01\n\x15ReferralSetConnection\x12\x36\n\x05\x65\x64ges\x18\x01 \x03(\x0b\x32 .datanode.api.v2.ReferralSetEdgeR\x05\x65\x64ges\x12\x36\n\tpage_info\x18\x02 \x01(\x0b\x32\x19.datanode.api.v2.PageInfoR\x08pageInfo"\x84\x02\n\x17ListReferralSetsRequest\x12+\n\x0freferral_set_id\x18\x01 \x01(\tH\x00R\rreferralSetId\x88\x01\x01\x12@\n\npagination\x18\x02 \x01(\x0b\x32\x1b.datanode.api.v2.PaginationH\x01R\npagination\x88\x01\x01\x12\x1f\n\x08referrer\x18\x03 \x01(\tH\x02R\x08referrer\x88\x01\x01\x12\x1d\n\x07referee\x18\x04 \x01(\tH\x03R\x07referee\x88\x01\x01\x42\x12\n\x10_referral_set_idB\r\n\x0b_paginationB\x0b\n\t_referrerB\n\n\x08_referee"g\n\x18ListReferralSetsResponse\x12K\n\rreferral_sets\x18\x01 \x01(\x0b\x32&.datanode.api.v2.ReferralSetConnectionR\x0creferralSets"\x8e\x01\n\x12ReferralSetReferee\x12&\n\x0freferral_set_id\x18\x01 \x01(\tR\rreferralSetId\x12\x18\n\x07referee\x18\x02 \x01(\tR\x07referee\x12\x1b\n\tjoined_at\x18\x03 \x01(\x03R\x08joinedAt\x12\x19\n\x08\x61t_epoch\x18\x04 \x01(\x04R\x07\x61tEpoch"i\n\x16ReferralSetRefereeEdge\x12\x37\n\x04node\x18\x01 \x01(\x0b\x32#.datanode.api.v2.ReferralSetRefereeR\x04node\x12\x16\n\x06\x63ursor\x18\x02 \x01(\tR\x06\x63ursor"\x95\x01\n\x1cReferralSetRefereeConnection\x12=\n\x05\x65\x64ges\x18\x01 \x03(\x0b\x32\'.datanode.api.v2.ReferralSetRefereeEdgeR\x05\x65\x64ges\x12\x36\n\tpage_info\x18\x02 \x01(\x0b\x32\x19.datanode.api.v2.PageInfoR\x08pageInfo"\x8b\x02\n\x1eListReferralSetRefereesRequest\x12+\n\x0freferral_set_id\x18\x01 \x01(\tH\x00R\rreferralSetId\x88\x01\x01\x12@\n\npagination\x18\x02 \x01(\x0b\x32\x1b.datanode.api.v2.PaginationH\x01R\npagination\x88\x01\x01\x12\x1f\n\x08referrer\x18\x03 \x01(\tH\x02R\x08referrer\x88\x01\x01\x12\x1d\n\x07referee\x18\x04 \x01(\tH\x03R\x07referee\x88\x01\x01\x42\x12\n\x10_referral_set_idB\r\n\x0b_paginationB\x0b\n\t_referrerB\n\n\x08_referee"\x84\x01\n\x1fListReferralSetRefereesResponse\x12\x61\n\x15referral_set_referees\x18\x01 \x01(\x0b\x32-.datanode.api.v2.ReferralSetRefereeConnectionR\x13referralSetReferees"\x9c\x01\n\x1aGetReferralSetStatsRequest\x12&\n\x0freferral_set_id\x18\x01 \x01(\tR\rreferralSetId\x12\x1e\n\x08\x61t_epoch\x18\x02 \x01(\x04H\x00R\x07\x61tEpoch\x88\x01\x01\x12\x1d\n\x07referee\x18\x03 \x01(\tH\x01R\x07referee\x88\x01\x01\x42\x0b\n\t_at_epochB\n\n\x08_referee"V\n\x1bGetReferralSetStatsResponse\x12\x37\n\x05stats\x18\x01 \x01(\x0b\x32!.datanode.api.v2.ReferralSetStatsR\x05stats"\xe4\x01\n\x10ReferralSetStats\x12\x15\n\x06set_id\x18\x01 \x01(\tR\x05setId\x12\x19\n\x08\x61t_epoch\x18\x02 \x01(\x04R\x07\x61tEpoch\x12Y\n*referral_set_running_notional_taker_volume\x18\x03 \x01(\tR%referralSetRunningNotionalTakerVolume\x12\x43\n\x0ereferees_stats\x18\x04 \x03(\x0b\x32\x1c.vega.events.v1.RefereeStatsR\rrefereesStats"\x90\x02\n\x04Team\x12\x17\n\x07team_id\x18\x01 \x01(\tR\x06teamId\x12\x1a\n\x08referrer\x18\x02 \x01(\tR\x08referrer\x12\x12\n\x04name\x18\x03 \x01(\tR\x04name\x12\x1e\n\x08team_url\x18\x04 \x01(\tH\x00R\x07teamUrl\x88\x01\x01\x12"\n\navatar_url\x18\x05 \x01(\tH\x01R\tavatarUrl\x88\x01\x01\x12\x1d\n\ncreated_at\x18\x06 \x01(\x03R\tcreatedAt\x12\x16\n\x06\x63losed\x18\x07 \x01(\x08R\x06\x63losed\x12(\n\x10\x63reated_at_epoch\x18\x08 \x01(\x04R\x0e\x63reatedAtEpochB\x0b\n\t_team_urlB\r\n\x0b_avatar_url"M\n\x08TeamEdge\x12)\n\x04node\x18\x01 \x01(\x0b\x32\x15.datanode.api.v2.TeamR\x04node\x12\x16\n\x06\x63ursor\x18\x02 \x01(\tR\x06\x63ursor"y\n\x0eTeamConnection\x12/\n\x05\x65\x64ges\x18\x01 \x03(\x0b\x32\x19.datanode.api.v2.TeamEdgeR\x05\x65\x64ges\x12\x36\n\tpage_info\x18\x02 \x01(\x0b\x32\x19.datanode.api.v2.PageInfoR\x08pageInfo"\xba\x01\n\x10ListTeamsRequest\x12\x1c\n\x07team_id\x18\x01 \x01(\tH\x00R\x06teamId\x88\x01\x01\x12\x1e\n\x08party_id\x18\x02 \x01(\tH\x01R\x07partyId\x88\x01\x01\x12@\n\npagination\x18\x03 \x01(\x0b\x32\x1b.datanode.api.v2.PaginationH\x02R\npagination\x88\x01\x01\x42\n\n\x08_team_idB\x0b\n\t_party_idB\r\n\x0b_pagination"J\n\x11ListTeamsResponse\x12\x35\n\x05teams\x18\x01 \x01(\x0b\x32\x1f.datanode.api.v2.TeamConnectionR\x05teams"\x89\x01\n\x17ListTeamRefereesRequest\x12\x1d\n\x07team_id\x18\x01 \x01(\tB\x04\xe2\x41\x01\x02R\x06teamId\x12@\n\npagination\x18\x02 \x01(\x0b\x32\x1b.datanode.api.v2.PaginationH\x00R\npagination\x88\x01\x01\x42\r\n\x0b_pagination"\x85\x01\n\x0bTeamReferee\x12\x17\n\x07team_id\x18\x01 \x01(\tR\x06teamId\x12\x18\n\x07referee\x18\x02 \x01(\tR\x07referee\x12\x1b\n\tjoined_at\x18\x03 \x01(\x03R\x08joinedAt\x12&\n\x0fjoined_at_epoch\x18\x04 \x01(\x04R\rjoinedAtEpoch"[\n\x0fTeamRefereeEdge\x12\x30\n\x04node\x18\x01 \x01(\x0b\x32\x1c.datanode.api.v2.TeamRefereeR\x04node\x12\x16\n\x06\x63ursor\x18\x02 \x01(\tR\x06\x63ursor"\x87\x01\n\x15TeamRefereeConnection\x12\x36\n\x05\x65\x64ges\x18\x01 \x03(\x0b\x32 .datanode.api.v2.TeamRefereeEdgeR\x05\x65\x64ges\x12\x36\n\tpage_info\x18\x02 \x01(\x0b\x32\x19.datanode.api.v2.PageInfoR\x08pageInfo"g\n\x18ListTeamRefereesResponse\x12K\n\rteam_referees\x18\x01 \x01(\x0b\x32&.datanode.api.v2.TeamRefereeConnectionR\x0cteamReferees"r\n\x12TeamRefereeHistory\x12\x17\n\x07team_id\x18\x01 \x01(\tR\x06teamId\x12\x1b\n\tjoined_at\x18\x02 \x01(\x03R\x08joinedAt\x12&\n\x0fjoined_at_epoch\x18\x03 \x01(\x04R\rjoinedAtEpoch"i\n\x16TeamRefereeHistoryEdge\x12\x37\n\x04node\x18\x01 \x01(\x0b\x32#.datanode.api.v2.TeamRefereeHistoryR\x04node\x12\x16\n\x06\x63ursor\x18\x02 \x01(\tR\x06\x63ursor"\x95\x01\n\x1cTeamRefereeHistoryConnection\x12=\n\x05\x65\x64ges\x18\x01 \x03(\x0b\x32\'.datanode.api.v2.TeamRefereeHistoryEdgeR\x05\x65\x64ges\x12\x36\n\tpage_info\x18\x02 \x01(\x0b\x32\x19.datanode.api.v2.PageInfoR\x08pageInfo"\x90\x01\n\x1dListTeamRefereeHistoryRequest\x12\x1e\n\x07referee\x18\x01 \x01(\tB\x04\xe2\x41\x01\x02R\x07referee\x12@\n\npagination\x18\x02 \x01(\x0b\x32\x1b.datanode.api.v2.PaginationH\x00R\npagination\x88\x01\x01\x42\r\n\x0b_pagination"\x81\x01\n\x1eListTeamRefereeHistoryResponse\x12_\n\x14team_referee_history\x18\x01 \x01(\x0b\x32-.datanode.api.v2.TeamRefereeHistoryConnectionR\x12teamRefereeHistory"\xa9\x01\n\x1aGetReferralFeeStatsRequest\x12 \n\tmarket_id\x18\x01 \x01(\tH\x00R\x08marketId\x88\x01\x01\x12\x1e\n\x08\x61sset_id\x18\x02 \x01(\tH\x01R\x07\x61ssetId\x88\x01\x01\x12 \n\tepoch_seq\x18\x03 \x01(\x04H\x02R\x08\x65pochSeq\x88\x01\x01\x42\x0c\n\n_market_idB\x0b\n\t_asset_idB\x0c\n\n_epoch_seq"T\n\x1bGetReferralFeeStatsResponse\x12\x35\n\tfee_stats\x18\x01 \x01(\x0b\x32\x18.vega.events.v1.FeeStatsR\x08\x66\x65\x65Stats*\xaa\x01\n\x10LedgerEntryField\x12"\n\x1eLEDGER_ENTRY_FIELD_UNSPECIFIED\x10\x00\x12&\n"LEDGER_ENTRY_FIELD_ACCOUNT_FROM_ID\x10\x01\x12$\n LEDGER_ENTRY_FIELD_ACCOUNT_TO_ID\x10\x02\x12$\n LEDGER_ENTRY_FIELD_TRANSFER_TYPE\x10\x03*\xb0\x01\n\x0c\x41\x63\x63ountField\x12\x1d\n\x19\x41\x43\x43OUNT_FIELD_UNSPECIFIED\x10\x00\x12\x14\n\x10\x41\x43\x43OUNT_FIELD_ID\x10\x01\x12\x1a\n\x16\x41\x43\x43OUNT_FIELD_PARTY_ID\x10\x02\x12\x1a\n\x16\x41\x43\x43OUNT_FIELD_ASSET_ID\x10\x03\x12\x1b\n\x17\x41\x43\x43OUNT_FIELD_MARKET_ID\x10\x04\x12\x16\n\x12\x41\x43\x43OUNT_FIELD_TYPE\x10\x05*\xad\x01\n\x11TransferDirection\x12"\n\x1eTRANSFER_DIRECTION_UNSPECIFIED\x10\x00\x12$\n TRANSFER_DIRECTION_TRANSFER_FROM\x10\x01\x12"\n\x1eTRANSFER_DIRECTION_TRANSFER_TO\x10\x02\x12*\n&TRANSFER_DIRECTION_TRANSFER_TO_OR_FROM\x10\x03*\xde\x02\n\x05Table\x12\x15\n\x11TABLE_UNSPECIFIED\x10\x00\x12\x12\n\x0eTABLE_BALANCES\x10\x01\x12\x15\n\x11TABLE_CHECKPOINTS\x10\x02\x12\x15\n\x11TABLE_DELEGATIONS\x10\x03\x12\x10\n\x0cTABLE_LEDGER\x10\x04\x12\x10\n\x0cTABLE_ORDERS\x10\x05\x12\x10\n\x0cTABLE_TRADES\x10\x06\x12\x15\n\x11TABLE_MARKET_DATA\x10\x07\x12\x17\n\x13TABLE_MARGIN_LEVELS\x10\x08\x12\x13\n\x0fTABLE_POSITIONS\x10\t\x12\x1e\n\x1aTABLE_LIQUIDITY_PROVISIONS\x10\n\x12\x11\n\rTABLE_MARKETS\x10\x0b\x12\x12\n\x0eTABLE_DEPOSITS\x10\x0c\x12\x15\n\x11TABLE_WITHDRAWALS\x10\r\x12\x10\n\x0cTABLE_BLOCKS\x10\x0e\x12\x11\n\rTABLE_REWARDS\x10\x0f\x32\xbe\x66\n\x12TradingDataService\x12j\n\x0cListAccounts\x12$.datanode.api.v2.ListAccountsRequest\x1a%.datanode.api.v2.ListAccountsResponse"\r\x92\x41\n\n\x08\x41\x63\x63ounts\x12u\n\x0fObserveAccounts\x12\'.datanode.api.v2.ObserveAccountsRequest\x1a(.datanode.api.v2.ObserveAccountsResponse"\r\x92\x41\n\n\x08\x41\x63\x63ounts0\x01\x12Z\n\x04Info\x12\x1c.datanode.api.v2.InfoRequest\x1a\x1d.datanode.api.v2.InfoResponse"\x15\x92\x41\x12\n\x10Node information\x12\\\n\x08GetOrder\x12 .datanode.api.v2.GetOrderRequest\x1a!.datanode.api.v2.GetOrderResponse"\x0b\x92\x41\x08\n\x06Orders\x12\x62\n\nListOrders\x12".datanode.api.v2.ListOrdersRequest\x1a#.datanode.api.v2.ListOrdersResponse"\x0b\x92\x41\x08\n\x06Orders\x12w\n\x11ListOrderVersions\x12).datanode.api.v2.ListOrderVersionsRequest\x1a*.datanode.api.v2.ListOrderVersionsResponse"\x0b\x92\x41\x08\n\x06Orders\x12m\n\rObserveOrders\x12%.datanode.api.v2.ObserveOrdersRequest\x1a&.datanode.api.v2.ObserveOrdersResponse"\x0b\x92\x41\x08\n\x06Orders0\x01\x12h\n\x0cGetStopOrder\x12$.datanode.api.v2.GetStopOrderRequest\x1a%.datanode.api.v2.GetStopOrderResponse"\x0b\x92\x41\x08\n\x06Orders\x12n\n\x0eListStopOrders\x12&.datanode.api.v2.ListStopOrdersRequest\x1a\'.datanode.api.v2.ListStopOrdersResponse"\x0b\x92\x41\x08\n\x06Orders\x12q\n\rListPositions\x12%.datanode.api.v2.ListPositionsRequest\x1a&.datanode.api.v2.ListPositionsResponse"\x11\x88\x02\x01\x92\x41\x0b\n\tPositions\x12w\n\x10ListAllPositions\x12(.datanode.api.v2.ListAllPositionsRequest\x1a).datanode.api.v2.ListAllPositionsResponse"\x0e\x92\x41\x0b\n\tPositions\x12y\n\x10ObservePositions\x12(.datanode.api.v2.ObservePositionsRequest\x1a).datanode.api.v2.ObservePositionsResponse"\x0e\x92\x41\x0b\n\tPositions0\x01\x12\x7f\n\x11ListLedgerEntries\x12).datanode.api.v2.ListLedgerEntriesRequest\x1a*.datanode.api.v2.ListLedgerEntriesResponse"\x13\x92\x41\x10\n\x0eLedger entries\x12o\n\x13\x45xportLedgerEntries\x12+.datanode.api.v2.ExportLedgerEntriesRequest\x1a\x14.google.api.HttpBody"\x13\x92\x41\x10\n\x0eLedger entries0\x01\x12|\n\x12ListBalanceChanges\x12*.datanode.api.v2.ListBalanceChangesRequest\x1a+.datanode.api.v2.ListBalanceChangesResponse"\r\x92\x41\n\n\x08\x41\x63\x63ounts\x12~\n\x13GetLatestMarketData\x12+.datanode.api.v2.GetLatestMarketDataRequest\x1a,.datanode.api.v2.GetLatestMarketDataResponse"\x0c\x92\x41\t\n\x07Markets\x12\x81\x01\n\x14ListLatestMarketData\x12,.datanode.api.v2.ListLatestMarketDataRequest\x1a-.datanode.api.v2.ListLatestMarketDataResponse"\x0c\x92\x41\t\n\x07Markets\x12\x81\x01\n\x14GetLatestMarketDepth\x12,.datanode.api.v2.GetLatestMarketDepthRequest\x1a-.datanode.api.v2.GetLatestMarketDepthResponse"\x0c\x92\x41\t\n\x07Markets\x12\x80\x01\n\x13ObserveMarketsDepth\x12+.datanode.api.v2.ObserveMarketsDepthRequest\x1a,.datanode.api.v2.ObserveMarketsDepthResponse"\x0c\x92\x41\t\n\x07Markets0\x01\x12\x95\x01\n\x1aObserveMarketsDepthUpdates\x12\x32.datanode.api.v2.ObserveMarketsDepthUpdatesRequest\x1a\x33.datanode.api.v2.ObserveMarketsDepthUpdatesResponse"\x0c\x92\x41\t\n\x07Markets0\x01\x12}\n\x12ObserveMarketsData\x12*.datanode.api.v2.ObserveMarketsDataRequest\x1a+.datanode.api.v2.ObserveMarketsDataResponse"\x0c\x92\x41\t\n\x07Markets0\x01\x12\x8d\x01\n\x18GetMarketDataHistoryByID\x12\x30.datanode.api.v2.GetMarketDataHistoryByIDRequest\x1a\x31.datanode.api.v2.GetMarketDataHistoryByIDResponse"\x0c\x92\x41\t\n\x07Markets\x12n\n\rListTransfers\x12%.datanode.api.v2.ListTransfersRequest\x1a&.datanode.api.v2.ListTransfersResponse"\x0e\x92\x41\x0b\n\tTransfers\x12h\n\x0bGetTransfer\x12#.datanode.api.v2.GetTransferRequest\x1a$.datanode.api.v2.GetTransferResponse"\x0e\x92\x41\x0b\n\tTransfers\x12u\n\x10GetNetworkLimits\x12(.datanode.api.v2.GetNetworkLimitsRequest\x1a).datanode.api.v2.GetNetworkLimitsResponse"\x0c\x92\x41\t\n\x07Network\x12o\n\x0eListCandleData\x12&.datanode.api.v2.ListCandleDataRequest\x1a\'.datanode.api.v2.ListCandleDataResponse"\x0c\x92\x41\t\n\x07\x43\x61ndles\x12z\n\x11ObserveCandleData\x12).datanode.api.v2.ObserveCandleDataRequest\x1a*.datanode.api.v2.ObserveCandleDataResponse"\x0c\x92\x41\t\n\x07\x43\x61ndles0\x01\x12~\n\x13ListCandleIntervals\x12+.datanode.api.v2.ListCandleIntervalsRequest\x1a,.datanode.api.v2.ListCandleIntervalsResponse"\x0c\x92\x41\t\n\x07\x43\x61ndles\x12\x63\n\tListVotes\x12!.datanode.api.v2.ListVotesRequest\x1a".datanode.api.v2.ListVotesResponse"\x0f\x92\x41\x0c\n\nGovernance\x12n\n\x0cObserveVotes\x12$.datanode.api.v2.ObserveVotesRequest\x1a%.datanode.api.v2.ObserveVotesResponse"\x0f\x92\x41\x0c\n\nGovernance0\x01\x12\xb3\x01\n#ListERC20MultiSigSignerAddedBundles\x12;.datanode.api.v2.ListERC20MultiSigSignerAddedBundlesRequest\x1a<.datanode.api.v2.ListERC20MultiSigSignerAddedBundlesResponse"\x11\x92\x41\x0e\n\x0c\x45RC20 bridge\x12\xb9\x01\n%ListERC20MultiSigSignerRemovedBundles\x12=.datanode.api.v2.ListERC20MultiSigSignerRemovedBundlesRequest\x1a>.datanode.api.v2.ListERC20MultiSigSignerRemovedBundlesResponse"\x11\x92\x41\x0e\n\x0c\x45RC20 bridge\x12\x8f\x01\n\x17GetERC20ListAssetBundle\x12/.datanode.api.v2.GetERC20ListAssetBundleRequest\x1a\x30.datanode.api.v2.GetERC20ListAssetBundleResponse"\x11\x92\x41\x0e\n\x0c\x45RC20 bridge\x12\x9e\x01\n\x1cGetERC20SetAssetLimitsBundle\x12\x34.datanode.api.v2.GetERC20SetAssetLimitsBundleRequest\x1a\x35.datanode.api.v2.GetERC20SetAssetLimitsBundleResponse"\x11\x92\x41\x0e\n\x0c\x45RC20 bridge\x12\x98\x01\n\x1aGetERC20WithdrawalApproval\x12\x32.datanode.api.v2.GetERC20WithdrawalApprovalRequest\x1a\x33.datanode.api.v2.GetERC20WithdrawalApprovalResponse"\x11\x92\x41\x0e\n\x0c\x45RC20 bridge\x12h\n\x0cGetLastTrade\x12$.datanode.api.v2.GetLastTradeRequest\x1a%.datanode.api.v2.GetLastTradeResponse"\x0b\x92\x41\x08\n\x06Trades\x12\x62\n\nListTrades\x12".datanode.api.v2.ListTradesRequest\x1a#.datanode.api.v2.ListTradesResponse"\x0b\x92\x41\x08\n\x06Trades\x12m\n\rObserveTrades\x12%.datanode.api.v2.ObserveTradesRequest\x1a&.datanode.api.v2.ObserveTradesResponse"\x0b\x92\x41\x08\n\x06Trades0\x01\x12q\n\rGetOracleSpec\x12%.datanode.api.v2.GetOracleSpecRequest\x1a&.datanode.api.v2.GetOracleSpecResponse"\x11\x92\x41\x0e\n\x0c\x44\x61ta sources\x12w\n\x0fListOracleSpecs\x12\'.datanode.api.v2.ListOracleSpecsRequest\x1a(.datanode.api.v2.ListOracleSpecsResponse"\x11\x92\x41\x0e\n\x0c\x44\x61ta sources\x12t\n\x0eListOracleData\x12&.datanode.api.v2.ListOracleDataRequest\x1a\'.datanode.api.v2.ListOracleDataResponse"\x11\x92\x41\x0e\n\x0c\x44\x61ta sources\x12`\n\tGetMarket\x12!.datanode.api.v2.GetMarketRequest\x1a".datanode.api.v2.GetMarketResponse"\x0c\x92\x41\t\n\x07Markets\x12\x66\n\x0bListMarkets\x12#.datanode.api.v2.ListMarketsRequest\x1a$.datanode.api.v2.ListMarketsResponse"\x0c\x92\x41\t\n\x07Markets\x12\x81\x01\n\x14ListSuccessorMarkets\x12,.datanode.api.v2.ListSuccessorMarketsRequest\x1a-.datanode.api.v2.ListSuccessorMarketsResponse"\x0c\x92\x41\t\n\x07Markets\x12]\n\x08GetParty\x12 .datanode.api.v2.GetPartyRequest\x1a!.datanode.api.v2.GetPartyResponse"\x0c\x92\x41\t\n\x07Parties\x12\x66\n\x0bListParties\x12#.datanode.api.v2.ListPartiesRequest\x1a$.datanode.api.v2.ListPartiesResponse"\x0c\x92\x41\t\n\x07Parties\x12{\n\x10ListMarginLevels\x12(.datanode.api.v2.ListMarginLevelsRequest\x1a).datanode.api.v2.ListMarginLevelsResponse"\x12\x92\x41\x0f\n\rMargin levels\x12\x86\x01\n\x13ObserveMarginLevels\x12+.datanode.api.v2.ObserveMarginLevelsRequest\x1a,.datanode.api.v2.ObserveMarginLevelsResponse"\x12\x92\x41\x0f\n\rMargin levels0\x01\x12\x66\n\x0bListRewards\x12#.datanode.api.v2.ListRewardsRequest\x1a$.datanode.api.v2.ListRewardsResponse"\x0c\x92\x41\t\n\x07Rewards\x12~\n\x13ListRewardSummaries\x12+.datanode.api.v2.ListRewardSummariesRequest\x1a,.datanode.api.v2.ListRewardSummariesResponse"\x0c\x92\x41\t\n\x07Rewards\x12\x8d\x01\n\x18ListEpochRewardSummaries\x12\x30.datanode.api.v2.ListEpochRewardSummariesRequest\x1a\x31.datanode.api.v2.ListEpochRewardSummariesResponse"\x0c\x92\x41\t\n\x07Rewards\x12\x62\n\nGetDeposit\x12".datanode.api.v2.GetDepositRequest\x1a#.datanode.api.v2.GetDepositResponse"\x0b\x92\x41\x08\n\x06\x41ssets\x12h\n\x0cListDeposits\x12$.datanode.api.v2.ListDepositsRequest\x1a%.datanode.api.v2.ListDepositsResponse"\x0b\x92\x41\x08\n\x06\x41ssets\x12k\n\rGetWithdrawal\x12%.datanode.api.v2.GetWithdrawalRequest\x1a&.datanode.api.v2.GetWithdrawalResponse"\x0b\x92\x41\x08\n\x06\x41ssets\x12q\n\x0fListWithdrawals\x12\'.datanode.api.v2.ListWithdrawalsRequest\x1a(.datanode.api.v2.ListWithdrawalsResponse"\x0b\x92\x41\x08\n\x06\x41ssets\x12\\\n\x08GetAsset\x12 .datanode.api.v2.GetAssetRequest\x1a!.datanode.api.v2.GetAssetResponse"\x0b\x92\x41\x08\n\x06\x41ssets\x12\x62\n\nListAssets\x12".datanode.api.v2.ListAssetsRequest\x1a#.datanode.api.v2.ListAssetsResponse"\x0b\x92\x41\x08\n\x06\x41ssets\x12\x97\x01\n\x17ListLiquidityProvisions\x12/.datanode.api.v2.ListLiquidityProvisionsRequest\x1a\x30.datanode.api.v2.ListLiquidityProvisionsResponse"\x19\x92\x41\x16\n\x14Liquidity provisions\x12\xa2\x01\n\x1aObserveLiquidityProvisions\x12\x32.datanode.api.v2.ObserveLiquidityProvisionsRequest\x1a\x33.datanode.api.v2.ObserveLiquidityProvisionsResponse"\x19\x92\x41\x16\n\x14Liquidity provisions0\x01\x12\x93\x01\n\x16ListLiquidityProviders\x12..datanode.api.v2.ListLiquidityProvidersRequest\x1a/.datanode.api.v2.ListLiquidityProvidersResponse"\x18\x92\x41\x15\n\x13Liquidity providers\x12{\n\x11GetGovernanceData\x12).datanode.api.v2.GetGovernanceDataRequest\x1a*.datanode.api.v2.GetGovernanceDataResponse"\x0f\x92\x41\x0c\n\nGovernance\x12~\n\x12ListGovernanceData\x12*.datanode.api.v2.ListGovernanceDataRequest\x1a+.datanode.api.v2.ListGovernanceDataResponse"\x0f\x92\x41\x0c\n\nGovernance\x12}\n\x11ObserveGovernance\x12).datanode.api.v2.ObserveGovernanceRequest\x1a*.datanode.api.v2.ObserveGovernanceResponse"\x0f\x92\x41\x0c\n\nGovernance0\x01\x12r\n\x0fListDelegations\x12\'.datanode.api.v2.ListDelegationsRequest\x1a(.datanode.api.v2.ListDelegationsResponse"\x0c\x92\x41\t\n\x07Network\x12o\n\x0eGetNetworkData\x12&.datanode.api.v2.GetNetworkDataRequest\x1a\'.datanode.api.v2.GetNetworkDataResponse"\x0c\x92\x41\t\n\x07Network\x12Z\n\x07GetNode\x12\x1f.datanode.api.v2.GetNodeRequest\x1a .datanode.api.v2.GetNodeResponse"\x0c\x92\x41\t\n\x07Network\x12`\n\tListNodes\x12!.datanode.api.v2.ListNodesRequest\x1a".datanode.api.v2.ListNodesResponse"\x0c\x92\x41\t\n\x07Network\x12\x80\x01\n\x12ListNodeSignatures\x12*.datanode.api.v2.ListNodeSignaturesRequest\x1a+.datanode.api.v2.ListNodeSignaturesResponse"\x11\x92\x41\x0e\n\x0c\x45RC20 bridge\x12]\n\x08GetEpoch\x12 .datanode.api.v2.GetEpochRequest\x1a!.datanode.api.v2.GetEpochResponse"\x0c\x92\x41\t\n\x07Network\x12\x65\n\x0b\x45stimateFee\x12#.datanode.api.v2.EstimateFeeRequest\x1a$.datanode.api.v2.EstimateFeeResponse"\x0b\x92\x41\x08\n\x06Orders\x12n\n\x0e\x45stimateMargin\x12&.datanode.api.v2.EstimateMarginRequest\x1a\'.datanode.api.v2.EstimateMarginResponse"\x0b\x92\x41\x08\n\x06Orders\x12w\n\x10\x45stimatePosition\x12(.datanode.api.v2.EstimatePositionRequest\x1a).datanode.api.v2.EstimatePositionResponse"\x0e\x92\x41\x0b\n\tPositions\x12\x84\x01\n\x15ListNetworkParameters\x12-.datanode.api.v2.ListNetworkParametersRequest\x1a..datanode.api.v2.ListNetworkParametersResponse"\x0c\x92\x41\t\n\x07Network\x12~\n\x13GetNetworkParameter\x12+.datanode.api.v2.GetNetworkParameterRequest\x1a,.datanode.api.v2.GetNetworkParameterResponse"\x0c\x92\x41\t\n\x07Network\x12r\n\x0fListCheckpoints\x12\'.datanode.api.v2.ListCheckpointsRequest\x1a(.datanode.api.v2.ListCheckpointsResponse"\x0c\x92\x41\t\n\x07Network\x12]\n\x08GetStake\x12 .datanode.api.v2.GetStakeRequest\x1a!.datanode.api.v2.GetStakeResponse"\x0c\x92\x41\t\n\x07Network\x12o\n\x0eGetRiskFactors\x12&.datanode.api.v2.GetRiskFactorsRequest\x1a\'.datanode.api.v2.GetRiskFactorsResponse"\x0c\x92\x41\t\n\x07Markets\x12u\n\x0fObserveEventBus\x12\'.datanode.api.v2.ObserveEventBusRequest\x1a(.datanode.api.v2.ObserveEventBusResponse"\x0b\x92\x41\x08\n\x06\x45vents(\x01\x30\x01\x12\x92\x01\n\x16ObserveLedgerMovements\x12..datanode.api.v2.ObserveLedgerMovementsRequest\x1a/.datanode.api.v2.ObserveLedgerMovementsResponse"\x15\x92\x41\x12\n\x10Ledger movements0\x01\x12u\n\x10ListKeyRotations\x12(.datanode.api.v2.ListKeyRotationsRequest\x1a).datanode.api.v2.ListKeyRotationsResponse"\x0c\x92\x41\t\n\x07Network\x12\x8d\x01\n\x18ListEthereumKeyRotations\x12\x30.datanode.api.v2.ListEthereumKeyRotationsRequest\x1a\x31.datanode.api.v2.ListEthereumKeyRotationsResponse"\x0c\x92\x41\t\n\x07Network\x12\x66\n\x0bGetVegaTime\x12#.datanode.api.v2.GetVegaTimeRequest\x1a$.datanode.api.v2.GetVegaTimeResponse"\x0c\x92\x41\t\n\x07Network\x12\x8d\x01\n\x18GetProtocolUpgradeStatus\x12\x30.datanode.api.v2.GetProtocolUpgradeStatusRequest\x1a\x31.datanode.api.v2.GetProtocolUpgradeStatusResponse"\x0c\x92\x41\t\n\x07Network\x12\x99\x01\n\x1cListProtocolUpgradeProposals\x12\x34.datanode.api.v2.ListProtocolUpgradeProposalsRequest\x1a\x35.datanode.api.v2.ListProtocolUpgradeProposalsResponse"\x0c\x92\x41\t\n\x07Network\x12x\n\x11ListCoreSnapshots\x12).datanode.api.v2.ListCoreSnapshotsRequest\x1a*.datanode.api.v2.ListCoreSnapshotsResponse"\x0c\x92\x41\t\n\x07Network\x12\xb3\x01\n"GetMostRecentNetworkHistorySegment\x12:.datanode.api.v2.GetMostRecentNetworkHistorySegmentRequest\x1a;.datanode.api.v2.GetMostRecentNetworkHistorySegmentResponse"\x14\x92\x41\x11\n\x0fNetwork history\x12\xa4\x01\n\x1dListAllNetworkHistorySegments\x12\x35.datanode.api.v2.ListAllNetworkHistorySegmentsRequest\x1a\x36.datanode.api.v2.ListAllNetworkHistorySegmentsResponse"\x14\x92\x41\x11\n\x0fNetwork history\x12\xb9\x01\n$GetActiveNetworkHistoryPeerAddresses\x12<.datanode.api.v2.GetActiveNetworkHistoryPeerAddressesRequest\x1a=.datanode.api.v2.GetActiveNetworkHistoryPeerAddressesResponse"\x14\x92\x41\x11\n\x0fNetwork history\x12\x92\x01\n\x17GetNetworkHistoryStatus\x12/.datanode.api.v2.GetNetworkHistoryStatusRequest\x1a\x30.datanode.api.v2.GetNetworkHistoryStatusResponse"\x14\x92\x41\x11\n\x0fNetwork history\x12\xaa\x01\n\x1fGetNetworkHistoryBootstrapPeers\x12\x37.datanode.api.v2.GetNetworkHistoryBootstrapPeersRequest\x1a\x38.datanode.api.v2.GetNetworkHistoryBootstrapPeersResponse"\x14\x92\x41\x11\n\x0fNetwork history\x12j\n\x0cListEntities\x12$.datanode.api.v2.ListEntitiesRequest\x1a%.datanode.api.v2.ListEntitiesResponse"\r\x92\x41\n\n\x08\x45xplorer\x12{\n\x12ListFundingPeriods\x12*.datanode.api.v2.ListFundingPeriodsRequest\x1a+.datanode.api.v2.ListFundingPeriodsResponse"\x0c\x92\x41\t\n\x07Markets\x12\x96\x01\n\x1bListFundingPeriodDataPoints\x12\x33.datanode.api.v2.ListFundingPeriodDataPointsRequest\x1a\x34.datanode.api.v2.ListFundingPeriodDataPointsResponse"\x0c\x92\x41\t\n\x07Markets\x12~\n\x13ListFundingPayments\x12+.datanode.api.v2.ListFundingPaymentsRequest\x1a,.datanode.api.v2.ListFundingPaymentsResponse"\x0c\x92\x41\t\n\x07Markets\x12\x90\x01\n\x16GetPartyActivityStreak\x12..datanode.api.v2.GetPartyActivityStreakRequest\x1a/.datanode.api.v2.GetPartyActivityStreakResponse"\x15\x92\x41\x12\n\x10Referral program\x12\x99\x01\n\x19GetCurrentReferralProgram\x12\x31.datanode.api.v2.GetCurrentReferralProgramRequest\x1a\x32.datanode.api.v2.GetCurrentReferralProgramResponse"\x15\x92\x41\x12\n\x10Referral program\x12~\n\x10ListReferralSets\x12(.datanode.api.v2.ListReferralSetsRequest\x1a).datanode.api.v2.ListReferralSetsResponse"\x15\x92\x41\x12\n\x10Referral program\x12\x93\x01\n\x17ListReferralSetReferees\x12/.datanode.api.v2.ListReferralSetRefereesRequest\x1a\x30.datanode.api.v2.ListReferralSetRefereesResponse"\x15\x92\x41\x12\n\x10Referral program\x12\x87\x01\n\x13GetReferralSetStats\x12+.datanode.api.v2.GetReferralSetStatsRequest\x1a,.datanode.api.v2.GetReferralSetStatsResponse"\x15\x92\x41\x12\n\x10Referral program\x12^\n\tListTeams\x12!.datanode.api.v2.ListTeamsRequest\x1a".datanode.api.v2.ListTeamsResponse"\n\x92\x41\x07\n\x05Teams\x12s\n\x10ListTeamReferees\x12(.datanode.api.v2.ListTeamRefereesRequest\x1a).datanode.api.v2.ListTeamRefereesResponse"\n\x92\x41\x07\n\x05Teams\x12\x85\x01\n\x16ListTeamRefereeHistory\x12..datanode.api.v2.ListTeamRefereeHistoryRequest\x1a/.datanode.api.v2.ListTeamRefereeHistoryResponse"\n\x92\x41\x07\n\x05Teams\x12\x87\x01\n\x13GetReferralFeeStats\x12+.datanode.api.v2.GetReferralFeeStatsRequest\x1a,.datanode.api.v2.GetReferralFeeStatsResponse"\x15\x92\x41\x12\n\x10Referral program\x12r\n\x14\x45xportNetworkHistory\x12,.datanode.api.v2.ExportNetworkHistoryRequest\x1a\x14.google.api.HttpBody"\x14\x92\x41\x11\n\x0fNetwork history0\x01\x12N\n\x04Ping\x12\x1c.datanode.api.v2.PingRequest\x1a\x1d.datanode.api.v2.PingResponse"\t\x92\x41\x06\n\x04MiscB\xc6\x01Z1code.vegaprotocol.io/vega/protos/data-node/api/v2\x92\x41\x8f\x01\x12\x1e\n\x13Vega data node APIs2\x07v0.72.1\x1a\x1chttps://api.testnet.vega.xyz*\x02\x01\x02\x32\x10\x61pplication/jsonR9\n\x03\x35\x30\x30\x12\x32\n\x18\x41n internal server error\x12\x16\n\x14\x1a\x12.google.rpc.Statusb\x06proto3' + b'\n#data-node/api/v2/trading_data.proto\x12\x0f\x64\x61tanode.api.v2\x1a\x1fgoogle/api/field_behavior.proto\x1a\x19google/api/httpbody.proto\x1a.protoc-gen-openapiv2/options/annotations.proto\x1a\x11vega/assets.proto\x1a)vega/commands/v1/validator_commands.proto\x1a\x1bvega/events/v1/events.proto\x1a\x15vega/governance.proto\x1a\x12vega/markets.proto\x1a\x11vega/oracle.proto\x1a\x0fvega/vega.proto"\xd9\x01\n\nPagination\x12\x19\n\x05\x66irst\x18\x01 \x01(\x05H\x00R\x05\x66irst\x88\x01\x01\x12\x19\n\x05\x61\x66ter\x18\x02 \x01(\tH\x01R\x05\x61\x66ter\x88\x01\x01\x12\x17\n\x04last\x18\x03 \x01(\x05H\x02R\x04last\x88\x01\x01\x12\x1b\n\x06\x62\x65\x66ore\x18\x04 \x01(\tH\x03R\x06\x62\x65\x66ore\x88\x01\x01\x12&\n\x0cnewest_first\x18\x05 \x01(\x08H\x04R\x0bnewestFirst\x88\x01\x01\x42\x08\n\x06_firstB\x08\n\x06_afterB\x07\n\x05_lastB\t\n\x07_beforeB\x0f\n\r_newest_first"\x9c\x01\n\x08PageInfo\x12"\n\rhas_next_page\x18\x01 \x01(\x08R\x0bhasNextPage\x12*\n\x11has_previous_page\x18\x02 \x01(\x08R\x0fhasPreviousPage\x12!\n\x0cstart_cursor\x18\x03 \x01(\tR\x0bstartCursor\x12\x1d\n\nend_cursor\x18\x04 \x01(\tR\tendCursor"\x9a\x01\n\x0e\x41\x63\x63ountBalance\x12\x14\n\x05owner\x18\x02 \x01(\tR\x05owner\x12\x18\n\x07\x62\x61lance\x18\x03 \x01(\tR\x07\x62\x61lance\x12\x14\n\x05\x61sset\x18\x04 \x01(\tR\x05\x61sset\x12\x1b\n\tmarket_id\x18\x05 \x01(\tR\x08marketId\x12%\n\x04type\x18\x06 \x01(\x0e\x32\x11.vega.AccountTypeR\x04type"\x9e\x01\n\x13ListAccountsRequest\x12\x36\n\x06\x66ilter\x18\x01 \x01(\x0b\x32\x1e.datanode.api.v2.AccountFilterR\x06\x66ilter\x12@\n\npagination\x18\x02 \x01(\x0b\x32\x1b.datanode.api.v2.PaginationH\x00R\npagination\x88\x01\x01\x42\r\n\x0b_pagination"W\n\x14ListAccountsResponse\x12?\n\x08\x61\x63\x63ounts\x18\x01 \x01(\x0b\x32#.datanode.api.v2.AccountsConnectionR\x08\x61\x63\x63ounts"\x80\x01\n\x12\x41\x63\x63ountsConnection\x12\x32\n\x05\x65\x64ges\x18\x01 \x03(\x0b\x32\x1c.datanode.api.v2.AccountEdgeR\x05\x65\x64ges\x12\x36\n\tpage_info\x18\x02 \x01(\x0b\x32\x19.datanode.api.v2.PageInfoR\x08pageInfo"Z\n\x0b\x41\x63\x63ountEdge\x12\x33\n\x04node\x18\x01 \x01(\x0b\x32\x1f.datanode.api.v2.AccountBalanceR\x04node\x12\x16\n\x06\x63ursor\x18\x02 \x01(\tR\x06\x63ursor"\x8d\x01\n\x16ObserveAccountsRequest\x12\x1b\n\tmarket_id\x18\x01 \x01(\tR\x08marketId\x12\x19\n\x08party_id\x18\x02 \x01(\tR\x07partyId\x12\x14\n\x05\x61sset\x18\x03 \x01(\tR\x05\x61sset\x12%\n\x04type\x18\x04 \x01(\x0e\x32\x11.vega.AccountTypeR\x04type"\xa6\x01\n\x17ObserveAccountsResponse\x12\x42\n\x08snapshot\x18\x01 \x01(\x0b\x32$.datanode.api.v2.AccountSnapshotPageH\x00R\x08snapshot\x12;\n\x07updates\x18\x02 \x01(\x0b\x32\x1f.datanode.api.v2.AccountUpdatesH\x00R\x07updatesB\n\n\x08response"o\n\x13\x41\x63\x63ountSnapshotPage\x12;\n\x08\x61\x63\x63ounts\x18\x01 \x03(\x0b\x32\x1f.datanode.api.v2.AccountBalanceR\x08\x61\x63\x63ounts\x12\x1b\n\tlast_page\x18\x02 \x01(\x08R\x08lastPage"M\n\x0e\x41\x63\x63ountUpdates\x12;\n\x08\x61\x63\x63ounts\x18\x01 \x03(\x0b\x32\x1f.datanode.api.v2.AccountBalanceR\x08\x61\x63\x63ounts"\r\n\x0bInfoRequest"I\n\x0cInfoResponse\x12\x18\n\x07version\x18\x01 \x01(\tR\x07version\x12\x1f\n\x0b\x63ommit_hash\x18\x02 \x01(\tR\ncommitHash"]\n\x0fGetOrderRequest\x12\x1f\n\x08order_id\x18\x01 \x01(\tB\x04\xe2\x41\x01\x02R\x07orderId\x12\x1d\n\x07version\x18\x02 \x01(\x05H\x00R\x07version\x88\x01\x01\x42\n\n\x08_version"5\n\x10GetOrderResponse\x12!\n\x05order\x18\x01 \x01(\x0b\x32\x0b.vega.OrderR\x05order"\xbd\x03\n\x0bOrderFilter\x12.\n\x08statuses\x18\x01 \x03(\x0e\x32\x12.vega.Order.StatusR\x08statuses\x12&\n\x05types\x18\x02 \x03(\x0e\x32\x10.vega.Order.TypeR\x05types\x12=\n\x0etime_in_forces\x18\x03 \x03(\x0e\x32\x17.vega.Order.TimeInForceR\x0ctimeInForces\x12+\n\x11\x65xclude_liquidity\x18\x04 \x01(\x08R\x10\x65xcludeLiquidity\x12\x1b\n\tparty_ids\x18\x05 \x03(\tR\x08partyIds\x12\x1d\n\nmarket_ids\x18\x06 \x03(\tR\tmarketIds\x12!\n\treference\x18\x07 \x01(\tH\x00R\treference\x88\x01\x01\x12>\n\ndate_range\x18\x08 \x01(\x0b\x32\x1a.datanode.api.v2.DateRangeH\x01R\tdateRange\x88\x01\x01\x12 \n\tlive_only\x18\t \x01(\x08H\x02R\x08liveOnly\x88\x01\x01\x42\x0c\n\n_referenceB\r\n\x0b_date_rangeB\x0c\n\n_live_only"\xaa\x01\n\x11ListOrdersRequest\x12@\n\npagination\x18\x02 \x01(\x0b\x32\x1b.datanode.api.v2.PaginationH\x00R\npagination\x88\x01\x01\x12\x39\n\x06\x66ilter\x18\x05 \x01(\x0b\x32\x1c.datanode.api.v2.OrderFilterH\x01R\x06\x66ilter\x88\x01\x01\x42\r\n\x0b_paginationB\t\n\x07_filter"N\n\x12ListOrdersResponse\x12\x38\n\x06orders\x18\x01 \x01(\x0b\x32 .datanode.api.v2.OrderConnectionR\x06orders"\x8c\x01\n\x18ListOrderVersionsRequest\x12\x1f\n\x08order_id\x18\x01 \x01(\tB\x04\xe2\x41\x01\x02R\x07orderId\x12@\n\npagination\x18\x04 \x01(\x0b\x32\x1b.datanode.api.v2.PaginationH\x00R\npagination\x88\x01\x01\x42\r\n\x0b_pagination"U\n\x19ListOrderVersionsResponse\x12\x38\n\x06orders\x18\x01 \x01(\x0b\x32 .datanode.api.v2.OrderConnectionR\x06orders"\x9a\x01\n\x14ObserveOrdersRequest\x12\x1d\n\nmarket_ids\x18\x01 \x03(\tR\tmarketIds\x12\x1b\n\tparty_ids\x18\x02 \x03(\tR\x08partyIds\x12\x30\n\x11\x65xclude_liquidity\x18\x03 \x01(\x08H\x00R\x10\x65xcludeLiquidity\x88\x01\x01\x42\x14\n\x12_exclude_liquidity"\xa0\x01\n\x15ObserveOrdersResponse\x12@\n\x08snapshot\x18\x01 \x01(\x0b\x32".datanode.api.v2.OrderSnapshotPageH\x00R\x08snapshot\x12\x39\n\x07updates\x18\x02 \x01(\x0b\x32\x1d.datanode.api.v2.OrderUpdatesH\x00R\x07updatesB\n\n\x08response"U\n\x11OrderSnapshotPage\x12#\n\x06orders\x18\x01 \x03(\x0b\x32\x0b.vega.OrderR\x06orders\x12\x1b\n\tlast_page\x18\x02 \x01(\x08R\x08lastPage"3\n\x0cOrderUpdates\x12#\n\x06orders\x18\x01 \x03(\x0b\x32\x0b.vega.OrderR\x06orders"6\n\x13GetStopOrderRequest\x12\x1f\n\x08order_id\x18\x01 \x01(\tB\x04\xe2\x41\x01\x02R\x07orderId"L\n\x14GetStopOrderResponse\x12\x34\n\x05order\x18\x01 \x01(\x0b\x32\x1e.vega.events.v1.StopOrderEventR\x05order"\xb2\x01\n\x15ListStopOrdersRequest\x12@\n\npagination\x18\x02 \x01(\x0b\x32\x1b.datanode.api.v2.PaginationH\x00R\npagination\x88\x01\x01\x12=\n\x06\x66ilter\x18\x05 \x01(\x0b\x32 .datanode.api.v2.StopOrderFilterH\x01R\x06\x66ilter\x88\x01\x01\x42\r\n\x0b_paginationB\t\n\x07_filter"\xcd\x02\n\x0fStopOrderFilter\x12\x32\n\x08statuses\x18\x01 \x03(\x0e\x32\x16.vega.StopOrder.StatusR\x08statuses\x12K\n\x11\x65xpiry_strategies\x18\x02 \x03(\x0e\x32\x1e.vega.StopOrder.ExpiryStrategyR\x10\x65xpiryStrategies\x12>\n\ndate_range\x18\x03 \x01(\x0b\x32\x1a.datanode.api.v2.DateRangeH\x00R\tdateRange\x88\x01\x01\x12\x1b\n\tparty_ids\x18\x04 \x03(\tR\x08partyIds\x12\x1d\n\nmarket_ids\x18\x05 \x03(\tR\tmarketIds\x12 \n\tlive_only\x18\x06 \x01(\x08H\x01R\x08liveOnly\x88\x01\x01\x42\r\n\x0b_date_rangeB\x0c\n\n_live_only"[\n\rStopOrderEdge\x12\x32\n\x04node\x18\x01 \x01(\x0b\x32\x1e.vega.events.v1.StopOrderEventR\x04node\x12\x16\n\x06\x63ursor\x18\x02 \x01(\tR\x06\x63ursor"\x83\x01\n\x13StopOrderConnection\x12\x34\n\x05\x65\x64ges\x18\x01 \x03(\x0b\x32\x1e.datanode.api.v2.StopOrderEdgeR\x05\x65\x64ges\x12\x36\n\tpage_info\x18\x02 \x01(\x0b\x32\x19.datanode.api.v2.PageInfoR\x08pageInfo"V\n\x16ListStopOrdersResponse\x12<\n\x06orders\x18\x01 \x01(\x0b\x32$.datanode.api.v2.StopOrderConnectionR\x06orders"\xa3\x01\n\x14ListPositionsRequest\x12\x19\n\x08party_id\x18\x01 \x01(\tR\x07partyId\x12\x1b\n\tmarket_id\x18\x02 \x01(\tR\x08marketId\x12@\n\npagination\x18\x03 \x01(\x0b\x32\x1b.datanode.api.v2.PaginationH\x00R\npagination\x88\x01\x01:\x02\x18\x01\x42\r\n\x0b_pagination"^\n\x15ListPositionsResponse\x12\x41\n\tpositions\x18\x01 \x01(\x0b\x32#.datanode.api.v2.PositionConnectionR\tpositions:\x02\x18\x01"M\n\x0fPositionsFilter\x12\x1b\n\tparty_ids\x18\x01 \x03(\tR\x08partyIds\x12\x1d\n\nmarket_ids\x18\x02 \x03(\tR\tmarketIds"\xa4\x01\n\x17ListAllPositionsRequest\x12\x38\n\x06\x66ilter\x18\x01 \x01(\x0b\x32 .datanode.api.v2.PositionsFilterR\x06\x66ilter\x12@\n\npagination\x18\x02 \x01(\x0b\x32\x1b.datanode.api.v2.PaginationH\x00R\npagination\x88\x01\x01\x42\r\n\x0b_pagination"]\n\x18ListAllPositionsResponse\x12\x41\n\tpositions\x18\x01 \x01(\x0b\x32#.datanode.api.v2.PositionConnectionR\tpositions"J\n\x0cPositionEdge\x12"\n\x04node\x18\x01 \x01(\x0b\x32\x0e.vega.PositionR\x04node\x12\x16\n\x06\x63ursor\x18\x02 \x01(\tR\x06\x63ursor"\x81\x01\n\x12PositionConnection\x12\x33\n\x05\x65\x64ges\x18\x01 \x03(\x0b\x32\x1d.datanode.api.v2.PositionEdgeR\x05\x65\x64ges\x12\x36\n\tpage_info\x18\x02 \x01(\x0b\x32\x19.datanode.api.v2.PageInfoR\x08pageInfo"v\n\x17ObservePositionsRequest\x12\x1e\n\x08party_id\x18\x01 \x01(\tH\x00R\x07partyId\x88\x01\x01\x12 \n\tmarket_id\x18\x02 \x01(\tH\x01R\x08marketId\x88\x01\x01\x42\x0b\n\t_party_idB\x0c\n\n_market_id"\xa9\x01\n\x18ObservePositionsResponse\x12\x43\n\x08snapshot\x18\x01 \x01(\x0b\x32%.datanode.api.v2.PositionSnapshotPageH\x00R\x08snapshot\x12<\n\x07updates\x18\x02 \x01(\x0b\x32 .datanode.api.v2.PositionUpdatesH\x00R\x07updatesB\n\n\x08response"a\n\x14PositionSnapshotPage\x12,\n\tpositions\x18\x01 \x03(\x0b\x32\x0e.vega.PositionR\tpositions\x12\x1b\n\tlast_page\x18\x02 \x01(\x08R\x08lastPage"?\n\x0fPositionUpdates\x12,\n\tpositions\x18\x01 \x03(\x0b\x32\x0e.vega.PositionR\tpositions"\xa3\x02\n\x11LedgerEntryFilter\x12\x37\n\x18\x63lose_on_account_filters\x18\x01 \x01(\x08R\x15\x63loseOnAccountFilters\x12N\n\x13\x66rom_account_filter\x18\x02 \x01(\x0b\x32\x1e.datanode.api.v2.AccountFilterR\x11\x66romAccountFilter\x12J\n\x11to_account_filter\x18\x03 \x01(\x0b\x32\x1e.datanode.api.v2.AccountFilterR\x0ftoAccountFilter\x12\x39\n\x0etransfer_types\x18\x05 \x03(\x0e\x32\x12.vega.TransferTypeR\rtransferTypes"\xd9\x05\n\x15\x41ggregatedLedgerEntry\x12\x1c\n\ttimestamp\x18\x02 \x01(\x03R\ttimestamp\x12\x1a\n\x08quantity\x18\x03 \x01(\tR\x08quantity\x12\x37\n\rtransfer_type\x18\x04 \x01(\x0e\x32\x12.vega.TransferTypeR\x0ctransferType\x12\x1e\n\x08\x61sset_id\x18\x05 \x01(\tH\x00R\x07\x61ssetId\x88\x01\x01\x12=\n\x11\x66rom_account_type\x18\x06 \x01(\x0e\x32\x11.vega.AccountTypeR\x0f\x66romAccountType\x12\x39\n\x0fto_account_type\x18\x07 \x01(\x0e\x32\x11.vega.AccountTypeR\rtoAccountType\x12\x36\n\x15\x66rom_account_party_id\x18\x08 \x01(\tH\x01R\x12\x66romAccountPartyId\x88\x01\x01\x12\x32\n\x13to_account_party_id\x18\t \x01(\tH\x02R\x10toAccountPartyId\x88\x01\x01\x12\x38\n\x16\x66rom_account_market_id\x18\n \x01(\tH\x03R\x13\x66romAccountMarketId\x88\x01\x01\x12\x34\n\x14to_account_market_id\x18\x0b \x01(\tH\x04R\x11toAccountMarketId\x88\x01\x01\x12\x30\n\x14\x66rom_account_balance\x18\x0c \x01(\tR\x12\x66romAccountBalance\x12,\n\x12to_account_balance\x18\r \x01(\tR\x10toAccountBalanceB\x0b\n\t_asset_idB\x18\n\x16_from_account_party_idB\x16\n\x14_to_account_party_idB\x19\n\x17_from_account_market_idB\x17\n\x15_to_account_market_idJ\x04\x08\x01\x10\x02"\xf6\x01\n\x18ListLedgerEntriesRequest\x12:\n\x06\x66ilter\x18\x01 \x01(\x0b\x32".datanode.api.v2.LedgerEntryFilterR\x06\x66ilter\x12@\n\npagination\x18\x02 \x01(\x0b\x32\x1b.datanode.api.v2.PaginationH\x00R\npagination\x88\x01\x01\x12>\n\ndate_range\x18\x03 \x01(\x0b\x32\x1a.datanode.api.v2.DateRangeH\x01R\tdateRange\x88\x01\x01\x42\r\n\x0b_paginationB\r\n\x0b_date_range"\xb9\x01\n\x1a\x45xportLedgerEntriesRequest\x12\x1f\n\x08party_id\x18\x01 \x01(\tB\x04\xe2\x41\x01\x02R\x07partyId\x12\x1e\n\x08\x61sset_id\x18\x02 \x01(\tH\x00R\x07\x61ssetId\x88\x01\x01\x12>\n\ndate_range\x18\x04 \x01(\x0b\x32\x1a.datanode.api.v2.DateRangeH\x01R\tdateRange\x88\x01\x01\x42\x0b\n\t_asset_idB\r\n\x0b_date_range"v\n\x19ListLedgerEntriesResponse\x12Y\n\x0eledger_entries\x18\x01 \x01(\x0b\x32\x32.datanode.api.v2.AggregatedLedgerEntriesConnectionR\rledgerEntries"q\n\x1b\x41ggregatedLedgerEntriesEdge\x12:\n\x04node\x18\x01 \x01(\x0b\x32&.datanode.api.v2.AggregatedLedgerEntryR\x04node\x12\x16\n\x06\x63ursor\x18\x02 \x01(\tR\x06\x63ursor"\x9f\x01\n!AggregatedLedgerEntriesConnection\x12\x42\n\x05\x65\x64ges\x18\x01 \x03(\x0b\x32,.datanode.api.v2.AggregatedLedgerEntriesEdgeR\x05\x65\x64ges\x12\x36\n\tpage_info\x18\x02 \x01(\x0b\x32\x19.datanode.api.v2.PageInfoR\x08pageInfo"\xf3\x01\n\x19ListBalanceChangesRequest\x12\x36\n\x06\x66ilter\x18\x01 \x01(\x0b\x32\x1e.datanode.api.v2.AccountFilterR\x06\x66ilter\x12@\n\npagination\x18\x05 \x01(\x0b\x32\x1b.datanode.api.v2.PaginationH\x00R\npagination\x88\x01\x01\x12>\n\ndate_range\x18\x06 \x01(\x0b\x32\x1a.datanode.api.v2.DateRangeH\x01R\tdateRange\x88\x01\x01\x42\r\n\x0b_paginationB\r\n\x0b_date_range"f\n\x1aListBalanceChangesResponse\x12H\n\x08\x62\x61lances\x18\x01 \x01(\x0b\x32,.datanode.api.v2.AggregatedBalanceConnectionR\x08\x62\x61lances"\xac\x02\n\x18GetBalanceHistoryRequest\x12\x36\n\x06\x66ilter\x18\x01 \x01(\x0b\x32\x1e.datanode.api.v2.AccountFilterR\x06\x66ilter\x12\x38\n\x08group_by\x18\x02 \x03(\x0e\x32\x1d.datanode.api.v2.AccountFieldR\x07groupBy\x12@\n\npagination\x18\x03 \x01(\x0b\x32\x1b.datanode.api.v2.PaginationH\x00R\npagination\x88\x01\x01\x12>\n\ndate_range\x18\x04 \x01(\x0b\x32\x1a.datanode.api.v2.DateRangeH\x01R\tdateRange\x88\x01\x01\x42\r\n\x0b_paginationB\r\n\x0b_date_range"e\n\x19GetBalanceHistoryResponse\x12H\n\x08\x62\x61lances\x18\x01 \x01(\x0b\x32,.datanode.api.v2.AggregatedBalanceConnectionR\x08\x62\x61lances"g\n\x15\x41ggregatedBalanceEdge\x12\x36\n\x04node\x18\x01 \x01(\x0b\x32".datanode.api.v2.AggregatedBalanceR\x04node\x12\x16\n\x06\x63ursor\x18\x02 \x01(\tR\x06\x63ursor"\x93\x01\n\x1b\x41ggregatedBalanceConnection\x12<\n\x05\x65\x64ges\x18\x01 \x03(\x0b\x32&.datanode.api.v2.AggregatedBalanceEdgeR\x05\x65\x64ges\x12\x36\n\tpage_info\x18\x02 \x01(\x0b\x32\x19.datanode.api.v2.PageInfoR\x08pageInfo"\x9e\x01\n\rAccountFilter\x12\x19\n\x08\x61sset_id\x18\x01 \x01(\tR\x07\x61ssetId\x12\x1b\n\tparty_ids\x18\x02 \x03(\tR\x08partyIds\x12\x1d\n\nmarket_ids\x18\x03 \x03(\tR\tmarketIds\x12\x36\n\raccount_types\x18\x04 \x03(\x0e\x32\x11.vega.AccountTypeR\x0c\x61\x63\x63ountTypes"\xa1\x02\n\x11\x41ggregatedBalance\x12\x1c\n\ttimestamp\x18\x01 \x01(\x03R\ttimestamp\x12\x18\n\x07\x62\x61lance\x18\x02 \x01(\tR\x07\x62\x61lance\x12\x1e\n\x08party_id\x18\x04 \x01(\tH\x00R\x07partyId\x88\x01\x01\x12\x1e\n\x08\x61sset_id\x18\x05 \x01(\tH\x01R\x07\x61ssetId\x88\x01\x01\x12 \n\tmarket_id\x18\x06 \x01(\tH\x02R\x08marketId\x88\x01\x01\x12\x39\n\x0c\x61\x63\x63ount_type\x18\x07 \x01(\x0e\x32\x11.vega.AccountTypeH\x03R\x0b\x61\x63\x63ountType\x88\x01\x01\x42\x0b\n\t_party_idB\x0b\n\t_asset_idB\x0c\n\n_market_idB\x0f\n\r_account_type";\n\x1aObserveMarketsDepthRequest\x12\x1d\n\nmarket_ids\x18\x01 \x03(\tR\tmarketIds"S\n\x1bObserveMarketsDepthResponse\x12\x34\n\x0cmarket_depth\x18\x01 \x03(\x0b\x32\x11.vega.MarketDepthR\x0bmarketDepth"B\n!ObserveMarketsDepthUpdatesRequest\x12\x1d\n\nmarket_ids\x18\x01 \x03(\tR\tmarketIds"U\n"ObserveMarketsDepthUpdatesResponse\x12/\n\x06update\x18\x01 \x03(\x0b\x32\x17.vega.MarketDepthUpdateR\x06update":\n\x19ObserveMarketsDataRequest\x12\x1d\n\nmarket_ids\x18\x01 \x03(\tR\tmarketIds"O\n\x1aObserveMarketsDataResponse\x12\x31\n\x0bmarket_data\x18\x01 \x03(\x0b\x32\x10.vega.MarketDataR\nmarketData"p\n\x1bGetLatestMarketDepthRequest\x12!\n\tmarket_id\x18\x01 \x01(\tB\x04\xe2\x41\x01\x02R\x08marketId\x12 \n\tmax_depth\x18\x02 \x01(\x04H\x00R\x08maxDepth\x88\x01\x01\x42\x0c\n\n_max_depth"\xda\x01\n\x1cGetLatestMarketDepthResponse\x12\x1b\n\tmarket_id\x18\x01 \x01(\tR\x08marketId\x12"\n\x03\x62uy\x18\x02 \x03(\x0b\x32\x10.vega.PriceLevelR\x03\x62uy\x12$\n\x04sell\x18\x03 \x03(\x0b\x32\x10.vega.PriceLevelR\x04sell\x12*\n\nlast_trade\x18\x04 \x01(\x0b\x32\x0b.vega.TradeR\tlastTrade\x12\'\n\x0fsequence_number\x18\x05 \x01(\x04R\x0esequenceNumber"\x1d\n\x1bListLatestMarketDataRequest"S\n\x1cListLatestMarketDataResponse\x12\x33\n\x0cmarkets_data\x18\x01 \x03(\x0b\x32\x10.vega.MarketDataR\x0bmarketsData"?\n\x1aGetLatestMarketDataRequest\x12!\n\tmarket_id\x18\x01 \x01(\tB\x04\xe2\x41\x01\x02R\x08marketId"P\n\x1bGetLatestMarketDataResponse\x12\x31\n\x0bmarket_data\x18\x01 \x01(\x0b\x32\x10.vega.MarketDataR\nmarketData"\x99\x02\n\x1fGetMarketDataHistoryByIDRequest\x12!\n\tmarket_id\x18\x01 \x01(\tB\x04\xe2\x41\x01\x02R\x08marketId\x12,\n\x0fstart_timestamp\x18\x02 \x01(\x03H\x00R\x0estartTimestamp\x88\x01\x01\x12(\n\rend_timestamp\x18\x03 \x01(\x03H\x01R\x0c\x65ndTimestamp\x88\x01\x01\x12@\n\npagination\x18\x04 \x01(\x0b\x32\x1b.datanode.api.v2.PaginationH\x02R\npagination\x88\x01\x01\x42\x12\n\x10_start_timestampB\x10\n\x0e_end_timestampB\r\n\x0b_paginationJ\x04\x08\x05\x10\x06"j\n GetMarketDataHistoryByIDResponse\x12\x46\n\x0bmarket_data\x18\x01 \x01(\x0b\x32%.datanode.api.v2.MarketDataConnectionR\nmarketData"N\n\x0eMarketDataEdge\x12$\n\x04node\x18\x01 \x01(\x0b\x32\x10.vega.MarketDataR\x04node\x12\x16\n\x06\x63ursor\x18\x02 \x01(\tR\x06\x63ursor"\x85\x01\n\x14MarketDataConnection\x12\x35\n\x05\x65\x64ges\x18\x01 \x03(\x0b\x32\x1f.datanode.api.v2.MarketDataEdgeR\x05\x65\x64ges\x12\x36\n\tpage_info\x18\x02 \x01(\x0b\x32\x19.datanode.api.v2.PageInfoR\x08pageInfo"\xd1\x01\n\x14ListTransfersRequest\x12\x1b\n\x06pubkey\x18\x01 \x01(\tH\x00R\x06pubkey\x88\x01\x01\x12@\n\tdirection\x18\x02 \x01(\x0e\x32".datanode.api.v2.TransferDirectionR\tdirection\x12@\n\npagination\x18\x03 \x01(\x0b\x32\x1b.datanode.api.v2.PaginationH\x01R\npagination\x88\x01\x01\x42\t\n\x07_pubkeyB\r\n\x0b_pagination"Z\n\x15ListTransfersResponse\x12\x41\n\ttransfers\x18\x01 \x01(\x0b\x32#.datanode.api.v2.TransferConnectionR\ttransfers"T\n\x0cTransferEdge\x12,\n\x04node\x18\x01 \x01(\x0b\x32\x18.vega.events.v1.TransferR\x04node\x12\x16\n\x06\x63ursor\x18\x02 \x01(\tR\x06\x63ursor"\x81\x01\n\x12TransferConnection\x12\x33\n\x05\x65\x64ges\x18\x01 \x03(\x0b\x32\x1d.datanode.api.v2.TransferEdgeR\x05\x65\x64ges\x12\x36\n\tpage_info\x18\x02 \x01(\x0b\x32\x19.datanode.api.v2.PageInfoR\x08pageInfo";\n\x12GetTransferRequest\x12%\n\x0btransfer_id\x18\x01 \x01(\tB\x04\xe2\x41\x01\x02R\ntransferId"K\n\x13GetTransferResponse\x12\x34\n\x08transfer\x18\x01 \x01(\x0b\x32\x18.vega.events.v1.TransferR\x08transfer"\x19\n\x17GetNetworkLimitsRequest"G\n\x18GetNetworkLimitsResponse\x12+\n\x06limits\x18\x01 \x01(\x0b\x32\x13.vega.NetworkLimitsR\x06limits"?\n\x1aListCandleIntervalsRequest\x12!\n\tmarket_id\x18\x01 \x01(\tB\x04\xe2\x41\x01\x02R\x08marketId"M\n\x12IntervalToCandleId\x12\x1a\n\x08interval\x18\x01 \x01(\tR\x08interval\x12\x1b\n\tcandle_id\x18\x02 \x01(\tR\x08\x63\x61ndleId"u\n\x1bListCandleIntervalsResponse\x12V\n\x15interval_to_candle_id\x18\x01 \x03(\x0b\x32#.datanode.api.v2.IntervalToCandleIdR\x12intervalToCandleId"\xc3\x01\n\x06\x43\x61ndle\x12\x14\n\x05start\x18\x01 \x01(\x03R\x05start\x12\x1f\n\x0blast_update\x18\x02 \x01(\x03R\nlastUpdate\x12\x12\n\x04high\x18\x03 \x01(\tR\x04high\x12\x10\n\x03low\x18\x04 \x01(\tR\x03low\x12\x12\n\x04open\x18\x05 \x01(\tR\x04open\x12\x14\n\x05\x63lose\x18\x06 \x01(\tR\x05\x63lose\x12\x16\n\x06volume\x18\x07 \x01(\x04R\x06volume\x12\x1a\n\x08notional\x18\x08 \x01(\x04R\x08notional"=\n\x18ObserveCandleDataRequest\x12!\n\tcandle_id\x18\x01 \x01(\tB\x04\xe2\x41\x01\x02R\x08\x63\x61ndleId"L\n\x19ObserveCandleDataResponse\x12/\n\x06\x63\x61ndle\x18\x01 \x01(\x0b\x32\x17.datanode.api.v2.CandleR\x06\x63\x61ndle"\xdb\x01\n\x15ListCandleDataRequest\x12!\n\tcandle_id\x18\x01 \x01(\tB\x04\xe2\x41\x01\x02R\x08\x63\x61ndleId\x12%\n\x0e\x66rom_timestamp\x18\x02 \x01(\x03R\rfromTimestamp\x12!\n\x0cto_timestamp\x18\x03 \x01(\x03R\x0btoTimestamp\x12@\n\npagination\x18\x05 \x01(\x0b\x32\x1b.datanode.api.v2.PaginationH\x00R\npagination\x88\x01\x01\x42\r\n\x0b_paginationJ\x04\x08\x04\x10\x05"Y\n\x16ListCandleDataResponse\x12?\n\x07\x63\x61ndles\x18\x01 \x01(\x0b\x32%.datanode.api.v2.CandleDataConnectionR\x07\x63\x61ndles"Q\n\nCandleEdge\x12+\n\x04node\x18\x01 \x01(\x0b\x32\x17.datanode.api.v2.CandleR\x04node\x12\x16\n\x06\x63ursor\x18\x02 \x01(\tR\x06\x63ursor"\x81\x01\n\x14\x43\x61ndleDataConnection\x12\x31\n\x05\x65\x64ges\x18\x01 \x03(\x0b\x32\x1b.datanode.api.v2.CandleEdgeR\x05\x65\x64ges\x12\x36\n\tpage_info\x18\x02 \x01(\x0b\x32\x19.datanode.api.v2.PageInfoR\x08pageInfo"\xc6\x01\n\x10ListVotesRequest\x12\x1e\n\x08party_id\x18\x01 \x01(\tH\x00R\x07partyId\x88\x01\x01\x12$\n\x0bproposal_id\x18\x02 \x01(\tH\x01R\nproposalId\x88\x01\x01\x12@\n\npagination\x18\x03 \x01(\x0b\x32\x1b.datanode.api.v2.PaginationH\x02R\npagination\x88\x01\x01\x42\x0b\n\t_party_idB\x0e\n\x0c_proposal_idB\r\n\x0b_pagination"J\n\x11ListVotesResponse\x12\x35\n\x05votes\x18\x01 \x01(\x0b\x32\x1f.datanode.api.v2.VoteConnectionR\x05votes"B\n\x08VoteEdge\x12\x1e\n\x04node\x18\x01 \x01(\x0b\x32\n.vega.VoteR\x04node\x12\x16\n\x06\x63ursor\x18\x02 \x01(\tR\x06\x63ursor"y\n\x0eVoteConnection\x12/\n\x05\x65\x64ges\x18\x01 \x03(\x0b\x32\x19.datanode.api.v2.VoteEdgeR\x05\x65\x64ges\x12\x36\n\tpage_info\x18\x02 \x01(\x0b\x32\x19.datanode.api.v2.PageInfoR\x08pageInfo"x\n\x13ObserveVotesRequest\x12\x1e\n\x08party_id\x18\x01 \x01(\tH\x00R\x07partyId\x88\x01\x01\x12$\n\x0bproposal_id\x18\x02 \x01(\tH\x01R\nproposalId\x88\x01\x01\x42\x0b\n\t_party_idB\x0e\n\x0c_proposal_id"6\n\x14ObserveVotesResponse\x12\x1e\n\x04vote\x18\x01 \x01(\x0b\x32\n.vega.VoteR\x04vote"\xbd\x01\n*ListERC20MultiSigSignerAddedBundlesRequest\x12\x17\n\x07node_id\x18\x01 \x01(\tR\x06nodeId\x12\x1c\n\tsubmitter\x18\x02 \x01(\tR\tsubmitter\x12\x1b\n\tepoch_seq\x18\x03 \x01(\tR\x08\x65pochSeq\x12;\n\npagination\x18\x04 \x01(\x0b\x32\x1b.datanode.api.v2.PaginationR\npagination"|\n+ListERC20MultiSigSignerAddedBundlesResponse\x12M\n\x07\x62undles\x18\x01 \x01(\x0b\x32\x33.datanode.api.v2.ERC20MultiSigSignerAddedConnectionR\x07\x62undles"t\n\x1c\x45RC20MultiSigSignerAddedEdge\x12<\n\x04node\x18\x01 \x01(\x0b\x32(.vega.events.v1.ERC20MultiSigSignerAddedR\x04node\x12\x16\n\x06\x63ursor\x18\x02 \x01(\tR\x06\x63ursor"\x81\x01\n"ERC20MultiSigSignerAddedBundleEdge\x12\x43\n\x04node\x18\x01 \x01(\x0b\x32/.datanode.api.v2.ERC20MultiSigSignerAddedBundleR\x04node\x12\x16\n\x06\x63ursor\x18\x02 \x01(\tR\x06\x63ursor"\xa7\x01\n"ERC20MultiSigSignerAddedConnection\x12I\n\x05\x65\x64ges\x18\x01 \x03(\x0b\x32\x33.datanode.api.v2.ERC20MultiSigSignerAddedBundleEdgeR\x05\x65\x64ges\x12\x36\n\tpage_info\x18\x02 \x01(\x0b\x32\x19.datanode.api.v2.PageInfoR\x08pageInfo"\xce\x01\n\x1e\x45RC20MultiSigSignerAddedBundle\x12\x1d\n\nnew_signer\x18\x01 \x01(\tR\tnewSigner\x12\x1c\n\tsubmitter\x18\x02 \x01(\tR\tsubmitter\x12\x14\n\x05nonce\x18\x04 \x01(\tR\x05nonce\x12\x1c\n\ttimestamp\x18\x05 \x01(\x03R\ttimestamp\x12\x1e\n\nsignatures\x18\x06 \x01(\tR\nsignatures\x12\x1b\n\tepoch_seq\x18\x03 \x01(\tR\x08\x65pochSeq"\xbf\x01\n,ListERC20MultiSigSignerRemovedBundlesRequest\x12\x17\n\x07node_id\x18\x01 \x01(\tR\x06nodeId\x12\x1c\n\tsubmitter\x18\x02 \x01(\tR\tsubmitter\x12\x1b\n\tepoch_seq\x18\x03 \x01(\tR\x08\x65pochSeq\x12;\n\npagination\x18\x04 \x01(\x0b\x32\x1b.datanode.api.v2.PaginationR\npagination"\x80\x01\n-ListERC20MultiSigSignerRemovedBundlesResponse\x12O\n\x07\x62undles\x18\x01 \x01(\x0b\x32\x35.datanode.api.v2.ERC20MultiSigSignerRemovedConnectionR\x07\x62undles"x\n\x1e\x45RC20MultiSigSignerRemovedEdge\x12>\n\x04node\x18\x01 \x01(\x0b\x32*.vega.events.v1.ERC20MultiSigSignerRemovedR\x04node\x12\x16\n\x06\x63ursor\x18\x02 \x01(\tR\x06\x63ursor"\x85\x01\n$ERC20MultiSigSignerRemovedBundleEdge\x12\x45\n\x04node\x18\x01 \x01(\x0b\x32\x31.datanode.api.v2.ERC20MultiSigSignerRemovedBundleR\x04node\x12\x16\n\x06\x63ursor\x18\x02 \x01(\tR\x06\x63ursor"\xab\x01\n$ERC20MultiSigSignerRemovedConnection\x12K\n\x05\x65\x64ges\x18\x01 \x03(\x0b\x32\x35.datanode.api.v2.ERC20MultiSigSignerRemovedBundleEdgeR\x05\x65\x64ges\x12\x36\n\tpage_info\x18\x02 \x01(\x0b\x32\x19.datanode.api.v2.PageInfoR\x08pageInfo"\xd0\x01\n ERC20MultiSigSignerRemovedBundle\x12\x1d\n\nold_signer\x18\x01 \x01(\tR\toldSigner\x12\x1c\n\tsubmitter\x18\x02 \x01(\tR\tsubmitter\x12\x14\n\x05nonce\x18\x04 \x01(\tR\x05nonce\x12\x1c\n\ttimestamp\x18\x05 \x01(\x03R\ttimestamp\x12\x1e\n\nsignatures\x18\x06 \x01(\tR\nsignatures\x12\x1b\n\tepoch_seq\x18\x07 \x01(\tR\x08\x65pochSeq"A\n\x1eGetERC20ListAssetBundleRequest\x12\x1f\n\x08\x61sset_id\x18\x01 \x01(\tB\x04\xe2\x41\x01\x02R\x07\x61ssetId"\x9e\x01\n\x1fGetERC20ListAssetBundleResponse\x12!\n\x0c\x61sset_source\x18\x01 \x01(\tR\x0b\x61ssetSource\x12"\n\rvega_asset_id\x18\x02 \x01(\tR\x0bvegaAssetId\x12\x14\n\x05nonce\x18\x03 \x01(\tR\x05nonce\x12\x1e\n\nsignatures\x18\x04 \x01(\tR\nsignatures"L\n#GetERC20SetAssetLimitsBundleRequest\x12%\n\x0bproposal_id\x18\x01 \x01(\tB\x04\xe2\x41\x01\x02R\nproposalId"\xe8\x01\n$GetERC20SetAssetLimitsBundleResponse\x12!\n\x0c\x61sset_source\x18\x01 \x01(\tR\x0b\x61ssetSource\x12"\n\rvega_asset_id\x18\x02 \x01(\tR\x0bvegaAssetId\x12\x14\n\x05nonce\x18\x03 \x01(\tR\x05nonce\x12%\n\x0elifetime_limit\x18\x04 \x01(\tR\rlifetimeLimit\x12\x1c\n\tthreshold\x18\x05 \x01(\tR\tthreshold\x12\x1e\n\nsignatures\x18\x06 \x01(\tR\nsignatures"N\n!GetERC20WithdrawalApprovalRequest\x12)\n\rwithdrawal_id\x18\x01 \x01(\tB\x04\xe2\x41\x01\x02R\x0cwithdrawalId"\xde\x01\n"GetERC20WithdrawalApprovalResponse\x12!\n\x0c\x61sset_source\x18\x01 \x01(\tR\x0b\x61ssetSource\x12\x16\n\x06\x61mount\x18\x02 \x01(\tR\x06\x61mount\x12\x14\n\x05nonce\x18\x04 \x01(\tR\x05nonce\x12\x1e\n\nsignatures\x18\x05 \x01(\tR\nsignatures\x12%\n\x0etarget_address\x18\x06 \x01(\tR\rtargetAddress\x12\x1a\n\x08\x63reation\x18\x07 \x01(\x03R\x08\x63reationJ\x04\x08\x03\x10\x04"8\n\x13GetLastTradeRequest\x12!\n\tmarket_id\x18\x01 \x01(\tB\x04\xe2\x41\x01\x02R\x08marketId"9\n\x14GetLastTradeResponse\x12!\n\x05trade\x18\x01 \x01(\x0b\x32\x0b.vega.TradeR\x05trade"\x8c\x02\n\x11ListTradesRequest\x12\x1d\n\nmarket_ids\x18\x01 \x03(\tR\tmarketIds\x12\x1b\n\torder_ids\x18\x02 \x03(\tR\x08orderIds\x12\x1b\n\tparty_ids\x18\x03 \x03(\tR\x08partyIds\x12@\n\npagination\x18\x04 \x01(\x0b\x32\x1b.datanode.api.v2.PaginationH\x00R\npagination\x88\x01\x01\x12>\n\ndate_range\x18\x05 \x01(\x0b\x32\x1a.datanode.api.v2.DateRangeH\x01R\tdateRange\x88\x01\x01\x42\r\n\x0b_paginationB\r\n\x0b_date_range"N\n\x12ListTradesResponse\x12\x38\n\x06trades\x18\x01 \x01(\x0b\x32 .datanode.api.v2.TradeConnectionR\x06trades"{\n\x0fTradeConnection\x12\x30\n\x05\x65\x64ges\x18\x01 \x03(\x0b\x32\x1a.datanode.api.v2.TradeEdgeR\x05\x65\x64ges\x12\x36\n\tpage_info\x18\x02 \x01(\x0b\x32\x19.datanode.api.v2.PageInfoR\x08pageInfo"D\n\tTradeEdge\x12\x1f\n\x04node\x18\x01 \x01(\x0b\x32\x0b.vega.TradeR\x04node\x12\x16\n\x06\x63ursor\x18\x02 \x01(\tR\x06\x63ursor"R\n\x14ObserveTradesRequest\x12\x1d\n\nmarket_ids\x18\x01 \x03(\tR\tmarketIds\x12\x1b\n\tparty_ids\x18\x02 \x03(\tR\x08partyIds"<\n\x15ObserveTradesResponse\x12#\n\x06trades\x18\x01 \x03(\x0b\x32\x0b.vega.TradeR\x06trades"B\n\x14GetOracleSpecRequest\x12*\n\x0eoracle_spec_id\x18\x01 \x01(\tB\x04\xe2\x41\x01\x02R\x0coracleSpecId"J\n\x15GetOracleSpecResponse\x12\x31\n\x0boracle_spec\x18\x01 \x01(\x0b\x32\x10.vega.OracleSpecR\noracleSpec"i\n\x16ListOracleSpecsRequest\x12@\n\npagination\x18\x02 \x01(\x0b\x32\x1b.datanode.api.v2.PaginationH\x00R\npagination\x88\x01\x01\x42\r\n\x0b_pagination"d\n\x17ListOracleSpecsResponse\x12I\n\x0coracle_specs\x18\x01 \x01(\x0b\x32&.datanode.api.v2.OracleSpecsConnectionR\x0boracleSpecs"\xa6\x01\n\x15ListOracleDataRequest\x12)\n\x0eoracle_spec_id\x18\x01 \x01(\tH\x00R\x0coracleSpecId\x88\x01\x01\x12@\n\npagination\x18\x02 \x01(\x0b\x32\x1b.datanode.api.v2.PaginationH\x01R\npagination\x88\x01\x01\x42\x11\n\x0f_oracle_spec_idB\r\n\x0b_pagination"`\n\x16ListOracleDataResponse\x12\x46\n\x0boracle_data\x18\x01 \x01(\x0b\x32%.datanode.api.v2.OracleDataConnectionR\noracleData"N\n\x0eOracleSpecEdge\x12$\n\x04node\x18\x01 \x01(\x0b\x32\x10.vega.OracleSpecR\x04node\x12\x16\n\x06\x63ursor\x18\x02 \x01(\tR\x06\x63ursor"\x86\x01\n\x15OracleSpecsConnection\x12\x35\n\x05\x65\x64ges\x18\x01 \x03(\x0b\x32\x1f.datanode.api.v2.OracleSpecEdgeR\x05\x65\x64ges\x12\x36\n\tpage_info\x18\x02 \x01(\x0b\x32\x19.datanode.api.v2.PageInfoR\x08pageInfo"N\n\x0eOracleDataEdge\x12$\n\x04node\x18\x01 \x01(\x0b\x32\x10.vega.OracleDataR\x04node\x12\x16\n\x06\x63ursor\x18\x02 \x01(\tR\x06\x63ursor"\x85\x01\n\x14OracleDataConnection\x12\x35\n\x05\x65\x64ges\x18\x01 \x03(\x0b\x32\x1f.datanode.api.v2.OracleDataEdgeR\x05\x65\x64ges\x12\x36\n\tpage_info\x18\x02 \x01(\x0b\x32\x19.datanode.api.v2.PageInfoR\x08pageInfo"5\n\x10GetMarketRequest\x12!\n\tmarket_id\x18\x01 \x01(\tB\x04\xe2\x41\x01\x02R\x08marketId"9\n\x11GetMarketResponse\x12$\n\x06market\x18\x01 \x01(\x0b\x32\x0c.vega.MarketR\x06market"\xa7\x01\n\x12ListMarketsRequest\x12@\n\npagination\x18\x02 \x01(\x0b\x32\x1b.datanode.api.v2.PaginationH\x00R\npagination\x88\x01\x01\x12,\n\x0finclude_settled\x18\x03 \x01(\x08H\x01R\x0eincludeSettled\x88\x01\x01\x42\r\n\x0b_paginationB\x12\n\x10_include_settled"R\n\x13ListMarketsResponse\x12;\n\x07markets\x18\x01 \x01(\x0b\x32!.datanode.api.v2.MarketConnectionR\x07markets"F\n\nMarketEdge\x12 \n\x04node\x18\x01 \x01(\x0b\x32\x0c.vega.MarketR\x04node\x12\x16\n\x06\x63ursor\x18\x02 \x01(\tR\x06\x63ursor"}\n\x10MarketConnection\x12\x31\n\x05\x65\x64ges\x18\x01 \x03(\x0b\x32\x1b.datanode.api.v2.MarketEdgeR\x05\x65\x64ges\x12\x36\n\tpage_info\x18\x02 \x01(\x0b\x32\x19.datanode.api.v2.PageInfoR\x08pageInfo"\xaf\x01\n\x1bListSuccessorMarketsRequest\x12!\n\tmarket_id\x18\x01 \x01(\tB\x04\xe2\x41\x01\x02R\x08marketId\x12\x30\n\x14include_full_history\x18\x02 \x01(\x08R\x12includeFullHistory\x12;\n\npagination\x18\x03 \x01(\x0b\x32\x1b.datanode.api.v2.PaginationR\npagination"k\n\x0fSuccessorMarket\x12$\n\x06market\x18\x01 \x01(\x0b\x32\x0c.vega.MarketR\x06market\x12\x32\n\tproposals\x18\x02 \x03(\x0b\x32\x14.vega.GovernanceDataR\tproposals"c\n\x13SuccessorMarketEdge\x12\x34\n\x04node\x18\x01 \x01(\x0b\x32 .datanode.api.v2.SuccessorMarketR\x04node\x12\x16\n\x06\x63ursor\x18\x02 \x01(\tR\x06\x63ursor"\x8f\x01\n\x19SuccessorMarketConnection\x12:\n\x05\x65\x64ges\x18\x01 \x03(\x0b\x32$.datanode.api.v2.SuccessorMarketEdgeR\x05\x65\x64ges\x12\x36\n\tpage_info\x18\x02 \x01(\x0b\x32\x19.datanode.api.v2.PageInfoR\x08pageInfo"w\n\x1cListSuccessorMarketsResponse\x12W\n\x11successor_markets\x18\x01 \x01(\x0b\x32*.datanode.api.v2.SuccessorMarketConnectionR\x10successorMarkets"2\n\x0fGetPartyRequest\x12\x1f\n\x08party_id\x18\x01 \x01(\tB\x04\xe2\x41\x01\x02R\x07partyId"5\n\x10GetPartyResponse\x12!\n\x05party\x18\x01 \x01(\x0b\x32\x0b.vega.PartyR\x05party"l\n\x12ListPartiesRequest\x12\x19\n\x08party_id\x18\x01 \x01(\tR\x07partyId\x12;\n\npagination\x18\x02 \x01(\x0b\x32\x1b.datanode.api.v2.PaginationR\npagination"Q\n\x13ListPartiesResponse\x12:\n\x07parties\x18\x01 \x01(\x0b\x32 .datanode.api.v2.PartyConnectionR\x07parties"D\n\tPartyEdge\x12\x1f\n\x04node\x18\x01 \x01(\x0b\x32\x0b.vega.PartyR\x04node\x12\x16\n\x06\x63ursor\x18\x02 \x01(\tR\x06\x63ursor"{\n\x0fPartyConnection\x12\x30\n\x05\x65\x64ges\x18\x01 \x03(\x0b\x32\x1a.datanode.api.v2.PartyEdgeR\x05\x65\x64ges\x12\x36\n\tpage_info\x18\x02 \x01(\x0b\x32\x19.datanode.api.v2.PageInfoR\x08pageInfo"D\n\tOrderEdge\x12\x1f\n\x04node\x18\x01 \x01(\x0b\x32\x0b.vega.OrderR\x04node\x12\x16\n\x06\x63ursor\x18\x02 \x01(\tR\x06\x63ursor"\x8e\x01\n\x17ListMarginLevelsRequest\x12\x19\n\x08party_id\x18\x01 \x01(\tR\x07partyId\x12\x1b\n\tmarket_id\x18\x02 \x01(\tR\x08marketId\x12;\n\npagination\x18\x03 \x01(\x0b\x32\x1b.datanode.api.v2.PaginationR\npagination"b\n\x18ListMarginLevelsResponse\x12\x46\n\rmargin_levels\x18\x01 \x01(\x0b\x32!.datanode.api.v2.MarginConnectionR\x0cmarginLevels"g\n\x1aObserveMarginLevelsRequest\x12\x19\n\x08party_id\x18\x01 \x01(\tR\x07partyId\x12 \n\tmarket_id\x18\x02 \x01(\tH\x00R\x08marketId\x88\x01\x01\x42\x0c\n\n_market_id"V\n\x1bObserveMarginLevelsResponse\x12\x37\n\rmargin_levels\x18\x01 \x01(\x0b\x32\x12.vega.MarginLevelsR\x0cmarginLevels"{\n\x0fOrderConnection\x12\x30\n\x05\x65\x64ges\x18\x01 \x03(\x0b\x32\x1a.datanode.api.v2.OrderEdgeR\x05\x65\x64ges\x12\x36\n\tpage_info\x18\x02 \x01(\x0b\x32\x19.datanode.api.v2.PageInfoR\x08pageInfo"L\n\nMarginEdge\x12&\n\x04node\x18\x01 \x01(\x0b\x32\x12.vega.MarginLevelsR\x04node\x12\x16\n\x06\x63ursor\x18\x02 \x01(\tR\x06\x63ursor"}\n\x10MarginConnection\x12\x31\n\x05\x65\x64ges\x18\x01 \x03(\x0b\x32\x1b.datanode.api.v2.MarginEdgeR\x05\x65\x64ges\x12\x36\n\tpage_info\x18\x02 \x01(\x0b\x32\x19.datanode.api.v2.PageInfoR\x08pageInfo"\x8d\x02\n\x12ListRewardsRequest\x12\x19\n\x08party_id\x18\x01 \x01(\tR\x07partyId\x12\x1e\n\x08\x61sset_id\x18\x02 \x01(\tH\x00R\x07\x61ssetId\x88\x01\x01\x12@\n\npagination\x18\x03 \x01(\x0b\x32\x1b.datanode.api.v2.PaginationH\x01R\npagination\x88\x01\x01\x12"\n\nfrom_epoch\x18\x04 \x01(\x04H\x02R\tfromEpoch\x88\x01\x01\x12\x1e\n\x08to_epoch\x18\x05 \x01(\x04H\x03R\x07toEpoch\x88\x01\x01\x42\x0b\n\t_asset_idB\r\n\x0b_paginationB\r\n\x0b_from_epochB\x0b\n\t_to_epoch"S\n\x13ListRewardsResponse\x12<\n\x07rewards\x18\x01 \x01(\x0b\x32".datanode.api.v2.RewardsConnectionR\x07rewards"F\n\nRewardEdge\x12 \n\x04node\x18\x01 \x01(\x0b\x32\x0c.vega.RewardR\x04node\x12\x16\n\x06\x63ursor\x18\x02 \x01(\tR\x06\x63ursor"~\n\x11RewardsConnection\x12\x31\n\x05\x65\x64ges\x18\x01 \x03(\x0b\x32\x1b.datanode.api.v2.RewardEdgeR\x05\x65\x64ges\x12\x36\n\tpage_info\x18\x02 \x01(\x0b\x32\x19.datanode.api.v2.PageInfoR\x08pageInfo"\xc7\x01\n\x1aListRewardSummariesRequest\x12\x1e\n\x08party_id\x18\x01 \x01(\tH\x00R\x07partyId\x88\x01\x01\x12\x1e\n\x08\x61sset_id\x18\x02 \x01(\tH\x01R\x07\x61ssetId\x88\x01\x01\x12@\n\npagination\x18\x03 \x01(\x0b\x32\x1b.datanode.api.v2.PaginationH\x02R\npagination\x88\x01\x01\x42\x0b\n\t_party_idB\x0b\n\t_asset_idB\r\n\x0b_pagination"P\n\x1bListRewardSummariesResponse\x12\x31\n\tsummaries\x18\x01 \x03(\x0b\x32\x13.vega.RewardSummaryR\tsummaries"\xb1\x01\n\x13RewardSummaryFilter\x12\x1b\n\tasset_ids\x18\x01 \x03(\tR\x08\x61ssetIds\x12\x1d\n\nmarket_ids\x18\x02 \x03(\tR\tmarketIds\x12"\n\nfrom_epoch\x18\x03 \x01(\x04H\x00R\tfromEpoch\x88\x01\x01\x12\x1e\n\x08to_epoch\x18\x04 \x01(\x04H\x01R\x07toEpoch\x88\x01\x01\x42\r\n\x0b_from_epochB\x0b\n\t_to_epoch"\xb0\x01\n\x1fListEpochRewardSummariesRequest\x12<\n\x06\x66ilter\x18\x01 \x01(\x0b\x32$.datanode.api.v2.RewardSummaryFilterR\x06\x66ilter\x12@\n\npagination\x18\x04 \x01(\x0b\x32\x1b.datanode.api.v2.PaginationH\x00R\npagination\x88\x01\x01\x42\r\n\x0b_pagination"o\n ListEpochRewardSummariesResponse\x12K\n\tsummaries\x18\x01 \x01(\x0b\x32-.datanode.api.v2.EpochRewardSummaryConnectionR\tsummaries"\x95\x01\n\x1c\x45pochRewardSummaryConnection\x12=\n\x05\x65\x64ges\x18\x01 \x03(\x0b\x32\'.datanode.api.v2.EpochRewardSummaryEdgeR\x05\x65\x64ges\x12\x36\n\tpage_info\x18\x02 \x01(\x0b\x32\x19.datanode.api.v2.PageInfoR\x08pageInfo"^\n\x16\x45pochRewardSummaryEdge\x12,\n\x04node\x18\x01 \x01(\x0b\x32\x18.vega.EpochRewardSummaryR\x04node\x12\x16\n\x06\x63ursor\x18\x02 \x01(\tR\x06\x63ursor"q\n\x15ObserveRewardsRequest\x12\x1e\n\x08\x61sset_id\x18\x01 \x01(\tH\x00R\x07\x61ssetId\x88\x01\x01\x12\x1e\n\x08party_id\x18\x02 \x01(\tH\x01R\x07partyId\x88\x01\x01\x42\x0b\n\t_asset_idB\x0b\n\t_party_id">\n\x16ObserveRewardsResponse\x12$\n\x06reward\x18\x01 \x01(\x0b\x32\x0c.vega.RewardR\x06reward")\n\x11GetDepositRequest\x12\x14\n\x02id\x18\x01 \x01(\tB\x04\xe2\x41\x01\x02R\x02id"=\n\x12GetDepositResponse\x12\'\n\x07\x64\x65posit\x18\x01 \x01(\x0b\x32\r.vega.DepositR\x07\x64\x65posit"\xd0\x01\n\x13ListDepositsRequest\x12\x19\n\x08party_id\x18\x01 \x01(\tR\x07partyId\x12@\n\npagination\x18\x02 \x01(\x0b\x32\x1b.datanode.api.v2.PaginationH\x00R\npagination\x88\x01\x01\x12>\n\ndate_range\x18\x03 \x01(\x0b\x32\x1a.datanode.api.v2.DateRangeH\x01R\tdateRange\x88\x01\x01\x42\r\n\x0b_paginationB\r\n\x0b_date_range"W\n\x14ListDepositsResponse\x12?\n\x08\x64\x65posits\x18\x01 \x01(\x0b\x32#.datanode.api.v2.DepositsConnectionR\x08\x64\x65posits"H\n\x0b\x44\x65positEdge\x12!\n\x04node\x18\x01 \x01(\x0b\x32\r.vega.DepositR\x04node\x12\x16\n\x06\x63ursor\x18\x02 \x01(\tR\x06\x63ursor"\x80\x01\n\x12\x44\x65positsConnection\x12\x32\n\x05\x65\x64ges\x18\x01 \x03(\x0b\x32\x1c.datanode.api.v2.DepositEdgeR\x05\x65\x64ges\x12\x36\n\tpage_info\x18\x02 \x01(\x0b\x32\x19.datanode.api.v2.PageInfoR\x08pageInfo",\n\x14GetWithdrawalRequest\x12\x14\n\x02id\x18\x01 \x01(\tB\x04\xe2\x41\x01\x02R\x02id"I\n\x15GetWithdrawalResponse\x12\x30\n\nwithdrawal\x18\x01 \x01(\x0b\x32\x10.vega.WithdrawalR\nwithdrawal"\xd3\x01\n\x16ListWithdrawalsRequest\x12\x19\n\x08party_id\x18\x01 \x01(\tR\x07partyId\x12@\n\npagination\x18\x02 \x01(\x0b\x32\x1b.datanode.api.v2.PaginationH\x00R\npagination\x88\x01\x01\x12>\n\ndate_range\x18\x03 \x01(\x0b\x32\x1a.datanode.api.v2.DateRangeH\x01R\tdateRange\x88\x01\x01\x42\r\n\x0b_paginationB\r\n\x0b_date_range"c\n\x17ListWithdrawalsResponse\x12H\n\x0bwithdrawals\x18\x01 \x01(\x0b\x32&.datanode.api.v2.WithdrawalsConnectionR\x0bwithdrawals"N\n\x0eWithdrawalEdge\x12$\n\x04node\x18\x01 \x01(\x0b\x32\x10.vega.WithdrawalR\x04node\x12\x16\n\x06\x63ursor\x18\x02 \x01(\tR\x06\x63ursor"\x86\x01\n\x15WithdrawalsConnection\x12\x35\n\x05\x65\x64ges\x18\x01 \x03(\x0b\x32\x1f.datanode.api.v2.WithdrawalEdgeR\x05\x65\x64ges\x12\x36\n\tpage_info\x18\x02 \x01(\x0b\x32\x19.datanode.api.v2.PageInfoR\x08pageInfo"2\n\x0fGetAssetRequest\x12\x1f\n\x08\x61sset_id\x18\x01 \x01(\tB\x04\xe2\x41\x01\x02R\x07\x61ssetId"5\n\x10GetAssetResponse\x12!\n\x05\x61sset\x18\x01 \x01(\x0b\x32\x0b.vega.AssetR\x05\x61sset"\x91\x01\n\x11ListAssetsRequest\x12\x1e\n\x08\x61sset_id\x18\x01 \x01(\tH\x00R\x07\x61ssetId\x88\x01\x01\x12@\n\npagination\x18\x02 \x01(\x0b\x32\x1b.datanode.api.v2.PaginationH\x01R\npagination\x88\x01\x01\x42\x0b\n\t_asset_idB\r\n\x0b_pagination"O\n\x12ListAssetsResponse\x12\x39\n\x06\x61ssets\x18\x01 \x01(\x0b\x32!.datanode.api.v2.AssetsConnectionR\x06\x61ssets"D\n\tAssetEdge\x12\x1f\n\x04node\x18\x01 \x01(\x0b\x32\x0b.vega.AssetR\x04node\x12\x16\n\x06\x63ursor\x18\x02 \x01(\tR\x06\x63ursor"|\n\x10\x41ssetsConnection\x12\x30\n\x05\x65\x64ges\x18\x01 \x03(\x0b\x32\x1a.datanode.api.v2.AssetEdgeR\x05\x65\x64ges\x12\x36\n\tpage_info\x18\x02 \x01(\x0b\x32\x19.datanode.api.v2.PageInfoR\x08pageInfo"\xa1\x02\n\x1eListLiquidityProvisionsRequest\x12 \n\tmarket_id\x18\x01 \x01(\tH\x00R\x08marketId\x88\x01\x01\x12\x1e\n\x08party_id\x18\x02 \x01(\tH\x01R\x07partyId\x88\x01\x01\x12!\n\treference\x18\x03 \x01(\tH\x02R\treference\x88\x01\x01\x12\x17\n\x04live\x18\x04 \x01(\x08H\x03R\x04live\x88\x01\x01\x12@\n\npagination\x18\x05 \x01(\x0b\x32\x1b.datanode.api.v2.PaginationH\x04R\npagination\x88\x01\x01\x42\x0c\n\n_market_idB\x0b\n\t_party_idB\x0c\n\n_referenceB\x07\n\x05_liveB\r\n\x0b_pagination"\x84\x01\n\x1fListLiquidityProvisionsResponse\x12\x61\n\x14liquidity_provisions\x18\x01 \x01(\x0b\x32..datanode.api.v2.LiquidityProvisionsConnectionR\x13liquidityProvisions"_\n\x17LiquidityProvisionsEdge\x12,\n\x04node\x18\x01 \x01(\x0b\x32\x18.vega.LiquidityProvisionR\x04node\x12\x16\n\x06\x63ursor\x18\x02 \x01(\tR\x06\x63ursor"\x97\x01\n\x1dLiquidityProvisionsConnection\x12>\n\x05\x65\x64ges\x18\x01 \x03(\x0b\x32(.datanode.api.v2.LiquidityProvisionsEdgeR\x05\x65\x64ges\x12\x36\n\tpage_info\x18\x02 \x01(\x0b\x32\x19.datanode.api.v2.PageInfoR\x08pageInfo"\x80\x01\n!ObserveLiquidityProvisionsRequest\x12 \n\tmarket_id\x18\x01 \x01(\tH\x00R\x08marketId\x88\x01\x01\x12\x1e\n\x08party_id\x18\x02 \x01(\tH\x01R\x07partyId\x88\x01\x01\x42\x0c\n\n_market_idB\x0b\n\t_party_id"q\n"ObserveLiquidityProvisionsResponse\x12K\n\x14liquidity_provisions\x18\x01 \x03(\x0b\x32\x18.vega.LiquidityProvisionR\x13liquidityProvisions"\xcd\x01\n\x1dListLiquidityProvidersRequest\x12 \n\tmarket_id\x18\x01 \x01(\tH\x00R\x08marketId\x88\x01\x01\x12\x1e\n\x08party_id\x18\x02 \x01(\tH\x01R\x07partyId\x88\x01\x01\x12@\n\npagination\x18\x03 \x01(\x0b\x32\x1b.datanode.api.v2.PaginationH\x02R\npagination\x88\x01\x01\x42\x0c\n\n_market_idB\x0b\n\t_party_idB\r\n\x0b_pagination"\xb7\x01\n\x11LiquidityProvider\x12\x19\n\x08party_id\x18\x01 \x01(\tR\x07partyId\x12\x1b\n\tmarket_id\x18\x02 \x01(\tR\x08marketId\x12<\n\tfee_share\x18\x03 \x01(\x0b\x32\x1f.vega.LiquidityProviderFeeShareR\x08\x66\x65\x65Share\x12,\n\x03sla\x18\x04 \x01(\x0b\x32\x1a.vega.LiquidityProviderSLAR\x03sla"g\n\x15LiquidityProviderEdge\x12\x36\n\x04node\x18\x01 \x01(\x0b\x32".datanode.api.v2.LiquidityProviderR\x04node\x12\x16\n\x06\x63ursor\x18\x02 \x01(\tR\x06\x63ursor"\x93\x01\n\x1bLiquidityProviderConnection\x12<\n\x05\x65\x64ges\x18\x01 \x03(\x0b\x32&.datanode.api.v2.LiquidityProviderEdgeR\x05\x65\x64ges\x12\x36\n\tpage_info\x18\x02 \x01(\x0b\x32\x19.datanode.api.v2.PageInfoR\x08pageInfo"\x7f\n\x1eListLiquidityProvidersResponse\x12]\n\x13liquidity_providers\x18\x01 \x01(\x0b\x32,.datanode.api.v2.LiquidityProviderConnectionR\x12liquidityProviders"\x81\x01\n\x18GetGovernanceDataRequest\x12$\n\x0bproposal_id\x18\x01 \x01(\tH\x00R\nproposalId\x88\x01\x01\x12!\n\treference\x18\x02 \x01(\tH\x01R\treference\x88\x01\x01\x42\x0e\n\x0c_proposal_idB\x0c\n\n_reference"E\n\x19GetGovernanceDataResponse\x12(\n\x04\x64\x61ta\x18\x01 \x01(\x0b\x32\x14.vega.GovernanceDataR\x04\x64\x61ta"\xcb\x06\n\x19ListGovernanceDataRequest\x12@\n\x0eproposal_state\x18\x01 \x01(\x0e\x32\x14.vega.Proposal.StateH\x00R\rproposalState\x88\x01\x01\x12Y\n\rproposal_type\x18\x02 \x01(\x0e\x32/.datanode.api.v2.ListGovernanceDataRequest.TypeH\x01R\x0cproposalType\x88\x01\x01\x12/\n\x11proposer_party_id\x18\x03 \x01(\tH\x02R\x0fproposerPartyId\x88\x01\x01\x12\x32\n\x12proposal_reference\x18\x04 \x01(\tH\x03R\x11proposalReference\x88\x01\x01\x12@\n\npagination\x18\x05 \x01(\x0b\x32\x1b.datanode.api.v2.PaginationH\x04R\npagination\x88\x01\x01"\x88\x03\n\x04Type\x12\x14\n\x10TYPE_UNSPECIFIED\x10\x00\x12\x0c\n\x08TYPE_ALL\x10\x01\x12\x13\n\x0fTYPE_NEW_MARKET\x10\x02\x12\x16\n\x12TYPE_UPDATE_MARKET\x10\x03\x12\x1b\n\x17TYPE_NETWORK_PARAMETERS\x10\x04\x12\x12\n\x0eTYPE_NEW_ASSET\x10\x05\x12\x16\n\x12TYPE_NEW_FREE_FORM\x10\x06\x12\x15\n\x11TYPE_UPDATE_ASSET\x10\x07\x12\x18\n\x14TYPE_NEW_SPOT_MARKET\x10\x08\x12\x1b\n\x17TYPE_UPDATE_SPOT_MARKET\x10\t\x12\x15\n\x11TYPE_NEW_TRANSFER\x10\n\x12\x18\n\x14TYPE_CANCEL_TRANSFER\x10\x0b\x12\x1c\n\x18TYPE_UPDATE_MARKET_STATE\x10\x0c\x12 \n\x1cTYPE_UPDATE_REFERRAL_PROGRAM\x10\r\x12\'\n#TYPE_UPDATE_VOLUME_DISCOUNT_PROGRAM\x10\x0e\x42\x11\n\x0f_proposal_stateB\x10\n\x0e_proposal_typeB\x14\n\x12_proposer_party_idB\x15\n\x13_proposal_referenceB\r\n\x0b_pagination"g\n\x1aListGovernanceDataResponse\x12I\n\nconnection\x18\x01 \x01(\x0b\x32).datanode.api.v2.GovernanceDataConnectionR\nconnection"V\n\x12GovernanceDataEdge\x12(\n\x04node\x18\x01 \x01(\x0b\x32\x14.vega.GovernanceDataR\x04node\x12\x16\n\x06\x63ursor\x18\x02 \x01(\tR\x06\x63ursor"\x8d\x01\n\x18GovernanceDataConnection\x12\x39\n\x05\x65\x64ges\x18\x01 \x03(\x0b\x32#.datanode.api.v2.GovernanceDataEdgeR\x05\x65\x64ges\x12\x36\n\tpage_info\x18\x02 \x01(\x0b\x32\x19.datanode.api.v2.PageInfoR\x08pageInfo"G\n\x18ObserveGovernanceRequest\x12\x1e\n\x08party_id\x18\x01 \x01(\tH\x00R\x07partyId\x88\x01\x01\x42\x0b\n\t_party_id"E\n\x19ObserveGovernanceResponse\x12(\n\x04\x64\x61ta\x18\x01 \x01(\x0b\x32\x14.vega.GovernanceDataR\x04\x64\x61ta"\xed\x01\n\x16ListDelegationsRequest\x12\x1e\n\x08party_id\x18\x01 \x01(\tH\x00R\x07partyId\x88\x01\x01\x12\x1c\n\x07node_id\x18\x02 \x01(\tH\x01R\x06nodeId\x88\x01\x01\x12\x1e\n\x08\x65poch_id\x18\x03 \x01(\tH\x02R\x07\x65pochId\x88\x01\x01\x12@\n\npagination\x18\x04 \x01(\x0b\x32\x1b.datanode.api.v2.PaginationH\x03R\npagination\x88\x01\x01\x42\x0b\n\t_party_idB\n\n\x08_node_idB\x0b\n\t_epoch_idB\r\n\x0b_pagination"c\n\x17ListDelegationsResponse\x12H\n\x0b\x64\x65legations\x18\x01 \x01(\x0b\x32&.datanode.api.v2.DelegationsConnectionR\x0b\x64\x65legations"N\n\x0e\x44\x65legationEdge\x12$\n\x04node\x18\x01 \x01(\x0b\x32\x10.vega.DelegationR\x04node\x12\x16\n\x06\x63ursor\x18\x02 \x01(\tR\x06\x63ursor"\x86\x01\n\x15\x44\x65legationsConnection\x12\x35\n\x05\x65\x64ges\x18\x01 \x03(\x0b\x32\x1f.datanode.api.v2.DelegationEdgeR\x05\x65\x64ges\x12\x36\n\tpage_info\x18\x02 \x01(\x0b\x32\x19.datanode.api.v2.PageInfoR\x08pageInfo"r\n\x19ObserveDelegationsRequest\x12\x1e\n\x08party_id\x18\x01 \x01(\tH\x00R\x07partyId\x88\x01\x01\x12\x1c\n\x07node_id\x18\x02 \x01(\tH\x01R\x06nodeId\x88\x01\x01\x42\x0b\n\t_party_idB\n\n\x08_node_id"N\n\x1aObserveDelegationsResponse\x12\x30\n\ndelegation\x18\x01 \x01(\x0b\x32\x10.vega.DelegationR\ndelegation"\x91\x02\n\tNodeBasic\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12\x17\n\x07pub_key\x18\x02 \x01(\tR\x06pubKey\x12\x1c\n\ntm_pub_key\x18\x03 \x01(\tR\x08tmPubKey\x12)\n\x10\x65thereum_address\x18\x04 \x01(\tR\x0f\x65thereumAddress\x12\x19\n\x08info_url\x18\x05 \x01(\tR\x07infoUrl\x12\x1a\n\x08location\x18\x06 \x01(\tR\x08location\x12(\n\x06status\x18\r \x01(\x0e\x32\x10.vega.NodeStatusR\x06status\x12\x12\n\x04name\x18\x11 \x01(\tR\x04name\x12\x1d\n\navatar_url\x18\x12 \x01(\tR\tavatarUrl"\x17\n\x15GetNetworkDataRequest"E\n\x16GetNetworkDataResponse\x12+\n\tnode_data\x18\x01 \x01(\x0b\x32\x0e.vega.NodeDataR\x08nodeData"&\n\x0eGetNodeRequest\x12\x14\n\x02id\x18\x01 \x01(\tB\x04\xe2\x41\x01\x02R\x02id"1\n\x0fGetNodeResponse\x12\x1e\n\x04node\x18\x01 \x01(\x0b\x32\n.vega.NodeR\x04node"\x93\x01\n\x10ListNodesRequest\x12 \n\tepoch_seq\x18\x01 \x01(\x04H\x00R\x08\x65pochSeq\x88\x01\x01\x12@\n\npagination\x18\x02 \x01(\x0b\x32\x1b.datanode.api.v2.PaginationH\x01R\npagination\x88\x01\x01\x42\x0c\n\n_epoch_seqB\r\n\x0b_pagination"K\n\x11ListNodesResponse\x12\x36\n\x05nodes\x18\x01 \x01(\x0b\x32 .datanode.api.v2.NodesConnectionR\x05nodes"B\n\x08NodeEdge\x12\x1e\n\x04node\x18\x01 \x01(\x0b\x32\n.vega.NodeR\x04node\x12\x16\n\x06\x63ursor\x18\x02 \x01(\tR\x06\x63ursor"z\n\x0fNodesConnection\x12/\n\x05\x65\x64ges\x18\x01 \x03(\x0b\x32\x19.datanode.api.v2.NodeEdgeR\x05\x65\x64ges\x12\x36\n\tpage_info\x18\x02 \x01(\x0b\x32\x19.datanode.api.v2.PageInfoR\x08pageInfo"\x82\x01\n\x19ListNodeSignaturesRequest\x12\x14\n\x02id\x18\x01 \x01(\tB\x04\xe2\x41\x01\x02R\x02id\x12@\n\npagination\x18\x02 \x01(\x0b\x32\x1b.datanode.api.v2.PaginationH\x00R\npagination\x88\x01\x01\x42\r\n\x0b_pagination"g\n\x1aListNodeSignaturesResponse\x12I\n\nsignatures\x18\x01 \x01(\x0b\x32).datanode.api.v2.NodeSignaturesConnectionR\nsignatures"`\n\x11NodeSignatureEdge\x12\x33\n\x04node\x18\x01 \x01(\x0b\x32\x1f.vega.commands.v1.NodeSignatureR\x04node\x12\x16\n\x06\x63ursor\x18\x02 \x01(\tR\x06\x63ursor"\x8c\x01\n\x18NodeSignaturesConnection\x12\x38\n\x05\x65\x64ges\x18\x01 \x03(\x0b\x32".datanode.api.v2.NodeSignatureEdgeR\x05\x65\x64ges\x12\x36\n\tpage_info\x18\x02 \x01(\x0b\x32\x19.datanode.api.v2.PageInfoR\x08pageInfo"R\n\x0fGetEpochRequest\x12\x13\n\x02id\x18\x01 \x01(\x04H\x00R\x02id\x88\x01\x01\x12\x19\n\x05\x62lock\x18\x02 \x01(\x04H\x01R\x05\x62lock\x88\x01\x01\x42\x05\n\x03_idB\x08\n\x06_block"5\n\x10GetEpochResponse\x12!\n\x05\x65poch\x18\x01 \x01(\x0b\x32\x0b.vega.EpochR\x05\x65poch"m\n\x12\x45stimateFeeRequest\x12!\n\tmarket_id\x18\x01 \x01(\tB\x04\xe2\x41\x01\x02R\x08marketId\x12\x1a\n\x05price\x18\x02 \x01(\tB\x04\xe2\x41\x01\x02R\x05price\x12\x18\n\x04size\x18\x03 \x01(\x04\x42\x04\xe2\x41\x01\x02R\x04size"2\n\x13\x45stimateFeeResponse\x12\x1b\n\x03\x66\x65\x65\x18\x02 \x01(\x0b\x32\t.vega.FeeR\x03\x66\x65\x65"\xe7\x01\n\x15\x45stimateMarginRequest\x12!\n\tmarket_id\x18\x01 \x01(\tB\x04\xe2\x41\x01\x02R\x08marketId\x12\x1f\n\x08party_id\x18\x02 \x01(\tB\x04\xe2\x41\x01\x02R\x07partyId\x12$\n\x04side\x18\x03 \x01(\x0e\x32\n.vega.SideB\x04\xe2\x41\x01\x02R\x04side\x12*\n\x04type\x18\x04 \x01(\x0e\x32\x10.vega.Order.TypeB\x04\xe2\x41\x01\x02R\x04type\x12\x18\n\x04size\x18\x05 \x01(\x04\x42\x04\xe2\x41\x01\x02R\x04size\x12\x1a\n\x05price\x18\x06 \x01(\tB\x04\xe2\x41\x01\x02R\x05price:\x02\x18\x01"U\n\x16\x45stimateMarginResponse\x12\x37\n\rmargin_levels\x18\x02 \x01(\x0b\x32\x12.vega.MarginLevelsR\x0cmarginLevels:\x02\x18\x01"o\n\x1cListNetworkParametersRequest\x12@\n\npagination\x18\x01 \x01(\x0b\x32\x1b.datanode.api.v2.PaginationH\x00R\npagination\x88\x01\x01\x42\r\n\x0b_pagination"{\n\x1dListNetworkParametersResponse\x12Z\n\x12network_parameters\x18\x01 \x01(\x0b\x32+.datanode.api.v2.NetworkParameterConnectionR\x11networkParameters"4\n\x1aGetNetworkParameterRequest\x12\x16\n\x03key\x18\x01 \x01(\tB\x04\xe2\x41\x01\x02R\x03key"b\n\x1bGetNetworkParameterResponse\x12\x43\n\x11network_parameter\x18\x01 \x01(\x0b\x32\x16.vega.NetworkParameterR\x10networkParameter"Z\n\x14NetworkParameterEdge\x12*\n\x04node\x18\x01 \x01(\x0b\x32\x16.vega.NetworkParameterR\x04node\x12\x16\n\x06\x63ursor\x18\x02 \x01(\tR\x06\x63ursor"\x91\x01\n\x1aNetworkParameterConnection\x12;\n\x05\x65\x64ges\x18\x01 \x03(\x0b\x32%.datanode.api.v2.NetworkParameterEdgeR\x05\x65\x64ges\x12\x36\n\tpage_info\x18\x02 \x01(\x0b\x32\x19.datanode.api.v2.PageInfoR\x08pageInfo"Z\n\nCheckpoint\x12\x12\n\x04hash\x18\x01 \x01(\tR\x04hash\x12\x1d\n\nblock_hash\x18\x02 \x01(\tR\tblockHash\x12\x19\n\x08\x61t_block\x18\x03 \x01(\x04R\x07\x61tBlock"i\n\x16ListCheckpointsRequest\x12@\n\npagination\x18\x01 \x01(\x0b\x32\x1b.datanode.api.v2.PaginationH\x00R\npagination\x88\x01\x01\x42\r\n\x0b_pagination"c\n\x17ListCheckpointsResponse\x12H\n\x0b\x63heckpoints\x18\x01 \x01(\x0b\x32&.datanode.api.v2.CheckpointsConnectionR\x0b\x63heckpoints"Y\n\x0e\x43heckpointEdge\x12/\n\x04node\x18\x01 \x01(\x0b\x32\x1b.datanode.api.v2.CheckpointR\x04node\x12\x16\n\x06\x63ursor\x18\x02 \x01(\tR\x06\x63ursor"\x86\x01\n\x15\x43heckpointsConnection\x12\x35\n\x05\x65\x64ges\x18\x01 \x03(\x0b\x32\x1f.datanode.api.v2.CheckpointEdgeR\x05\x65\x64ges\x12\x36\n\tpage_info\x18\x02 \x01(\x0b\x32\x19.datanode.api.v2.PageInfoR\x08pageInfo"\x83\x01\n\x0fGetStakeRequest\x12\x1f\n\x08party_id\x18\x01 \x01(\tB\x04\xe2\x41\x01\x02R\x07partyId\x12@\n\npagination\x18\x02 \x01(\x0b\x32\x1b.datanode.api.v2.PaginationH\x00R\npagination\x88\x01\x01\x42\r\n\x0b_pagination"\x94\x01\n\x10GetStakeResponse\x12\x36\n\x17\x63urrent_stake_available\x18\x01 \x01(\tR\x15\x63urrentStakeAvailable\x12H\n\x0estake_linkings\x18\x02 \x01(\x0b\x32!.datanode.api.v2.StakesConnectionR\rstakeLinkings"\\\n\x10StakeLinkingEdge\x12\x30\n\x04node\x18\x01 \x01(\x0b\x32\x1c.vega.events.v1.StakeLinkingR\x04node\x12\x16\n\x06\x63ursor\x18\x02 \x01(\tR\x06\x63ursor"\x83\x01\n\x10StakesConnection\x12\x37\n\x05\x65\x64ges\x18\x01 \x03(\x0b\x32!.datanode.api.v2.StakeLinkingEdgeR\x05\x65\x64ges\x12\x36\n\tpage_info\x18\x02 \x01(\x0b\x32\x19.datanode.api.v2.PageInfoR\x08pageInfo":\n\x15GetRiskFactorsRequest\x12!\n\tmarket_id\x18\x01 \x01(\tB\x04\xe2\x41\x01\x02R\x08marketId"K\n\x16GetRiskFactorsResponse\x12\x31\n\x0brisk_factor\x18\x01 \x01(\x0b\x32\x10.vega.RiskFactorR\nriskFactor"\xa1\x01\n\x16ObserveEventBusRequest\x12\x30\n\x04type\x18\x01 \x03(\x0e\x32\x1c.vega.events.v1.BusEventTypeR\x04type\x12\x1b\n\tmarket_id\x18\x02 \x01(\tR\x08marketId\x12\x19\n\x08party_id\x18\x03 \x01(\tR\x07partyId\x12\x1d\n\nbatch_size\x18\x04 \x01(\x03R\tbatchSize"K\n\x17ObserveEventBusResponse\x12\x30\n\x06\x65vents\x18\x01 \x03(\x0b\x32\x18.vega.events.v1.BusEventR\x06\x65vents"\x1f\n\x1dObserveLedgerMovementsRequest"_\n\x1eObserveLedgerMovementsResponse\x12=\n\x0fledger_movement\x18\x01 \x01(\x0b\x32\x14.vega.LedgerMovementR\x0eledgerMovement"\x94\x01\n\x17ListKeyRotationsRequest\x12\x1c\n\x07node_id\x18\x01 \x01(\tH\x00R\x06nodeId\x88\x01\x01\x12@\n\npagination\x18\x02 \x01(\x0b\x32\x1b.datanode.api.v2.PaginationH\x01R\npagination\x88\x01\x01\x42\n\n\x08_node_idB\r\n\x0b_pagination"`\n\x18ListKeyRotationsResponse\x12\x44\n\trotations\x18\x01 \x01(\x0b\x32&.datanode.api.v2.KeyRotationConnectionR\trotations"Z\n\x0fKeyRotationEdge\x12/\n\x04node\x18\x01 \x01(\x0b\x32\x1b.vega.events.v1.KeyRotationR\x04node\x12\x16\n\x06\x63ursor\x18\x02 \x01(\tR\x06\x63ursor"\x87\x01\n\x15KeyRotationConnection\x12\x36\n\x05\x65\x64ges\x18\x01 \x03(\x0b\x32 .datanode.api.v2.KeyRotationEdgeR\x05\x65\x64ges\x12\x36\n\tpage_info\x18\x02 \x01(\x0b\x32\x19.datanode.api.v2.PageInfoR\x08pageInfo"\x9c\x01\n\x1fListEthereumKeyRotationsRequest\x12\x1c\n\x07node_id\x18\x01 \x01(\tH\x00R\x06nodeId\x88\x01\x01\x12@\n\npagination\x18\x02 \x01(\x0b\x32\x1b.datanode.api.v2.PaginationH\x01R\npagination\x88\x01\x01\x42\n\n\x08_node_idB\r\n\x0b_pagination"x\n ListEthereumKeyRotationsResponse\x12T\n\rkey_rotations\x18\x01 \x01(\x0b\x32/.datanode.api.v2.EthereumKeyRotationsConnectionR\x0ckeyRotations"\x98\x01\n\x1e\x45thereumKeyRotationsConnection\x12>\n\x05\x65\x64ges\x18\x01 \x03(\x0b\x32(.datanode.api.v2.EthereumKeyRotationEdgeR\x05\x65\x64ges\x12\x36\n\tpage_info\x18\x02 \x01(\x0b\x32\x19.datanode.api.v2.PageInfoR\x08pageInfo"j\n\x17\x45thereumKeyRotationEdge\x12\x37\n\x04node\x18\x01 \x01(\x0b\x32#.vega.events.v1.EthereumKeyRotationR\x04node\x12\x16\n\x06\x63ursor\x18\x02 \x01(\tR\x06\x63ursor"\x14\n\x12GetVegaTimeRequest"3\n\x13GetVegaTimeResponse\x12\x1c\n\ttimestamp\x18\x01 \x01(\x03R\ttimestamp"\x89\x01\n\tDateRange\x12,\n\x0fstart_timestamp\x18\x01 \x01(\x03H\x00R\x0estartTimestamp\x88\x01\x01\x12(\n\rend_timestamp\x18\x02 \x01(\x03H\x01R\x0c\x65ndTimestamp\x88\x01\x01\x42\x12\n\x10_start_timestampB\x10\n\x0e_end_timestamp"!\n\x1fGetProtocolUpgradeStatusRequest"8\n GetProtocolUpgradeStatusResponse\x12\x14\n\x05ready\x18\x01 \x01(\x08R\x05ready"\x83\x02\n#ListProtocolUpgradeProposalsRequest\x12J\n\x06status\x18\x01 \x01(\x0e\x32-.vega.events.v1.ProtocolUpgradeProposalStatusH\x00R\x06status\x88\x01\x01\x12$\n\x0b\x61pproved_by\x18\x02 \x01(\tH\x01R\napprovedBy\x88\x01\x01\x12@\n\npagination\x18\x03 \x01(\x0b\x32\x1b.datanode.api.v2.PaginationH\x02R\npagination\x88\x01\x01\x42\t\n\x07_statusB\x0e\n\x0c_approved_byB\r\n\x0b_pagination"\x98\x01\n$ListProtocolUpgradeProposalsResponse\x12p\n\x1aprotocol_upgrade_proposals\x18\x01 \x01(\x0b\x32\x32.datanode.api.v2.ProtocolUpgradeProposalConnectionR\x18protocolUpgradeProposals"\x9f\x01\n!ProtocolUpgradeProposalConnection\x12\x42\n\x05\x65\x64ges\x18\x01 \x03(\x0b\x32,.datanode.api.v2.ProtocolUpgradeProposalEdgeR\x05\x65\x64ges\x12\x36\n\tpage_info\x18\x02 \x01(\x0b\x32\x19.datanode.api.v2.PageInfoR\x08pageInfo"o\n\x1bProtocolUpgradeProposalEdge\x12\x38\n\x04node\x18\x01 \x01(\x0b\x32$.vega.events.v1.ProtocolUpgradeEventR\x04node\x12\x16\n\x06\x63ursor\x18\x02 \x01(\tR\x06\x63ursor"k\n\x18ListCoreSnapshotsRequest\x12@\n\npagination\x18\x01 \x01(\x0b\x32\x1b.datanode.api.v2.PaginationH\x00R\npagination\x88\x01\x01\x42\r\n\x0b_pagination"k\n\x19ListCoreSnapshotsResponse\x12N\n\x0e\x63ore_snapshots\x18\x01 \x01(\x0b\x32\'.datanode.api.v2.CoreSnapshotConnectionR\rcoreSnapshots"\x89\x01\n\x16\x43oreSnapshotConnection\x12\x37\n\x05\x65\x64ges\x18\x01 \x03(\x0b\x32!.datanode.api.v2.CoreSnapshotEdgeR\x05\x65\x64ges\x12\x36\n\tpage_info\x18\x02 \x01(\x0b\x32\x19.datanode.api.v2.PageInfoR\x08pageInfo"`\n\x10\x43oreSnapshotEdge\x12\x34\n\x04node\x18\x01 \x01(\x0b\x32 .vega.events.v1.CoreSnapshotDataR\x04node\x12\x16\n\x06\x63ursor\x18\x02 \x01(\tR\x06\x63ursor"\x81\x02\n\x0eHistorySegment\x12\x1f\n\x0b\x66rom_height\x18\x01 \x01(\x03R\nfromHeight\x12\x1b\n\tto_height\x18\x02 \x01(\x03R\x08toHeight\x12,\n\x12history_segment_id\x18\x03 \x01(\tR\x10historySegmentId\x12=\n\x1bprevious_history_segment_id\x18\x04 \x01(\tR\x18previousHistorySegmentId\x12)\n\x10\x64\x61tabase_version\x18\x05 \x01(\x03R\x0f\x64\x61tabaseVersion\x12\x19\n\x08\x63hain_id\x18\x06 \x01(\tR\x07\x63hainId"+\n)GetMostRecentNetworkHistorySegmentRequest"\x8d\x01\n*GetMostRecentNetworkHistorySegmentResponse\x12\x39\n\x07segment\x18\x01 \x01(\x0b\x32\x1f.datanode.api.v2.HistorySegmentR\x07segment\x12$\n\x0eswarm_key_seed\x18\x02 \x01(\tR\x0cswarmKeySeed"&\n$ListAllNetworkHistorySegmentsRequest"d\n%ListAllNetworkHistorySegmentsResponse\x12;\n\x08segments\x18\x01 \x03(\x0b\x32\x1f.datanode.api.v2.HistorySegmentR\x08segments"-\n+GetActiveNetworkHistoryPeerAddressesRequest"Q\n,GetActiveNetworkHistoryPeerAddressesResponse\x12!\n\x0cip_addresses\x18\x01 \x03(\tR\x0bipAddresses" \n\x1eGetNetworkHistoryStatusRequest"\xb0\x01\n\x1fGetNetworkHistoryStatusResponse\x12!\n\x0cipfs_address\x18\x01 \x01(\tR\x0bipfsAddress\x12\x1b\n\tswarm_key\x18\x02 \x01(\tR\x08swarmKey\x12$\n\x0eswarm_key_seed\x18\x03 \x01(\tR\x0cswarmKeySeed\x12\'\n\x0f\x63onnected_peers\x18\x05 \x03(\tR\x0e\x63onnectedPeers"(\n&GetNetworkHistoryBootstrapPeersRequest"R\n\'GetNetworkHistoryBootstrapPeersResponse\x12\'\n\x0f\x62ootstrap_peers\x18\x01 \x03(\tR\x0e\x62ootstrapPeers"\x85\x01\n\x1b\x45xportNetworkHistoryRequest\x12\x1d\n\nfrom_block\x18\x01 \x01(\x03R\tfromBlock\x12\x19\n\x08to_block\x18\x02 \x01(\x03R\x07toBlock\x12,\n\x05table\x18\x03 \x01(\x0e\x32\x16.datanode.api.v2.TableR\x05table"F\n\x13ListEntitiesRequest\x12/\n\x10transaction_hash\x18\x01 \x01(\tB\x04\xe2\x41\x01\x02R\x0ftransactionHash"\xad\r\n\x14ListEntitiesResponse\x12)\n\x08\x61\x63\x63ounts\x18\x01 \x03(\x0b\x32\r.vega.AccountR\x08\x61\x63\x63ounts\x12#\n\x06orders\x18\x02 \x03(\x0b\x32\x0b.vega.OrderR\x06orders\x12,\n\tpositions\x18\x03 \x03(\x0b\x32\x0e.vega.PositionR\tpositions\x12\x38\n\x0eledger_entries\x18\x04 \x03(\x0b\x32\x11.vega.LedgerEntryR\rledgerEntries\x12H\n\x0f\x62\x61lance_changes\x18\x05 \x03(\x0b\x32\x1f.datanode.api.v2.AccountBalanceR\x0e\x62\x61lanceChanges\x12\x36\n\ttransfers\x18\x06 \x03(\x0b\x32\x18.vega.events.v1.TransferR\ttransfers\x12 \n\x05votes\x18\x07 \x03(\x0b\x32\n.vega.VoteR\x05votes\x12~\n$erc20_multi_sig_signer_added_bundles\x18\x08 \x03(\x0b\x32/.datanode.api.v2.ERC20MultiSigSignerAddedBundleR\x1f\x65rc20MultiSigSignerAddedBundles\x12\x84\x01\n&erc20_multi_sig_signer_removed_bundles\x18\t \x03(\x0b\x32\x31.datanode.api.v2.ERC20MultiSigSignerRemovedBundleR!erc20MultiSigSignerRemovedBundles\x12#\n\x06trades\x18\n \x03(\x0b\x32\x0b.vega.TradeR\x06trades\x12\x33\n\x0coracle_specs\x18\x0b \x03(\x0b\x32\x10.vega.OracleSpecR\x0boracleSpecs\x12\x31\n\x0boracle_data\x18\x0c \x03(\x0b\x32\x10.vega.OracleDataR\noracleData\x12&\n\x07markets\x18\r \x03(\x0b\x32\x0c.vega.MarketR\x07markets\x12%\n\x07parties\x18\x0e \x03(\x0b\x32\x0b.vega.PartyR\x07parties\x12\x37\n\rmargin_levels\x18\x0f \x03(\x0b\x32\x12.vega.MarginLevelsR\x0cmarginLevels\x12&\n\x07rewards\x18\x10 \x03(\x0b\x32\x0c.vega.RewardR\x07rewards\x12)\n\x08\x64\x65posits\x18\x11 \x03(\x0b\x32\r.vega.DepositR\x08\x64\x65posits\x12\x32\n\x0bwithdrawals\x18\x12 \x03(\x0b\x32\x10.vega.WithdrawalR\x0bwithdrawals\x12#\n\x06\x61ssets\x18\x13 \x03(\x0b\x32\x0b.vega.AssetR\x06\x61ssets\x12K\n\x14liquidity_provisions\x18\x14 \x03(\x0b\x32\x18.vega.LiquidityProvisionR\x13liquidityProvisions\x12,\n\tproposals\x18\x15 \x03(\x0b\x32\x0e.vega.ProposalR\tproposals\x12\x32\n\x0b\x64\x65legations\x18\x16 \x03(\x0b\x32\x10.vega.DelegationR\x0b\x64\x65legations\x12\x30\n\x05nodes\x18\x17 \x03(\x0b\x32\x1a.datanode.api.v2.NodeBasicR\x05nodes\x12H\n\x0fnode_signatures\x18\x18 \x03(\x0b\x32\x1f.vega.commands.v1.NodeSignatureR\x0enodeSignatures\x12\x45\n\x12network_parameters\x18\x19 \x03(\x0b\x32\x16.vega.NetworkParameterR\x11networkParameters\x12@\n\rkey_rotations\x18\x1a \x03(\x0b\x32\x1b.vega.events.v1.KeyRotationR\x0ckeyRotations\x12Y\n\x16\x65thereum_key_rotations\x18\x1b \x03(\x0b\x32#.vega.events.v1.EthereumKeyRotationR\x14\x65thereumKeyRotations\x12\x62\n\x1aprotocol_upgrade_proposals\x18\x1c \x03(\x0b\x32$.vega.events.v1.ProtocolUpgradeEventR\x18protocolUpgradeProposals"e\n\x1dGetPartyActivityStreakRequest\x12\x1f\n\x08party_id\x18\x01 \x01(\tB\x04\xe2\x41\x01\x02R\x07partyId\x12\x19\n\x05\x65poch\x18\x02 \x01(\x04H\x00R\x05\x65poch\x88\x01\x01\x42\x08\n\x06_epoch"n\n\x1eGetPartyActivityStreakResponse\x12L\n\x0f\x61\x63tivity_streak\x18\x01 \x01(\x0b\x32#.vega.events.v1.PartyActivityStreakR\x0e\x61\x63tivityStreak"\xac\x01\n\x0e\x46undingPayment\x12\x19\n\x08party_id\x18\x01 \x01(\tR\x07partyId\x12\x1b\n\tmarket_id\x18\x02 \x01(\tR\x08marketId\x12,\n\x12\x66unding_period_seq\x18\x03 \x01(\x04R\x10\x66undingPeriodSeq\x12\x1c\n\ttimestamp\x18\x04 \x01(\x03R\ttimestamp\x12\x16\n\x06\x61mount\x18\x05 \x01(\tR\x06\x61mount"\xbe\x01\n\x1aListFundingPaymentsRequest\x12\x1f\n\x08party_id\x18\x01 \x01(\tB\x04\xe2\x41\x01\x02R\x07partyId\x12 \n\tmarket_id\x18\x02 \x01(\tH\x00R\x08marketId\x88\x01\x01\x12@\n\npagination\x18\x03 \x01(\x0b\x32\x1b.datanode.api.v2.PaginationH\x01R\npagination\x88\x01\x01\x42\x0c\n\n_market_idB\r\n\x0b_pagination"a\n\x12\x46undingPaymentEdge\x12\x33\n\x04node\x18\x01 \x01(\x0b\x32\x1f.datanode.api.v2.FundingPaymentR\x04node\x12\x16\n\x06\x63ursor\x18\x02 \x01(\tR\x06\x63ursor"\x8d\x01\n\x18\x46undingPaymentConnection\x12\x39\n\x05\x65\x64ges\x18\x01 \x03(\x0b\x32#.datanode.api.v2.FundingPaymentEdgeR\x05\x65\x64ges\x12\x36\n\tpage_info\x18\x02 \x01(\x0b\x32\x19.datanode.api.v2.PageInfoR\x08pageInfo"s\n\x1bListFundingPaymentsResponse\x12T\n\x10\x66unding_payments\x18\x01 \x01(\x0b\x32).datanode.api.v2.FundingPaymentConnectionR\x0f\x66undingPayments"\xde\x01\n\x19ListFundingPeriodsRequest\x12!\n\tmarket_id\x18\x01 \x01(\tB\x04\xe2\x41\x01\x02R\x08marketId\x12>\n\ndate_range\x18\x02 \x01(\x0b\x32\x1a.datanode.api.v2.DateRangeH\x00R\tdateRange\x88\x01\x01\x12@\n\npagination\x18\x03 \x01(\x0b\x32\x1b.datanode.api.v2.PaginationH\x01R\npagination\x88\x01\x01\x42\r\n\x0b_date_rangeB\r\n\x0b_pagination"^\n\x11\x46undingPeriodEdge\x12\x31\n\x04node\x18\x01 \x01(\x0b\x32\x1d.vega.events.v1.FundingPeriodR\x04node\x12\x16\n\x06\x63ursor\x18\x02 \x01(\tR\x06\x63ursor"\x8b\x01\n\x17\x46undingPeriodConnection\x12\x38\n\x05\x65\x64ges\x18\x01 \x03(\x0b\x32".datanode.api.v2.FundingPeriodEdgeR\x05\x65\x64ges\x12\x36\n\tpage_info\x18\x02 \x01(\x0b\x32\x19.datanode.api.v2.PageInfoR\x08pageInfo"o\n\x1aListFundingPeriodsResponse\x12Q\n\x0f\x66unding_periods\x18\x01 \x01(\x0b\x32(.datanode.api.v2.FundingPeriodConnectionR\x0e\x66undingPeriods"\xdd\x02\n"ListFundingPeriodDataPointsRequest\x12!\n\tmarket_id\x18\x01 \x01(\tB\x04\xe2\x41\x01\x02R\x08marketId\x12>\n\ndate_range\x18\x02 \x01(\x0b\x32\x1a.datanode.api.v2.DateRangeH\x00R\tdateRange\x88\x01\x01\x12J\n\x06source\x18\x03 \x01(\x0e\x32-.vega.events.v1.FundingPeriodDataPoint.SourceH\x01R\x06source\x88\x01\x01\x12\x15\n\x03seq\x18\x04 \x01(\x04H\x02R\x03seq\x88\x01\x01\x12@\n\npagination\x18\x05 \x01(\x0b\x32\x1b.datanode.api.v2.PaginationH\x03R\npagination\x88\x01\x01\x42\r\n\x0b_date_rangeB\t\n\x07_sourceB\x06\n\x04_seqB\r\n\x0b_pagination"p\n\x1a\x46undingPeriodDataPointEdge\x12:\n\x04node\x18\x01 \x01(\x0b\x32&.vega.events.v1.FundingPeriodDataPointR\x04node\x12\x16\n\x06\x63ursor\x18\x02 \x01(\tR\x06\x63ursor"\x9d\x01\n FundingPeriodDataPointConnection\x12\x41\n\x05\x65\x64ges\x18\x01 \x03(\x0b\x32+.datanode.api.v2.FundingPeriodDataPointEdgeR\x05\x65\x64ges\x12\x36\n\tpage_info\x18\x02 \x01(\x0b\x32\x19.datanode.api.v2.PageInfoR\x08pageInfo"\x95\x01\n#ListFundingPeriodDataPointsResponse\x12n\n\x1a\x66unding_period_data_points\x18\x01 \x01(\x0b\x32\x31.datanode.api.v2.FundingPeriodDataPointConnectionR\x17\x66undingPeriodDataPoints"\r\n\x0bPingRequest"\x0e\n\x0cPingResponse"\x87\x01\n\tOrderInfo\x12\x1e\n\x04side\x18\x01 \x01(\x0e\x32\n.vega.SideR\x04side\x12\x14\n\x05price\x18\x02 \x01(\tR\x05price\x12\x1c\n\tremaining\x18\x03 \x01(\x04R\tremaining\x12&\n\x0fis_market_order\x18\x04 \x01(\x08R\risMarketOrder"\xf7\x02\n\x17\x45stimatePositionRequest\x12!\n\tmarket_id\x18\x01 \x01(\tB\x04\xe2\x41\x01\x02R\x08marketId\x12%\n\x0bopen_volume\x18\x02 \x01(\x03\x42\x04\xe2\x41\x01\x02R\nopenVolume\x12\x32\n\x06orders\x18\x03 \x03(\x0b\x32\x1a.datanode.api.v2.OrderInfoR\x06orders\x12\x36\n\x14\x63ollateral_available\x18\x04 \x01(\tH\x00R\x13\x63ollateralAvailable\x88\x01\x01\x12^\n*scale_liquidation_price_to_market_decimals\x18\x05 \x01(\x08H\x01R%scaleLiquidationPriceToMarketDecimals\x88\x01\x01\x42\x17\n\x15_collateral_availableB-\n+_scale_liquidation_price_to_market_decimals"\x9b\x01\n\x18\x45stimatePositionResponse\x12\x37\n\x06margin\x18\x01 \x01(\x0b\x32\x1f.datanode.api.v2.MarginEstimateR\x06margin\x12\x46\n\x0bliquidation\x18\x02 \x01(\x0b\x32$.datanode.api.v2.LiquidationEstimateR\x0bliquidation"t\n\x0eMarginEstimate\x12\x31\n\nworst_case\x18\x01 \x01(\x0b\x32\x12.vega.MarginLevelsR\tworstCase\x12/\n\tbest_case\x18\x02 \x01(\x0b\x32\x12.vega.MarginLevelsR\x08\x62\x65stCase"\x97\x01\n\x13LiquidationEstimate\x12@\n\nworst_case\x18\x01 \x01(\x0b\x32!.datanode.api.v2.LiquidationPriceR\tworstCase\x12>\n\tbest_case\x18\x02 \x01(\x0b\x32!.datanode.api.v2.LiquidationPriceR\x08\x62\x65stCase"\xa2\x01\n\x10LiquidationPrice\x12(\n\x10open_volume_only\x18\x01 \x01(\tR\x0eopenVolumeOnly\x12\x30\n\x14including_buy_orders\x18\x02 \x01(\tR\x12includingBuyOrders\x12\x32\n\x15including_sell_orders\x18\x03 \x01(\tR\x13includingSellOrders""\n GetCurrentReferralProgramRequest"\x7f\n!GetCurrentReferralProgramResponse\x12Z\n\x18\x63urrent_referral_program\x18\x01 \x01(\x0b\x32 .datanode.api.v2.ReferralProgramR\x16\x63urrentReferralProgram"\xb6\x02\n\x0fReferralProgram\x12\x18\n\x07version\x18\x01 \x01(\x04R\x07version\x12\x0e\n\x02id\x18\x02 \x01(\tR\x02id\x12\x36\n\rbenefit_tiers\x18\x03 \x03(\x0b\x32\x11.vega.BenefitTierR\x0c\x62\x65nefitTiers\x12\x37\n\x18\x65nd_of_program_timestamp\x18\x04 \x01(\x03R\x15\x65ndOfProgramTimestamp\x12#\n\rwindow_length\x18\x05 \x01(\x04R\x0cwindowLength\x12\x36\n\rstaking_tiers\x18\x06 \x03(\x0b\x32\x11.vega.StakingTierR\x0cstakingTiers\x12\x1e\n\x08\x65nded_at\x18\x07 \x01(\x03H\x00R\x07\x65ndedAt\x88\x01\x01\x42\x0b\n\t_ended_at"w\n\x0bReferralSet\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12\x1a\n\x08referrer\x18\x02 \x01(\tR\x08referrer\x12\x1d\n\ncreated_at\x18\x03 \x01(\x03R\tcreatedAt\x12\x1d\n\nupdated_at\x18\x04 \x01(\x03R\tupdatedAt"[\n\x0fReferralSetEdge\x12\x30\n\x04node\x18\x01 \x01(\x0b\x32\x1c.datanode.api.v2.ReferralSetR\x04node\x12\x16\n\x06\x63ursor\x18\x02 \x01(\tR\x06\x63ursor"\x87\x01\n\x15ReferralSetConnection\x12\x36\n\x05\x65\x64ges\x18\x01 \x03(\x0b\x32 .datanode.api.v2.ReferralSetEdgeR\x05\x65\x64ges\x12\x36\n\tpage_info\x18\x02 \x01(\x0b\x32\x19.datanode.api.v2.PageInfoR\x08pageInfo"\x84\x02\n\x17ListReferralSetsRequest\x12+\n\x0freferral_set_id\x18\x01 \x01(\tH\x00R\rreferralSetId\x88\x01\x01\x12@\n\npagination\x18\x02 \x01(\x0b\x32\x1b.datanode.api.v2.PaginationH\x01R\npagination\x88\x01\x01\x12\x1f\n\x08referrer\x18\x03 \x01(\tH\x02R\x08referrer\x88\x01\x01\x12\x1d\n\x07referee\x18\x04 \x01(\tH\x03R\x07referee\x88\x01\x01\x42\x12\n\x10_referral_set_idB\r\n\x0b_paginationB\x0b\n\t_referrerB\n\n\x08_referee"g\n\x18ListReferralSetsResponse\x12K\n\rreferral_sets\x18\x01 \x01(\x0b\x32&.datanode.api.v2.ReferralSetConnectionR\x0creferralSets"\x8e\x01\n\x12ReferralSetReferee\x12&\n\x0freferral_set_id\x18\x01 \x01(\tR\rreferralSetId\x12\x18\n\x07referee\x18\x02 \x01(\tR\x07referee\x12\x1b\n\tjoined_at\x18\x03 \x01(\x03R\x08joinedAt\x12\x19\n\x08\x61t_epoch\x18\x04 \x01(\x04R\x07\x61tEpoch"i\n\x16ReferralSetRefereeEdge\x12\x37\n\x04node\x18\x01 \x01(\x0b\x32#.datanode.api.v2.ReferralSetRefereeR\x04node\x12\x16\n\x06\x63ursor\x18\x02 \x01(\tR\x06\x63ursor"\x95\x01\n\x1cReferralSetRefereeConnection\x12=\n\x05\x65\x64ges\x18\x01 \x03(\x0b\x32\'.datanode.api.v2.ReferralSetRefereeEdgeR\x05\x65\x64ges\x12\x36\n\tpage_info\x18\x02 \x01(\x0b\x32\x19.datanode.api.v2.PageInfoR\x08pageInfo"\x8b\x02\n\x1eListReferralSetRefereesRequest\x12+\n\x0freferral_set_id\x18\x01 \x01(\tH\x00R\rreferralSetId\x88\x01\x01\x12@\n\npagination\x18\x02 \x01(\x0b\x32\x1b.datanode.api.v2.PaginationH\x01R\npagination\x88\x01\x01\x12\x1f\n\x08referrer\x18\x03 \x01(\tH\x02R\x08referrer\x88\x01\x01\x12\x1d\n\x07referee\x18\x04 \x01(\tH\x03R\x07referee\x88\x01\x01\x42\x12\n\x10_referral_set_idB\r\n\x0b_paginationB\x0b\n\t_referrerB\n\n\x08_referee"\x84\x01\n\x1fListReferralSetRefereesResponse\x12\x61\n\x15referral_set_referees\x18\x01 \x01(\x0b\x32-.datanode.api.v2.ReferralSetRefereeConnectionR\x13referralSetReferees"\x9c\x01\n\x1aGetReferralSetStatsRequest\x12&\n\x0freferral_set_id\x18\x01 \x01(\tR\rreferralSetId\x12\x1e\n\x08\x61t_epoch\x18\x02 \x01(\x04H\x00R\x07\x61tEpoch\x88\x01\x01\x12\x1d\n\x07referee\x18\x03 \x01(\tH\x01R\x07referee\x88\x01\x01\x42\x0b\n\t_at_epochB\n\n\x08_referee"V\n\x1bGetReferralSetStatsResponse\x12\x37\n\x05stats\x18\x01 \x01(\x0b\x32!.datanode.api.v2.ReferralSetStatsR\x05stats"\xe4\x01\n\x10ReferralSetStats\x12\x15\n\x06set_id\x18\x01 \x01(\tR\x05setId\x12\x19\n\x08\x61t_epoch\x18\x02 \x01(\x04R\x07\x61tEpoch\x12Y\n*referral_set_running_notional_taker_volume\x18\x03 \x01(\tR%referralSetRunningNotionalTakerVolume\x12\x43\n\x0ereferees_stats\x18\x04 \x03(\x0b\x32\x1c.vega.events.v1.RefereeStatsR\rrefereesStats"\x90\x02\n\x04Team\x12\x17\n\x07team_id\x18\x01 \x01(\tR\x06teamId\x12\x1a\n\x08referrer\x18\x02 \x01(\tR\x08referrer\x12\x12\n\x04name\x18\x03 \x01(\tR\x04name\x12\x1e\n\x08team_url\x18\x04 \x01(\tH\x00R\x07teamUrl\x88\x01\x01\x12"\n\navatar_url\x18\x05 \x01(\tH\x01R\tavatarUrl\x88\x01\x01\x12\x1d\n\ncreated_at\x18\x06 \x01(\x03R\tcreatedAt\x12\x16\n\x06\x63losed\x18\x07 \x01(\x08R\x06\x63losed\x12(\n\x10\x63reated_at_epoch\x18\x08 \x01(\x04R\x0e\x63reatedAtEpochB\x0b\n\t_team_urlB\r\n\x0b_avatar_url"M\n\x08TeamEdge\x12)\n\x04node\x18\x01 \x01(\x0b\x32\x15.datanode.api.v2.TeamR\x04node\x12\x16\n\x06\x63ursor\x18\x02 \x01(\tR\x06\x63ursor"y\n\x0eTeamConnection\x12/\n\x05\x65\x64ges\x18\x01 \x03(\x0b\x32\x19.datanode.api.v2.TeamEdgeR\x05\x65\x64ges\x12\x36\n\tpage_info\x18\x02 \x01(\x0b\x32\x19.datanode.api.v2.PageInfoR\x08pageInfo"\xba\x01\n\x10ListTeamsRequest\x12\x1c\n\x07team_id\x18\x01 \x01(\tH\x00R\x06teamId\x88\x01\x01\x12\x1e\n\x08party_id\x18\x02 \x01(\tH\x01R\x07partyId\x88\x01\x01\x12@\n\npagination\x18\x03 \x01(\x0b\x32\x1b.datanode.api.v2.PaginationH\x02R\npagination\x88\x01\x01\x42\n\n\x08_team_idB\x0b\n\t_party_idB\r\n\x0b_pagination"J\n\x11ListTeamsResponse\x12\x35\n\x05teams\x18\x01 \x01(\x0b\x32\x1f.datanode.api.v2.TeamConnectionR\x05teams"\x89\x01\n\x17ListTeamRefereesRequest\x12\x1d\n\x07team_id\x18\x01 \x01(\tB\x04\xe2\x41\x01\x02R\x06teamId\x12@\n\npagination\x18\x02 \x01(\x0b\x32\x1b.datanode.api.v2.PaginationH\x00R\npagination\x88\x01\x01\x42\r\n\x0b_pagination"\x85\x01\n\x0bTeamReferee\x12\x17\n\x07team_id\x18\x01 \x01(\tR\x06teamId\x12\x18\n\x07referee\x18\x02 \x01(\tR\x07referee\x12\x1b\n\tjoined_at\x18\x03 \x01(\x03R\x08joinedAt\x12&\n\x0fjoined_at_epoch\x18\x04 \x01(\x04R\rjoinedAtEpoch"[\n\x0fTeamRefereeEdge\x12\x30\n\x04node\x18\x01 \x01(\x0b\x32\x1c.datanode.api.v2.TeamRefereeR\x04node\x12\x16\n\x06\x63ursor\x18\x02 \x01(\tR\x06\x63ursor"\x87\x01\n\x15TeamRefereeConnection\x12\x36\n\x05\x65\x64ges\x18\x01 \x03(\x0b\x32 .datanode.api.v2.TeamRefereeEdgeR\x05\x65\x64ges\x12\x36\n\tpage_info\x18\x02 \x01(\x0b\x32\x19.datanode.api.v2.PageInfoR\x08pageInfo"g\n\x18ListTeamRefereesResponse\x12K\n\rteam_referees\x18\x01 \x01(\x0b\x32&.datanode.api.v2.TeamRefereeConnectionR\x0cteamReferees"r\n\x12TeamRefereeHistory\x12\x17\n\x07team_id\x18\x01 \x01(\tR\x06teamId\x12\x1b\n\tjoined_at\x18\x02 \x01(\x03R\x08joinedAt\x12&\n\x0fjoined_at_epoch\x18\x03 \x01(\x04R\rjoinedAtEpoch"i\n\x16TeamRefereeHistoryEdge\x12\x37\n\x04node\x18\x01 \x01(\x0b\x32#.datanode.api.v2.TeamRefereeHistoryR\x04node\x12\x16\n\x06\x63ursor\x18\x02 \x01(\tR\x06\x63ursor"\x95\x01\n\x1cTeamRefereeHistoryConnection\x12=\n\x05\x65\x64ges\x18\x01 \x03(\x0b\x32\'.datanode.api.v2.TeamRefereeHistoryEdgeR\x05\x65\x64ges\x12\x36\n\tpage_info\x18\x02 \x01(\x0b\x32\x19.datanode.api.v2.PageInfoR\x08pageInfo"\x90\x01\n\x1dListTeamRefereeHistoryRequest\x12\x1e\n\x07referee\x18\x01 \x01(\tB\x04\xe2\x41\x01\x02R\x07referee\x12@\n\npagination\x18\x02 \x01(\x0b\x32\x1b.datanode.api.v2.PaginationH\x00R\npagination\x88\x01\x01\x42\r\n\x0b_pagination"\x81\x01\n\x1eListTeamRefereeHistoryResponse\x12_\n\x14team_referee_history\x18\x01 \x01(\x0b\x32-.datanode.api.v2.TeamRefereeHistoryConnectionR\x12teamRefereeHistory"\xa9\x01\n\x1aGetReferralFeeStatsRequest\x12 \n\tmarket_id\x18\x01 \x01(\tH\x00R\x08marketId\x88\x01\x01\x12\x1e\n\x08\x61sset_id\x18\x02 \x01(\tH\x01R\x07\x61ssetId\x88\x01\x01\x12 \n\tepoch_seq\x18\x03 \x01(\x04H\x02R\x08\x65pochSeq\x88\x01\x01\x42\x0c\n\n_market_idB\x0b\n\t_asset_idB\x0c\n\n_epoch_seq"T\n\x1bGetReferralFeeStatsResponse\x12\x35\n\tfee_stats\x18\x01 \x01(\x0b\x32\x18.vega.events.v1.FeeStatsR\x08\x66\x65\x65Stats"(\n&GetCurrentVolumeDiscountProgramRequest"\x98\x01\n\'GetCurrentVolumeDiscountProgramResponse\x12m\n\x1f\x63urrent_volume_discount_program\x18\x01 \x01(\x0b\x32&.datanode.api.v2.VolumeDiscountProgramR\x1c\x63urrentVolumeDiscountProgram"\xca\x01\n\x1dGetVolumeDiscountStatsRequest\x12\x1e\n\x08\x61t_epoch\x18\x01 \x01(\x04H\x00R\x07\x61tEpoch\x88\x01\x01\x12\x1e\n\x08party_id\x18\x02 \x01(\tH\x01R\x07partyId\x88\x01\x01\x12@\n\npagination\x18\x03 \x01(\x0b\x32\x1b.datanode.api.v2.PaginationH\x02R\npagination\x88\x01\x01\x42\x0b\n\t_at_epochB\x0b\n\t_party_idB\r\n\x0b_pagination"f\n\x1eGetVolumeDiscountStatsResponse\x12\x44\n\x05stats\x18\x01 \x01(\x0b\x32..datanode.api.v2.VolumeDiscountStatsConnectionR\x05stats"\x97\x01\n\x1dVolumeDiscountStatsConnection\x12>\n\x05\x65\x64ges\x18\x01 \x03(\x0b\x32(.datanode.api.v2.VolumeDiscountStatsEdgeR\x05\x65\x64ges\x12\x36\n\tpage_info\x18\x02 \x01(\x0b\x32\x19.datanode.api.v2.PageInfoR\x08pageInfo"k\n\x17VolumeDiscountStatsEdge\x12\x38\n\x04node\x18\x01 \x01(\x0b\x32$.datanode.api.v2.VolumeDiscountStatsR\x04node\x12\x16\n\x06\x63ursor\x18\x02 \x01(\tR\x06\x63ursor"\x9b\x01\n\x13VolumeDiscountStats\x12\x19\n\x08\x61t_epoch\x18\x01 \x01(\x04R\x07\x61tEpoch\x12\x19\n\x08party_id\x18\x02 \x01(\tR\x07partyId\x12\'\n\x0f\x64iscount_factor\x18\x03 \x01(\tR\x0e\x64iscountFactor\x12%\n\x0erunning_volume\x18\x04 \x01(\tR\rrunningVolume"\x8a\x02\n\x15VolumeDiscountProgram\x12\x18\n\x07version\x18\x01 \x01(\x04R\x07version\x12\x0e\n\x02id\x18\x02 \x01(\tR\x02id\x12<\n\rbenefit_tiers\x18\x03 \x03(\x0b\x32\x17.vega.VolumeBenefitTierR\x0c\x62\x65nefitTiers\x12\x37\n\x18\x65nd_of_program_timestamp\x18\x04 \x01(\x03R\x15\x65ndOfProgramTimestamp\x12#\n\rwindow_length\x18\x05 \x01(\x04R\x0cwindowLength\x12\x1e\n\x08\x65nded_at\x18\x06 \x01(\x03H\x00R\x07\x65ndedAt\x88\x01\x01\x42\x0b\n\t_ended_at*\xaa\x01\n\x10LedgerEntryField\x12"\n\x1eLEDGER_ENTRY_FIELD_UNSPECIFIED\x10\x00\x12&\n"LEDGER_ENTRY_FIELD_ACCOUNT_FROM_ID\x10\x01\x12$\n LEDGER_ENTRY_FIELD_ACCOUNT_TO_ID\x10\x02\x12$\n LEDGER_ENTRY_FIELD_TRANSFER_TYPE\x10\x03*\xb0\x01\n\x0c\x41\x63\x63ountField\x12\x1d\n\x19\x41\x43\x43OUNT_FIELD_UNSPECIFIED\x10\x00\x12\x14\n\x10\x41\x43\x43OUNT_FIELD_ID\x10\x01\x12\x1a\n\x16\x41\x43\x43OUNT_FIELD_PARTY_ID\x10\x02\x12\x1a\n\x16\x41\x43\x43OUNT_FIELD_ASSET_ID\x10\x03\x12\x1b\n\x17\x41\x43\x43OUNT_FIELD_MARKET_ID\x10\x04\x12\x16\n\x12\x41\x43\x43OUNT_FIELD_TYPE\x10\x05*\xad\x01\n\x11TransferDirection\x12"\n\x1eTRANSFER_DIRECTION_UNSPECIFIED\x10\x00\x12$\n TRANSFER_DIRECTION_TRANSFER_FROM\x10\x01\x12"\n\x1eTRANSFER_DIRECTION_TRANSFER_TO\x10\x02\x12*\n&TRANSFER_DIRECTION_TRANSFER_TO_OR_FROM\x10\x03*\xde\x02\n\x05Table\x12\x15\n\x11TABLE_UNSPECIFIED\x10\x00\x12\x12\n\x0eTABLE_BALANCES\x10\x01\x12\x15\n\x11TABLE_CHECKPOINTS\x10\x02\x12\x15\n\x11TABLE_DELEGATIONS\x10\x03\x12\x10\n\x0cTABLE_LEDGER\x10\x04\x12\x10\n\x0cTABLE_ORDERS\x10\x05\x12\x10\n\x0cTABLE_TRADES\x10\x06\x12\x15\n\x11TABLE_MARKET_DATA\x10\x07\x12\x17\n\x13TABLE_MARGIN_LEVELS\x10\x08\x12\x13\n\x0fTABLE_POSITIONS\x10\t\x12\x1e\n\x1aTABLE_LIQUIDITY_PROVISIONS\x10\n\x12\x11\n\rTABLE_MARKETS\x10\x0b\x12\x12\n\x0eTABLE_DEPOSITS\x10\x0c\x12\x15\n\x11TABLE_WITHDRAWALS\x10\r\x12\x10\n\x0cTABLE_BLOCKS\x10\x0e\x12\x11\n\rTABLE_REWARDS\x10\x0f\x32\x8di\n\x12TradingDataService\x12j\n\x0cListAccounts\x12$.datanode.api.v2.ListAccountsRequest\x1a%.datanode.api.v2.ListAccountsResponse"\r\x92\x41\n\n\x08\x41\x63\x63ounts\x12u\n\x0fObserveAccounts\x12\'.datanode.api.v2.ObserveAccountsRequest\x1a(.datanode.api.v2.ObserveAccountsResponse"\r\x92\x41\n\n\x08\x41\x63\x63ounts0\x01\x12Z\n\x04Info\x12\x1c.datanode.api.v2.InfoRequest\x1a\x1d.datanode.api.v2.InfoResponse"\x15\x92\x41\x12\n\x10Node information\x12\\\n\x08GetOrder\x12 .datanode.api.v2.GetOrderRequest\x1a!.datanode.api.v2.GetOrderResponse"\x0b\x92\x41\x08\n\x06Orders\x12\x62\n\nListOrders\x12".datanode.api.v2.ListOrdersRequest\x1a#.datanode.api.v2.ListOrdersResponse"\x0b\x92\x41\x08\n\x06Orders\x12w\n\x11ListOrderVersions\x12).datanode.api.v2.ListOrderVersionsRequest\x1a*.datanode.api.v2.ListOrderVersionsResponse"\x0b\x92\x41\x08\n\x06Orders\x12m\n\rObserveOrders\x12%.datanode.api.v2.ObserveOrdersRequest\x1a&.datanode.api.v2.ObserveOrdersResponse"\x0b\x92\x41\x08\n\x06Orders0\x01\x12h\n\x0cGetStopOrder\x12$.datanode.api.v2.GetStopOrderRequest\x1a%.datanode.api.v2.GetStopOrderResponse"\x0b\x92\x41\x08\n\x06Orders\x12n\n\x0eListStopOrders\x12&.datanode.api.v2.ListStopOrdersRequest\x1a\'.datanode.api.v2.ListStopOrdersResponse"\x0b\x92\x41\x08\n\x06Orders\x12q\n\rListPositions\x12%.datanode.api.v2.ListPositionsRequest\x1a&.datanode.api.v2.ListPositionsResponse"\x11\x88\x02\x01\x92\x41\x0b\n\tPositions\x12w\n\x10ListAllPositions\x12(.datanode.api.v2.ListAllPositionsRequest\x1a).datanode.api.v2.ListAllPositionsResponse"\x0e\x92\x41\x0b\n\tPositions\x12y\n\x10ObservePositions\x12(.datanode.api.v2.ObservePositionsRequest\x1a).datanode.api.v2.ObservePositionsResponse"\x0e\x92\x41\x0b\n\tPositions0\x01\x12\x7f\n\x11ListLedgerEntries\x12).datanode.api.v2.ListLedgerEntriesRequest\x1a*.datanode.api.v2.ListLedgerEntriesResponse"\x13\x92\x41\x10\n\x0eLedger entries\x12o\n\x13\x45xportLedgerEntries\x12+.datanode.api.v2.ExportLedgerEntriesRequest\x1a\x14.google.api.HttpBody"\x13\x92\x41\x10\n\x0eLedger entries0\x01\x12|\n\x12ListBalanceChanges\x12*.datanode.api.v2.ListBalanceChangesRequest\x1a+.datanode.api.v2.ListBalanceChangesResponse"\r\x92\x41\n\n\x08\x41\x63\x63ounts\x12~\n\x13GetLatestMarketData\x12+.datanode.api.v2.GetLatestMarketDataRequest\x1a,.datanode.api.v2.GetLatestMarketDataResponse"\x0c\x92\x41\t\n\x07Markets\x12\x81\x01\n\x14ListLatestMarketData\x12,.datanode.api.v2.ListLatestMarketDataRequest\x1a-.datanode.api.v2.ListLatestMarketDataResponse"\x0c\x92\x41\t\n\x07Markets\x12\x81\x01\n\x14GetLatestMarketDepth\x12,.datanode.api.v2.GetLatestMarketDepthRequest\x1a-.datanode.api.v2.GetLatestMarketDepthResponse"\x0c\x92\x41\t\n\x07Markets\x12\x80\x01\n\x13ObserveMarketsDepth\x12+.datanode.api.v2.ObserveMarketsDepthRequest\x1a,.datanode.api.v2.ObserveMarketsDepthResponse"\x0c\x92\x41\t\n\x07Markets0\x01\x12\x95\x01\n\x1aObserveMarketsDepthUpdates\x12\x32.datanode.api.v2.ObserveMarketsDepthUpdatesRequest\x1a\x33.datanode.api.v2.ObserveMarketsDepthUpdatesResponse"\x0c\x92\x41\t\n\x07Markets0\x01\x12}\n\x12ObserveMarketsData\x12*.datanode.api.v2.ObserveMarketsDataRequest\x1a+.datanode.api.v2.ObserveMarketsDataResponse"\x0c\x92\x41\t\n\x07Markets0\x01\x12\x8d\x01\n\x18GetMarketDataHistoryByID\x12\x30.datanode.api.v2.GetMarketDataHistoryByIDRequest\x1a\x31.datanode.api.v2.GetMarketDataHistoryByIDResponse"\x0c\x92\x41\t\n\x07Markets\x12n\n\rListTransfers\x12%.datanode.api.v2.ListTransfersRequest\x1a&.datanode.api.v2.ListTransfersResponse"\x0e\x92\x41\x0b\n\tTransfers\x12h\n\x0bGetTransfer\x12#.datanode.api.v2.GetTransferRequest\x1a$.datanode.api.v2.GetTransferResponse"\x0e\x92\x41\x0b\n\tTransfers\x12u\n\x10GetNetworkLimits\x12(.datanode.api.v2.GetNetworkLimitsRequest\x1a).datanode.api.v2.GetNetworkLimitsResponse"\x0c\x92\x41\t\n\x07Network\x12o\n\x0eListCandleData\x12&.datanode.api.v2.ListCandleDataRequest\x1a\'.datanode.api.v2.ListCandleDataResponse"\x0c\x92\x41\t\n\x07\x43\x61ndles\x12z\n\x11ObserveCandleData\x12).datanode.api.v2.ObserveCandleDataRequest\x1a*.datanode.api.v2.ObserveCandleDataResponse"\x0c\x92\x41\t\n\x07\x43\x61ndles0\x01\x12~\n\x13ListCandleIntervals\x12+.datanode.api.v2.ListCandleIntervalsRequest\x1a,.datanode.api.v2.ListCandleIntervalsResponse"\x0c\x92\x41\t\n\x07\x43\x61ndles\x12\x63\n\tListVotes\x12!.datanode.api.v2.ListVotesRequest\x1a".datanode.api.v2.ListVotesResponse"\x0f\x92\x41\x0c\n\nGovernance\x12n\n\x0cObserveVotes\x12$.datanode.api.v2.ObserveVotesRequest\x1a%.datanode.api.v2.ObserveVotesResponse"\x0f\x92\x41\x0c\n\nGovernance0\x01\x12\xb3\x01\n#ListERC20MultiSigSignerAddedBundles\x12;.datanode.api.v2.ListERC20MultiSigSignerAddedBundlesRequest\x1a<.datanode.api.v2.ListERC20MultiSigSignerAddedBundlesResponse"\x11\x92\x41\x0e\n\x0c\x45RC20 bridge\x12\xb9\x01\n%ListERC20MultiSigSignerRemovedBundles\x12=.datanode.api.v2.ListERC20MultiSigSignerRemovedBundlesRequest\x1a>.datanode.api.v2.ListERC20MultiSigSignerRemovedBundlesResponse"\x11\x92\x41\x0e\n\x0c\x45RC20 bridge\x12\x8f\x01\n\x17GetERC20ListAssetBundle\x12/.datanode.api.v2.GetERC20ListAssetBundleRequest\x1a\x30.datanode.api.v2.GetERC20ListAssetBundleResponse"\x11\x92\x41\x0e\n\x0c\x45RC20 bridge\x12\x9e\x01\n\x1cGetERC20SetAssetLimitsBundle\x12\x34.datanode.api.v2.GetERC20SetAssetLimitsBundleRequest\x1a\x35.datanode.api.v2.GetERC20SetAssetLimitsBundleResponse"\x11\x92\x41\x0e\n\x0c\x45RC20 bridge\x12\x98\x01\n\x1aGetERC20WithdrawalApproval\x12\x32.datanode.api.v2.GetERC20WithdrawalApprovalRequest\x1a\x33.datanode.api.v2.GetERC20WithdrawalApprovalResponse"\x11\x92\x41\x0e\n\x0c\x45RC20 bridge\x12h\n\x0cGetLastTrade\x12$.datanode.api.v2.GetLastTradeRequest\x1a%.datanode.api.v2.GetLastTradeResponse"\x0b\x92\x41\x08\n\x06Trades\x12\x62\n\nListTrades\x12".datanode.api.v2.ListTradesRequest\x1a#.datanode.api.v2.ListTradesResponse"\x0b\x92\x41\x08\n\x06Trades\x12m\n\rObserveTrades\x12%.datanode.api.v2.ObserveTradesRequest\x1a&.datanode.api.v2.ObserveTradesResponse"\x0b\x92\x41\x08\n\x06Trades0\x01\x12q\n\rGetOracleSpec\x12%.datanode.api.v2.GetOracleSpecRequest\x1a&.datanode.api.v2.GetOracleSpecResponse"\x11\x92\x41\x0e\n\x0c\x44\x61ta sources\x12w\n\x0fListOracleSpecs\x12\'.datanode.api.v2.ListOracleSpecsRequest\x1a(.datanode.api.v2.ListOracleSpecsResponse"\x11\x92\x41\x0e\n\x0c\x44\x61ta sources\x12t\n\x0eListOracleData\x12&.datanode.api.v2.ListOracleDataRequest\x1a\'.datanode.api.v2.ListOracleDataResponse"\x11\x92\x41\x0e\n\x0c\x44\x61ta sources\x12`\n\tGetMarket\x12!.datanode.api.v2.GetMarketRequest\x1a".datanode.api.v2.GetMarketResponse"\x0c\x92\x41\t\n\x07Markets\x12\x66\n\x0bListMarkets\x12#.datanode.api.v2.ListMarketsRequest\x1a$.datanode.api.v2.ListMarketsResponse"\x0c\x92\x41\t\n\x07Markets\x12\x81\x01\n\x14ListSuccessorMarkets\x12,.datanode.api.v2.ListSuccessorMarketsRequest\x1a-.datanode.api.v2.ListSuccessorMarketsResponse"\x0c\x92\x41\t\n\x07Markets\x12]\n\x08GetParty\x12 .datanode.api.v2.GetPartyRequest\x1a!.datanode.api.v2.GetPartyResponse"\x0c\x92\x41\t\n\x07Parties\x12\x66\n\x0bListParties\x12#.datanode.api.v2.ListPartiesRequest\x1a$.datanode.api.v2.ListPartiesResponse"\x0c\x92\x41\t\n\x07Parties\x12{\n\x10ListMarginLevels\x12(.datanode.api.v2.ListMarginLevelsRequest\x1a).datanode.api.v2.ListMarginLevelsResponse"\x12\x92\x41\x0f\n\rMargin levels\x12\x86\x01\n\x13ObserveMarginLevels\x12+.datanode.api.v2.ObserveMarginLevelsRequest\x1a,.datanode.api.v2.ObserveMarginLevelsResponse"\x12\x92\x41\x0f\n\rMargin levels0\x01\x12\x66\n\x0bListRewards\x12#.datanode.api.v2.ListRewardsRequest\x1a$.datanode.api.v2.ListRewardsResponse"\x0c\x92\x41\t\n\x07Rewards\x12~\n\x13ListRewardSummaries\x12+.datanode.api.v2.ListRewardSummariesRequest\x1a,.datanode.api.v2.ListRewardSummariesResponse"\x0c\x92\x41\t\n\x07Rewards\x12\x8d\x01\n\x18ListEpochRewardSummaries\x12\x30.datanode.api.v2.ListEpochRewardSummariesRequest\x1a\x31.datanode.api.v2.ListEpochRewardSummariesResponse"\x0c\x92\x41\t\n\x07Rewards\x12\x62\n\nGetDeposit\x12".datanode.api.v2.GetDepositRequest\x1a#.datanode.api.v2.GetDepositResponse"\x0b\x92\x41\x08\n\x06\x41ssets\x12h\n\x0cListDeposits\x12$.datanode.api.v2.ListDepositsRequest\x1a%.datanode.api.v2.ListDepositsResponse"\x0b\x92\x41\x08\n\x06\x41ssets\x12k\n\rGetWithdrawal\x12%.datanode.api.v2.GetWithdrawalRequest\x1a&.datanode.api.v2.GetWithdrawalResponse"\x0b\x92\x41\x08\n\x06\x41ssets\x12q\n\x0fListWithdrawals\x12\'.datanode.api.v2.ListWithdrawalsRequest\x1a(.datanode.api.v2.ListWithdrawalsResponse"\x0b\x92\x41\x08\n\x06\x41ssets\x12\\\n\x08GetAsset\x12 .datanode.api.v2.GetAssetRequest\x1a!.datanode.api.v2.GetAssetResponse"\x0b\x92\x41\x08\n\x06\x41ssets\x12\x62\n\nListAssets\x12".datanode.api.v2.ListAssetsRequest\x1a#.datanode.api.v2.ListAssetsResponse"\x0b\x92\x41\x08\n\x06\x41ssets\x12\x97\x01\n\x17ListLiquidityProvisions\x12/.datanode.api.v2.ListLiquidityProvisionsRequest\x1a\x30.datanode.api.v2.ListLiquidityProvisionsResponse"\x19\x92\x41\x16\n\x14Liquidity provisions\x12\xa2\x01\n\x1aObserveLiquidityProvisions\x12\x32.datanode.api.v2.ObserveLiquidityProvisionsRequest\x1a\x33.datanode.api.v2.ObserveLiquidityProvisionsResponse"\x19\x92\x41\x16\n\x14Liquidity provisions0\x01\x12\x93\x01\n\x16ListLiquidityProviders\x12..datanode.api.v2.ListLiquidityProvidersRequest\x1a/.datanode.api.v2.ListLiquidityProvidersResponse"\x18\x92\x41\x15\n\x13Liquidity providers\x12{\n\x11GetGovernanceData\x12).datanode.api.v2.GetGovernanceDataRequest\x1a*.datanode.api.v2.GetGovernanceDataResponse"\x0f\x92\x41\x0c\n\nGovernance\x12~\n\x12ListGovernanceData\x12*.datanode.api.v2.ListGovernanceDataRequest\x1a+.datanode.api.v2.ListGovernanceDataResponse"\x0f\x92\x41\x0c\n\nGovernance\x12}\n\x11ObserveGovernance\x12).datanode.api.v2.ObserveGovernanceRequest\x1a*.datanode.api.v2.ObserveGovernanceResponse"\x0f\x92\x41\x0c\n\nGovernance0\x01\x12r\n\x0fListDelegations\x12\'.datanode.api.v2.ListDelegationsRequest\x1a(.datanode.api.v2.ListDelegationsResponse"\x0c\x92\x41\t\n\x07Network\x12o\n\x0eGetNetworkData\x12&.datanode.api.v2.GetNetworkDataRequest\x1a\'.datanode.api.v2.GetNetworkDataResponse"\x0c\x92\x41\t\n\x07Network\x12Z\n\x07GetNode\x12\x1f.datanode.api.v2.GetNodeRequest\x1a .datanode.api.v2.GetNodeResponse"\x0c\x92\x41\t\n\x07Network\x12`\n\tListNodes\x12!.datanode.api.v2.ListNodesRequest\x1a".datanode.api.v2.ListNodesResponse"\x0c\x92\x41\t\n\x07Network\x12\x80\x01\n\x12ListNodeSignatures\x12*.datanode.api.v2.ListNodeSignaturesRequest\x1a+.datanode.api.v2.ListNodeSignaturesResponse"\x11\x92\x41\x0e\n\x0c\x45RC20 bridge\x12]\n\x08GetEpoch\x12 .datanode.api.v2.GetEpochRequest\x1a!.datanode.api.v2.GetEpochResponse"\x0c\x92\x41\t\n\x07Network\x12\x65\n\x0b\x45stimateFee\x12#.datanode.api.v2.EstimateFeeRequest\x1a$.datanode.api.v2.EstimateFeeResponse"\x0b\x92\x41\x08\n\x06Orders\x12n\n\x0e\x45stimateMargin\x12&.datanode.api.v2.EstimateMarginRequest\x1a\'.datanode.api.v2.EstimateMarginResponse"\x0b\x92\x41\x08\n\x06Orders\x12w\n\x10\x45stimatePosition\x12(.datanode.api.v2.EstimatePositionRequest\x1a).datanode.api.v2.EstimatePositionResponse"\x0e\x92\x41\x0b\n\tPositions\x12\x84\x01\n\x15ListNetworkParameters\x12-.datanode.api.v2.ListNetworkParametersRequest\x1a..datanode.api.v2.ListNetworkParametersResponse"\x0c\x92\x41\t\n\x07Network\x12~\n\x13GetNetworkParameter\x12+.datanode.api.v2.GetNetworkParameterRequest\x1a,.datanode.api.v2.GetNetworkParameterResponse"\x0c\x92\x41\t\n\x07Network\x12r\n\x0fListCheckpoints\x12\'.datanode.api.v2.ListCheckpointsRequest\x1a(.datanode.api.v2.ListCheckpointsResponse"\x0c\x92\x41\t\n\x07Network\x12]\n\x08GetStake\x12 .datanode.api.v2.GetStakeRequest\x1a!.datanode.api.v2.GetStakeResponse"\x0c\x92\x41\t\n\x07Network\x12o\n\x0eGetRiskFactors\x12&.datanode.api.v2.GetRiskFactorsRequest\x1a\'.datanode.api.v2.GetRiskFactorsResponse"\x0c\x92\x41\t\n\x07Markets\x12u\n\x0fObserveEventBus\x12\'.datanode.api.v2.ObserveEventBusRequest\x1a(.datanode.api.v2.ObserveEventBusResponse"\x0b\x92\x41\x08\n\x06\x45vents(\x01\x30\x01\x12\x92\x01\n\x16ObserveLedgerMovements\x12..datanode.api.v2.ObserveLedgerMovementsRequest\x1a/.datanode.api.v2.ObserveLedgerMovementsResponse"\x15\x92\x41\x12\n\x10Ledger movements0\x01\x12u\n\x10ListKeyRotations\x12(.datanode.api.v2.ListKeyRotationsRequest\x1a).datanode.api.v2.ListKeyRotationsResponse"\x0c\x92\x41\t\n\x07Network\x12\x8d\x01\n\x18ListEthereumKeyRotations\x12\x30.datanode.api.v2.ListEthereumKeyRotationsRequest\x1a\x31.datanode.api.v2.ListEthereumKeyRotationsResponse"\x0c\x92\x41\t\n\x07Network\x12\x66\n\x0bGetVegaTime\x12#.datanode.api.v2.GetVegaTimeRequest\x1a$.datanode.api.v2.GetVegaTimeResponse"\x0c\x92\x41\t\n\x07Network\x12\x8d\x01\n\x18GetProtocolUpgradeStatus\x12\x30.datanode.api.v2.GetProtocolUpgradeStatusRequest\x1a\x31.datanode.api.v2.GetProtocolUpgradeStatusResponse"\x0c\x92\x41\t\n\x07Network\x12\x99\x01\n\x1cListProtocolUpgradeProposals\x12\x34.datanode.api.v2.ListProtocolUpgradeProposalsRequest\x1a\x35.datanode.api.v2.ListProtocolUpgradeProposalsResponse"\x0c\x92\x41\t\n\x07Network\x12x\n\x11ListCoreSnapshots\x12).datanode.api.v2.ListCoreSnapshotsRequest\x1a*.datanode.api.v2.ListCoreSnapshotsResponse"\x0c\x92\x41\t\n\x07Network\x12\xb3\x01\n"GetMostRecentNetworkHistorySegment\x12:.datanode.api.v2.GetMostRecentNetworkHistorySegmentRequest\x1a;.datanode.api.v2.GetMostRecentNetworkHistorySegmentResponse"\x14\x92\x41\x11\n\x0fNetwork history\x12\xa4\x01\n\x1dListAllNetworkHistorySegments\x12\x35.datanode.api.v2.ListAllNetworkHistorySegmentsRequest\x1a\x36.datanode.api.v2.ListAllNetworkHistorySegmentsResponse"\x14\x92\x41\x11\n\x0fNetwork history\x12\xb9\x01\n$GetActiveNetworkHistoryPeerAddresses\x12<.datanode.api.v2.GetActiveNetworkHistoryPeerAddressesRequest\x1a=.datanode.api.v2.GetActiveNetworkHistoryPeerAddressesResponse"\x14\x92\x41\x11\n\x0fNetwork history\x12\x92\x01\n\x17GetNetworkHistoryStatus\x12/.datanode.api.v2.GetNetworkHistoryStatusRequest\x1a\x30.datanode.api.v2.GetNetworkHistoryStatusResponse"\x14\x92\x41\x11\n\x0fNetwork history\x12\xaa\x01\n\x1fGetNetworkHistoryBootstrapPeers\x12\x37.datanode.api.v2.GetNetworkHistoryBootstrapPeersRequest\x1a\x38.datanode.api.v2.GetNetworkHistoryBootstrapPeersResponse"\x14\x92\x41\x11\n\x0fNetwork history\x12j\n\x0cListEntities\x12$.datanode.api.v2.ListEntitiesRequest\x1a%.datanode.api.v2.ListEntitiesResponse"\r\x92\x41\n\n\x08\x45xplorer\x12{\n\x12ListFundingPeriods\x12*.datanode.api.v2.ListFundingPeriodsRequest\x1a+.datanode.api.v2.ListFundingPeriodsResponse"\x0c\x92\x41\t\n\x07Markets\x12\x96\x01\n\x1bListFundingPeriodDataPoints\x12\x33.datanode.api.v2.ListFundingPeriodDataPointsRequest\x1a\x34.datanode.api.v2.ListFundingPeriodDataPointsResponse"\x0c\x92\x41\t\n\x07Markets\x12~\n\x13ListFundingPayments\x12+.datanode.api.v2.ListFundingPaymentsRequest\x1a,.datanode.api.v2.ListFundingPaymentsResponse"\x0c\x92\x41\t\n\x07Markets\x12\x90\x01\n\x16GetPartyActivityStreak\x12..datanode.api.v2.GetPartyActivityStreakRequest\x1a/.datanode.api.v2.GetPartyActivityStreakResponse"\x15\x92\x41\x12\n\x10Referral program\x12\x99\x01\n\x19GetCurrentReferralProgram\x12\x31.datanode.api.v2.GetCurrentReferralProgramRequest\x1a\x32.datanode.api.v2.GetCurrentReferralProgramResponse"\x15\x92\x41\x12\n\x10Referral program\x12~\n\x10ListReferralSets\x12(.datanode.api.v2.ListReferralSetsRequest\x1a).datanode.api.v2.ListReferralSetsResponse"\x15\x92\x41\x12\n\x10Referral program\x12\x93\x01\n\x17ListReferralSetReferees\x12/.datanode.api.v2.ListReferralSetRefereesRequest\x1a\x30.datanode.api.v2.ListReferralSetRefereesResponse"\x15\x92\x41\x12\n\x10Referral program\x12\x87\x01\n\x13GetReferralSetStats\x12+.datanode.api.v2.GetReferralSetStatsRequest\x1a,.datanode.api.v2.GetReferralSetStatsResponse"\x15\x92\x41\x12\n\x10Referral program\x12^\n\tListTeams\x12!.datanode.api.v2.ListTeamsRequest\x1a".datanode.api.v2.ListTeamsResponse"\n\x92\x41\x07\n\x05Teams\x12s\n\x10ListTeamReferees\x12(.datanode.api.v2.ListTeamRefereesRequest\x1a).datanode.api.v2.ListTeamRefereesResponse"\n\x92\x41\x07\n\x05Teams\x12\x85\x01\n\x16ListTeamRefereeHistory\x12..datanode.api.v2.ListTeamRefereeHistoryRequest\x1a/.datanode.api.v2.ListTeamRefereeHistoryResponse"\n\x92\x41\x07\n\x05Teams\x12\x87\x01\n\x13GetReferralFeeStats\x12+.datanode.api.v2.GetReferralFeeStatsRequest\x1a,.datanode.api.v2.GetReferralFeeStatsResponse"\x15\x92\x41\x12\n\x10Referral program\x12\xb2\x01\n\x1fGetCurrentVolumeDiscountProgram\x12\x37.datanode.api.v2.GetCurrentVolumeDiscountProgramRequest\x1a\x38.datanode.api.v2.GetCurrentVolumeDiscountProgramResponse"\x1c\x92\x41\x19\n\x17Volume discount program\x12\x97\x01\n\x16GetVolumeDiscountStats\x12..datanode.api.v2.GetVolumeDiscountStatsRequest\x1a/.datanode.api.v2.GetVolumeDiscountStatsResponse"\x1c\x92\x41\x19\n\x17Volume discount program\x12r\n\x14\x45xportNetworkHistory\x12,.datanode.api.v2.ExportNetworkHistoryRequest\x1a\x14.google.api.HttpBody"\x14\x92\x41\x11\n\x0fNetwork history0\x01\x12N\n\x04Ping\x12\x1c.datanode.api.v2.PingRequest\x1a\x1d.datanode.api.v2.PingResponse"\t\x92\x41\x06\n\x04MiscB\xc6\x01Z1code.vegaprotocol.io/vega/protos/data-node/api/v2\x92\x41\x8f\x01\x12\x1e\n\x13Vega data node APIs2\x07v0.72.1\x1a\x1chttps://api.testnet.vega.xyz*\x02\x01\x02\x32\x10\x61pplication/jsonR9\n\x03\x35\x30\x30\x12\x32\n\x18\x41n internal server error\x12\x16\n\x14\x1a\x12.google.rpc.Statusb\x06proto3' ) _globals = globals() @@ -624,6 +624,16 @@ _TRADINGDATASERVICE.methods_by_name[ "GetReferralFeeStats" ]._serialized_options = b"\222A\022\n\020Referral program" + _TRADINGDATASERVICE.methods_by_name[ + "GetCurrentVolumeDiscountProgram" + ]._options = None + _TRADINGDATASERVICE.methods_by_name[ + "GetCurrentVolumeDiscountProgram" + ]._serialized_options = b"\222A\031\n\027Volume discount program" + _TRADINGDATASERVICE.methods_by_name["GetVolumeDiscountStats"]._options = None + _TRADINGDATASERVICE.methods_by_name[ + "GetVolumeDiscountStats" + ]._serialized_options = b"\222A\031\n\027Volume discount program" _TRADINGDATASERVICE.methods_by_name["ExportNetworkHistory"]._options = None _TRADINGDATASERVICE.methods_by_name[ "ExportNetworkHistory" @@ -632,14 +642,14 @@ _TRADINGDATASERVICE.methods_by_name[ "Ping" ]._serialized_options = b"\222A\006\n\004Misc" - _globals["_LEDGERENTRYFIELD"]._serialized_start = 45735 - _globals["_LEDGERENTRYFIELD"]._serialized_end = 45905 - _globals["_ACCOUNTFIELD"]._serialized_start = 45908 - _globals["_ACCOUNTFIELD"]._serialized_end = 46084 - _globals["_TRANSFERDIRECTION"]._serialized_start = 46087 - _globals["_TRANSFERDIRECTION"]._serialized_end = 46260 - _globals["_TABLE"]._serialized_start = 46263 - _globals["_TABLE"]._serialized_end = 46613 + _globals["_LEDGERENTRYFIELD"]._serialized_start = 46931 + _globals["_LEDGERENTRYFIELD"]._serialized_end = 47101 + _globals["_ACCOUNTFIELD"]._serialized_start = 47104 + _globals["_ACCOUNTFIELD"]._serialized_end = 47280 + _globals["_TRANSFERDIRECTION"]._serialized_start = 47283 + _globals["_TRANSFERDIRECTION"]._serialized_end = 47456 + _globals["_TABLE"]._serialized_start = 47459 + _globals["_TABLE"]._serialized_end = 47809 _globals["_PAGINATION"]._serialized_start = 335 _globals["_PAGINATION"]._serialized_end = 552 _globals["_PAGEINFO"]._serialized_start = 555 @@ -1332,6 +1342,22 @@ _globals["_GETREFERRALFEESTATSREQUEST"]._serialized_end = 45646 _globals["_GETREFERRALFEESTATSRESPONSE"]._serialized_start = 45648 _globals["_GETREFERRALFEESTATSRESPONSE"]._serialized_end = 45732 - _globals["_TRADINGDATASERVICE"]._serialized_start = 46616 - _globals["_TRADINGDATASERVICE"]._serialized_end = 59734 + _globals["_GETCURRENTVOLUMEDISCOUNTPROGRAMREQUEST"]._serialized_start = 45734 + _globals["_GETCURRENTVOLUMEDISCOUNTPROGRAMREQUEST"]._serialized_end = 45774 + _globals["_GETCURRENTVOLUMEDISCOUNTPROGRAMRESPONSE"]._serialized_start = 45777 + _globals["_GETCURRENTVOLUMEDISCOUNTPROGRAMRESPONSE"]._serialized_end = 45929 + _globals["_GETVOLUMEDISCOUNTSTATSREQUEST"]._serialized_start = 45932 + _globals["_GETVOLUMEDISCOUNTSTATSREQUEST"]._serialized_end = 46134 + _globals["_GETVOLUMEDISCOUNTSTATSRESPONSE"]._serialized_start = 46136 + _globals["_GETVOLUMEDISCOUNTSTATSRESPONSE"]._serialized_end = 46238 + _globals["_VOLUMEDISCOUNTSTATSCONNECTION"]._serialized_start = 46241 + _globals["_VOLUMEDISCOUNTSTATSCONNECTION"]._serialized_end = 46392 + _globals["_VOLUMEDISCOUNTSTATSEDGE"]._serialized_start = 46394 + _globals["_VOLUMEDISCOUNTSTATSEDGE"]._serialized_end = 46501 + _globals["_VOLUMEDISCOUNTSTATS"]._serialized_start = 46504 + _globals["_VOLUMEDISCOUNTSTATS"]._serialized_end = 46659 + _globals["_VOLUMEDISCOUNTPROGRAM"]._serialized_start = 46662 + _globals["_VOLUMEDISCOUNTPROGRAM"]._serialized_end = 46928 + _globals["_TRADINGDATASERVICE"]._serialized_start = 47812 + _globals["_TRADINGDATASERVICE"]._serialized_end = 61265 # @@protoc_insertion_point(module_scope) diff --git a/vega_sim/proto/data_node/api/v2/trading_data_pb2_grpc.py b/vega_sim/proto/data_node/api/v2/trading_data_pb2_grpc.py index 20427132c..3d484b6f2 100644 --- a/vega_sim/proto/data_node/api/v2/trading_data_pb2_grpc.py +++ b/vega_sim/proto/data_node/api/v2/trading_data_pb2_grpc.py @@ -532,6 +532,16 @@ def __init__(self, channel): request_serializer=data__node_dot_api_dot_v2_dot_trading__data__pb2.GetReferralFeeStatsRequest.SerializeToString, response_deserializer=data__node_dot_api_dot_v2_dot_trading__data__pb2.GetReferralFeeStatsResponse.FromString, ) + self.GetCurrentVolumeDiscountProgram = channel.unary_unary( + "/datanode.api.v2.TradingDataService/GetCurrentVolumeDiscountProgram", + request_serializer=data__node_dot_api_dot_v2_dot_trading__data__pb2.GetCurrentVolumeDiscountProgramRequest.SerializeToString, + response_deserializer=data__node_dot_api_dot_v2_dot_trading__data__pb2.GetCurrentVolumeDiscountProgramResponse.FromString, + ) + self.GetVolumeDiscountStats = channel.unary_unary( + "/datanode.api.v2.TradingDataService/GetVolumeDiscountStats", + request_serializer=data__node_dot_api_dot_v2_dot_trading__data__pb2.GetVolumeDiscountStatsRequest.SerializeToString, + response_deserializer=data__node_dot_api_dot_v2_dot_trading__data__pb2.GetVolumeDiscountStatsResponse.FromString, + ) self.ExportNetworkHistory = channel.unary_stream( "/datanode.api.v2.TradingDataService/ExportNetworkHistory", request_serializer=data__node_dot_api_dot_v2_dot_trading__data__pb2.ExportNetworkHistoryRequest.SerializeToString, @@ -1522,6 +1532,21 @@ def GetReferralFeeStats(self, request, context): context.set_details("Method not implemented!") raise NotImplementedError("Method not implemented!") + def GetCurrentVolumeDiscountProgram(self, request, context): + """Get current volume discount program + + Get the on-going volume discount program. + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details("Method not implemented!") + raise NotImplementedError("Method not implemented!") + + def GetVolumeDiscountStats(self, request, context): + """Get the volume discount statistics for a given epoch for all parties""" + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details("Method not implemented!") + raise NotImplementedError("Method not implemented!") + def ExportNetworkHistory(self, request, context): """Export network history as CSV @@ -2116,6 +2141,16 @@ def add_TradingDataServiceServicer_to_server(servicer, server): request_deserializer=data__node_dot_api_dot_v2_dot_trading__data__pb2.GetReferralFeeStatsRequest.FromString, response_serializer=data__node_dot_api_dot_v2_dot_trading__data__pb2.GetReferralFeeStatsResponse.SerializeToString, ), + "GetCurrentVolumeDiscountProgram": grpc.unary_unary_rpc_method_handler( + servicer.GetCurrentVolumeDiscountProgram, + request_deserializer=data__node_dot_api_dot_v2_dot_trading__data__pb2.GetCurrentVolumeDiscountProgramRequest.FromString, + response_serializer=data__node_dot_api_dot_v2_dot_trading__data__pb2.GetCurrentVolumeDiscountProgramResponse.SerializeToString, + ), + "GetVolumeDiscountStats": grpc.unary_unary_rpc_method_handler( + servicer.GetVolumeDiscountStats, + request_deserializer=data__node_dot_api_dot_v2_dot_trading__data__pb2.GetVolumeDiscountStatsRequest.FromString, + response_serializer=data__node_dot_api_dot_v2_dot_trading__data__pb2.GetVolumeDiscountStatsResponse.SerializeToString, + ), "ExportNetworkHistory": grpc.unary_stream_rpc_method_handler( servicer.ExportNetworkHistory, request_deserializer=data__node_dot_api_dot_v2_dot_trading__data__pb2.ExportNetworkHistoryRequest.FromString, @@ -5124,6 +5159,64 @@ def GetReferralFeeStats( metadata, ) + @staticmethod + def GetCurrentVolumeDiscountProgram( + request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + insecure=False, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None, + ): + return grpc.experimental.unary_unary( + request, + target, + "/datanode.api.v2.TradingDataService/GetCurrentVolumeDiscountProgram", + data__node_dot_api_dot_v2_dot_trading__data__pb2.GetCurrentVolumeDiscountProgramRequest.SerializeToString, + data__node_dot_api_dot_v2_dot_trading__data__pb2.GetCurrentVolumeDiscountProgramResponse.FromString, + options, + channel_credentials, + insecure, + call_credentials, + compression, + wait_for_ready, + timeout, + metadata, + ) + + @staticmethod + def GetVolumeDiscountStats( + request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + insecure=False, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None, + ): + return grpc.experimental.unary_unary( + request, + target, + "/datanode.api.v2.TradingDataService/GetVolumeDiscountStats", + data__node_dot_api_dot_v2_dot_trading__data__pb2.GetVolumeDiscountStatsRequest.SerializeToString, + data__node_dot_api_dot_v2_dot_trading__data__pb2.GetVolumeDiscountStatsResponse.FromString, + options, + channel_credentials, + insecure, + call_credentials, + compression, + wait_for_ready, + timeout, + metadata, + ) + @staticmethod def ExportNetworkHistory( request, From a809aa5666498ad3bf1cbfcbc1062f8224f4f9b1 Mon Sep 17 00:00:00 2001 From: Charlie Date: Fri, 29 Sep 2023 18:27:26 +0100 Subject: [PATCH 5/6] feat: add vdpr api methods --- tests/integration/test_trading.py | 2 + vega_sim/api/data.py | 83 ++++++++++++++++++++++++++++++- vega_sim/api/data_raw.py | 27 ++++++++++ vega_sim/service.py | 19 +++++++ 4 files changed, 130 insertions(+), 1 deletion(-) diff --git a/tests/integration/test_trading.py b/tests/integration/test_trading.py index 0e17fa2db..54409fe80 100644 --- a/tests/integration/test_trading.py +++ b/tests/integration/test_trading.py @@ -1660,10 +1660,12 @@ def test_volume_discount_program(vega_service_with_market: VegaServiceNull): non_discounted_trades = vega.get_trades( market_id=market_id, order_id=non_discounted_order_id ) + assert vega.get_current_volume_discount_program() is not None assert non_discounted_trades[0].seller_fee.maker_fee_volume_discount == 0 assert non_discounted_trades[0].seller_fee.liquidity_fee_volume_discount == 0 assert non_discounted_trades[0].seller_fee.infrastructure_fee_volume_discount == 0 next_epoch(vega=vega) + assert vega.get_volume_discount_stats(key_name=PARTY_B.name) is not None vega.submit_order( trading_key=PARTY_A.name, market_id=market_id, diff --git a/vega_sim/api/data.py b/vega_sim/api/data.py index c66a76b28..a1c1dafab 100644 --- a/vega_sim/api/data.py +++ b/vega_sim/api/data.py @@ -276,6 +276,14 @@ class ReferralSetReferee: at_epoch: int +@dataclass(frozen=True) +class VolumeDiscountStats: + at_epoch: int + party_id: str + discount_factor: float + running_volume: float + + @dataclass(frozen=True) class BenefitTier: minimum_running_notional_taker_volume: float @@ -301,6 +309,22 @@ class ReferralProgram: ended_at: int +@dataclass(frozen=True) +class VolumeBenefitTier: + minimum_running_notional_taker_volume: float + volume_discount_factor: float + + +@dataclass(frozen=True) +class VolumeDiscountProgram: + version: int + id: str + benefit_tiers: List[VolumeBenefitTier] + end_of_program_timestamp: str + window_length: int + ended_at: int + + def _ledger_entry_from_proto( ledger_entry, asset_decimals: int, @@ -820,6 +844,40 @@ def _referral_program_from_proto(referral_program) -> ReferralProgram: ) +def _volume_benefit_tier_from_proto(volume_benefit_tier) -> VolumeBenefitTier: + return VolumeBenefitTier( + minimum_running_notional_taker_volume=float( + volume_benefit_tier.minimum_running_notional_taker_volume + ), + volume_discount_factor=float(volume_benefit_tier.volume_discount_factor), + ) + + +def _volume_discount_program_from_proto( + volume_discount_program, +) -> VolumeDiscountProgram: + return VolumeDiscountProgram( + version=int(volume_discount_program.version), + id=str(volume_discount_program.id), + benefit_tiers=[ + _volume_benefit_tier_from_proto(volume_benefit_tier) + for volume_benefit_tier in volume_discount_program.benefit_tiers + ], + end_of_program_timestamp=int(volume_discount_program.end_of_program_timestamp), + window_length=int(volume_discount_program.window_length), + ended_at=int(volume_discount_program.ended_at), + ) + + +def _volume_discount_stats_from_proto(volume_discount_stats) -> VolumeDiscountStats: + return VolumeDiscountStats( + at_epoch=int(volume_discount_stats.at_epoch), + party_id=str(volume_discount_stats.party_id), + discount_factor=float(volume_discount_stats.discount_factor), + running_volume=float(volume_discount_stats.running_volume), + ) + + def list_accounts( data_client: vac.VegaTradingDataClientV2, pub_key: Optional[str] = None, @@ -1860,6 +1918,29 @@ def list_referral_set_referees( return referral_set_referees -def get_current_referral_program(data_client: vac.trading_data_grpc_v2): +def get_current_referral_program( + data_client: vac.trading_data_grpc_v2, +) -> ReferralProgram: response = data_raw.get_current_referral_program(data_client=data_client) return _referral_program_from_proto(referral_program=response) + + +def get_current_volume_discount_program( + data_client: vac.trading_data_grpc_v2, +) -> VolumeDiscountProgram: + response = data_raw.get_current_volume_discount_program(data_client=data_client) + return _volume_discount_program_from_proto(volume_discount_program=response) + + +def get_volume_discount_stats( + data_client: vac.trading_data_grpc_v2, + at_epoch: Optional[int] = None, + party_id: Optional[str] = None, +) -> List[VolumeDiscountStats]: + response = data_raw.get_volume_discount_stats( + data_client=data_client, at_epoch=at_epoch, party_id=party_id + ) + return [ + _volume_discount_stats_from_proto(volume_discount_stats=volume_discount_stats) + for volume_discount_stats in response + ] diff --git a/vega_sim/api/data_raw.py b/vega_sim/api/data_raw.py index faf59518c..4ceb4a265 100644 --- a/vega_sim/api/data_raw.py +++ b/vega_sim/api/data_raw.py @@ -733,3 +733,30 @@ def get_current_referral_program(data_client: vac.trading_data_grpc_v2): return data_client.GetCurrentReferralProgram( data_node_protos_v2.trading_data.GetCurrentReferralProgramRequest() ).current_referral_program + + +@_retry(3) +def get_current_volume_discount_program( + data_client: vac.trading_data_grpc_v2.TradingDataServiceStub, +): + return data_client.GetCurrentVolumeDiscountProgram( + data_node_protos_v2.trading_data.GetCurrentVolumeDiscountProgramRequest() + ).current_volume_discount_program + + +@_retry(3) +def get_volume_discount_stats( + data_client: vac.trading_data_grpc_v2, + at_epoch: Optional[int] = None, + party_id: Optional[str] = None, +) -> List[data_node_protos_v2.trading_data.ReferralSet]: + base_request = data_node_protos_v2.trading_data.GetVolumeDiscountStatsRequest() + if at_epoch is not None: + setattr(base_request, "at_epoch", at_epoch) + if party_id is not None: + setattr(base_request, "party_id", party_id) + return unroll_v2_pagination( + base_request=base_request, + request_func=lambda x: data_client.GetVolumeDiscountStats(x).stats, + extraction_func=lambda res: [i.node for i in res.edges], + ) diff --git a/vega_sim/service.py b/vega_sim/service.py index 558b058bf..117215445 100644 --- a/vega_sim/service.py +++ b/vega_sim/service.py @@ -2807,3 +2807,22 @@ def update_volume_discount_program( self.wait_fn(int(time_to_enactment / self.seconds_per_block) + 1) self.wait_for_thread_catchup() return proposal_id + + def get_current_volume_discount_program( + self, + ) -> data.VolumeDiscountProgram: + return data.get_current_volume_discount_program( + data_client=self.trading_data_client_v2 + ) + + def get_volume_discount_stats( + self, + at_epoch: Optional[str] = None, + key_name: Optional[str] = None, + wallet_name: Optional[str] = None, + ) -> List[data.VolumeDiscountStats]: + return data.get_volume_discount_stats( + data_client=self.trading_data_client_v2, + at_epoch=at_epoch, + party_id=self.wallet.public_key(name=key_name, wallet_name=wallet_name), + ) From c96b646d04edd3d187dff0a50883caccfce669d9 Mon Sep 17 00:00:00 2001 From: Charlie Date: Fri, 29 Sep 2023 18:48:07 +0100 Subject: [PATCH 6/6] fix: correct rebase --- .env | 2 +- Jenkinsfile | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.env b/.env index 1b5a79082..25d633f64 100644 --- a/.env +++ b/.env @@ -1,4 +1,4 @@ -VEGA_SIM_VEGA_TAG=aaa9b4eb0b8fba1e118e19fc90d81b74cd02092d +VEGA_SIM_VEGA_TAG=6b2a26f0d4a6ed3bf928bcebaa0014f5891e728f VEGA_SIM_CONSOLE_TAG=develop VEGA_DEFAULT_KEY_NAME='Key 1' VEGA_SIM_NETWORKS_INTERNAL_TAG=main diff --git a/Jenkinsfile b/Jenkinsfile index 7b2262b30..f166ea1f7 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -14,7 +14,7 @@ pipeline { disableConcurrentBuilds(abortPrevious: true) } parameters { - string( name: 'VEGA_VERSION', defaultValue: 'aaa9b4eb0b8fba1e118e19fc90d81b74cd02092d', + string( name: 'VEGA_VERSION', defaultValue: '6b2a26f0d4a6ed3bf928bcebaa0014f5891e728f', description: 'Git branch, tag or hash of the vegaprotocol/vega repository') string( name: 'VEGACAPSULE_VERSION', defaultValue: 'main', description: 'Git branch, tag or hash of the vegaprotocol/vegacapsule repository')