BitShares-Core  7.0.2
BitShares blockchain node software and command-line wallet software
Classes | Public Member Functions | Public Attributes | List of all members
graphene::protocol::asset_publish_feed_operation Struct Reference

Publish price feeds for market-issued assets. More...

#include <asset_ops.hpp>

Inheritance diagram for graphene::protocol::asset_publish_feed_operation:
graphene::protocol::base_operation

Classes

struct  ext
 
struct  fee_params_t
 

Public Member Functions

account_id_type fee_payer () const
 
void validate () const
 
- Public Member Functions inherited from graphene::protocol::base_operation
virtual ~base_operation ()=default
 
template<typename T >
share_type calculate_fee (const T &params) const
 
virtual void get_required_authorities (vector< authority > &) const
 
virtual void get_required_active_authorities (flat_set< account_id_type > &) const
 
virtual void get_required_owner_authorities (flat_set< account_id_type > &) const
 
fc::optional< fc::future< void > > validate_parallel (uint32_t skip) const
 

Public Attributes

asset fee
 paid for by publisher More...
 
account_id_type publisher
 
asset_id_type asset_id
 asset for which the feed is published More...
 
price_feed feed
 
extension< extextensions
 

Additional Inherited Members

- Static Public Member Functions inherited from graphene::protocol::base_operation
static uint64_t calculate_data_fee (uint64_t bytes, uint64_t price_per_kbyte)
 

Detailed Description

Publish price feeds for market-issued assets.

Price feed providers use this operation to publish their price feeds for market-issued assets. A price feed is used to tune the market for a particular market-issued asset. For each value in the feed, the median across all committee_member feeds for that asset is calculated and the market for the asset is configured with the median of that value.

The feed in the operation contains three prices: a call price limit, a short price limit, and a settlement price. The call limit price is structured as (collateral asset) / (debt asset) and the short limit price is structured as (asset for sale) / (collateral asset). Note that the asset IDs are opposite to eachother, so if we're publishing a feed for USD, the call limit price will be CORE/USD and the short limit price will be USD/CORE. The settlement price may be flipped either direction, as long as it is a ratio between the market-issued asset and its collateral.

Definition at line 462 of file asset_ops.hpp.

Member Function Documentation

◆ fee_payer()

account_id_type graphene::protocol::asset_publish_feed_operation::fee_payer ( ) const
inline

Definition at line 478 of file asset_ops.hpp.

◆ validate()

void graphene::protocol::asset_publish_feed_operation::validate ( ) const
virtual

Reimplemented from graphene::protocol::base_operation.

Definition at line 166 of file asset_ops.cpp.

Member Data Documentation

◆ asset_id

asset_id_type graphene::protocol::asset_publish_feed_operation::asset_id

asset for which the feed is published

Definition at line 474 of file asset_ops.hpp.

◆ extensions

extension<ext> graphene::protocol::asset_publish_feed_operation::extensions

Definition at line 476 of file asset_ops.hpp.

◆ fee

asset graphene::protocol::asset_publish_feed_operation::fee

paid for by publisher

Definition at line 472 of file asset_ops.hpp.

◆ feed

price_feed graphene::protocol::asset_publish_feed_operation::feed

Definition at line 475 of file asset_ops.hpp.

◆ publisher

account_id_type graphene::protocol::asset_publish_feed_operation::publisher

Definition at line 473 of file asset_ops.hpp.


The documentation for this struct was generated from the following files: