Governance Proposals
Proposal/SpotMarketParamUpdate
SpotMarketParamUpdateProposal
defines an SDK message to propose an update of spot market params.
type SpotMarketParamUpdateProposal struct {
Title string
Description string
MarketId string
MakerFeeRate *sdk.Dec
TakerFeeRate *sdk.Dec
RelayerFeeShareRate *sdk.Dec
MinPriceTickSize *sdk.Dec
MinQuantityTickSize *sdk.Dec
MinNotional *sdk.Dec
Status MarketStatus
}
Fields description
Title
describes the title of the proposal.Description
describes the description of the proposal.MarketId
describes the id of the market to change params.MakerFeeRate
describes the target fee rate for makers.TakerFeeRate
describes the target fee rate for takers.RelayerFeeShareRate
describes the relayer fee share rate.MinPriceTickSize
defines the minimum tick size of the order's price.MinQuantityTickSize
defines the minimum tick size of the order's quantity.Status
describes the target status of the market.
Proposal/ExchangeEnable
ExchangeEnableProposal
defines a message to propose enable of specific exchange type.
type ExchangeEnableProposal struct {
Title string
Description string
ExchangeType ExchangeType
}
Fields description
Title
describes the title of the proposal.Description
describes the description of the proposal.ExchangeType
describes the type of exchange, spot or derivatives.
Proposal/BatchExchangeModification
BatchExchangeModificationProposal
defines a message to batch multiple proposals in the exchange module.
type BatchExchangeModificationProposal struct {
Title string
Description string
SpotMarketParamUpdateProposal []*SpotMarketParamUpdateProposal
DerivativeMarketParamUpdateProposal []*DerivativeMarketParamUpdateProposal
SpotMarketLaunchProposal []*SpotMarketLaunchProposal
PerpetualMarketLaunchProposal []*PerpetualMarketLaunchProposal
ExpiryFuturesMarketLaunchProposal []*ExpiryFuturesMarketLaunchProposal
TradingRewardCampaignUpdateProposal *TradingRewardCampaignUpdateProposal
}
Fields description
Title
describes the title of the proposal.Description
describes the description of the proposal.SpotMarketParamUpdateProposal
describes the SpotMarketParamUpdateProposal.DerivativeMarketParamUpdateProposal
describes the DerivativeMarketParamUpdateProposal.SpotMarketLaunchProposal
describes the SpotMarketLaunchProposal.PerpetualMarketLaunchProposal
describes the PerpetualMarketLaunchProposal.ExpiryFuturesMarketLaunchProposal
describes the ExpiryFuturesMarketLaunchProposal.TradingRewardCampaignUpdateProposal
describes the TradingRewardCampaignUpdateProposal.
Proposal/SpotMarketLaunch
SpotMarketLaunchProposal
defines an SDK message for proposing a new spot market through governance.
type SpotMarketLaunchProposal struct {
Title string
Description string
Ticker string
BaseDenom string
QuoteDenom string
MinPriceTickSize sdk.Dec
MinQuantityTickSize sdk.Dec
MinNotional sdk.Dec
MakerFeeRate sdk.Dec
TakerFeeRate sdk.Dec
}
Fields description
Title
describes the title of the proposal.Description
describes the description of the proposal.Ticker
describes the ticker for the spot market.BaseDenom
specifies the type of coin to use as the base currency.QuoteDenom
specifies the type of coin to use as the quote currency.MinPriceTickSize
defines the minimum tick size of the order's price.MinQuantityTickSize
defines the minimum tick size of the order's quantity.MakerFeeRate
field describes the trade fee rate for makers on the derivative market.TakerFeeRate
field describes the trade fee rate for takers on the derivative market.
Proposal/PerpetualMarketLaunch
PerpetualMarketLaunchProposal
defines an SDK message for proposing a new perpetual futures market through governance.
type PerpetualMarketLaunchProposal struct {
Title string
Description string
Ticker string
QuoteDenom string
OracleBase string
OracleQuote string
OracleScaleFactor uint32
OracleType types1.OracleType
InitialMarginRatio sdk.Dec
MaintenanceMarginRatio sdk.Dec
MakerFeeRate sdk.Dec
TakerFeeRate sdk.Dec
MinPriceTickSize sdk.Dec
MinQuantityTickSize sdk.Dec
}
Fields description
Title
describes the title of the proposal.Description
describes the description of the proposal.Ticker
field describes the ticker for the derivative market.QuoteDenom
field describes the type of coin to use as the base currency.OracleBase
field describes the oracle base currency.OracleQuote
field describes the oracle quote currency.OracleScaleFactor
field describes the scale factor for oracle prices.OracleType
field describes the oracle type.MakerFeeRate
field describes the trade fee rate for makers on the derivative market.TakerFeeRate
field describes the trade fee rate for takers on the derivative market.InitialMarginRatio
field describes the initial margin ratio for the derivative market.MaintenanceMarginRatio
field describes the maintenance margin ratio for the derivative market.MinPriceTickSize
field describes the minimum tick size of the order's price and margin.MinQuantityTickSize
field describes the minimum tick size of the order's quantity.
Expiry futures market launch proposal
// ExpiryFuturesMarketLaunchProposal defines an SDK message for proposing a new expiry futures market through governance
type ExpiryFuturesMarketLaunchProposal struct {
Title string
Description string
// Ticker for the derivative market.
Ticker string
// type of coin to use as the quote currency
QuoteDenom string
// Oracle base currency
OracleBase string
// Oracle quote currency
OracleQuote string
// Scale factor for oracle prices.
OracleScaleFactor uint32
// Oracle type
OracleType types1.OracleType
// Expiration time of the market
Expiry int64
// initial_margin_ratio defines the initial margin ratio for the derivative market
InitialMarginRatio sdk.Dec
// maintenance_margin_ratio defines the maintenance margin ratio for the derivative market
MaintenanceMarginRatio sdk.Dec
// maker_fee_rate defines the exchange trade fee for makers for the derivative market
MakerFeeRate sdk.Dec
// taker_fee_rate defines the exchange trade fee for takers for the derivative market
TakerFeeRate sdk.Dec
// min_price_tick_size defines the minimum tick size of the order's price and margin
MinPriceTickSize sdk.Dec
// min_quantity_tick_size defines the minimum tick size of the order's quantity
MinQuantityTickSize sdk.Dec
// min_notional defines the minimum notional (in quote asset) required for orders in the market
MinNotional sdk.Dec
}
Fields description
Title
describes the title of the proposal.Description
describes the description of the proposal.Ticker
field describes the ticker for the derivative market.QuoteDenom
field describes the type of coin to use as the quote currency.OracleBase
field describes the oracle base currency.OracleQuote
field describes the oracle quote currency.OracleScaleFactor
field describes the scale factor for oracle prices.OracleType
field describes the oracle type.Expiry
field describes the expiration time of the market.MakerFeeRate
field describes the trade fee rate for makers on the derivative market.TakerFeeRate
field describes the trade fee rate for takers on the derivative market.InitialMarginRatio
field describes the initial margin ratio for the derivative market.MaintenanceMarginRatio
field describes the maintenance margin ratio for the derivative market.MinPriceTickSize
field describes the minimum tick size of the order's price and margin.MinQuantityTickSize
field describes the minimum tick size of the order's quantity.
Binary options market launch proposal
type BinaryOptionsMarketLaunchProposal struct {
Title string
Description string
// Ticker for the derivative contract.
Ticker string
// Oracle symbol
OracleSymbol string
// Oracle Provider
OracleProvider string
// Oracle type
OracleType types1.OracleType
// Scale factor for oracle prices.
OracleScaleFactor uint32
// expiration timestamp
ExpirationTimestamp int64
// expiration timestamp
SettlementTimestamp int64
// admin of the market
Admin string
// Address of the quote currency denomination for the binary options contract
QuoteDenom string
// maker_fee_rate defines the maker fee rate of a binary options market
MakerFeeRate sdk.Dec
// taker_fee_rate defines the taker fee rate of a derivative market
TakerFeeRate sdk.Dec
// min_price_tick_size defines the minimum tick size that the price and margin required for orders in the market
MinPriceTickSize sdk.Dec
// min_quantity_tick_size defines the minimum tick size of the quantity required for orders in the market
MinQuantityTickSize sdk.Dec
}
Binary options market param update
type BinaryOptionsMarketParamUpdateProposal struct {
Title string
Description string
MarketId string
// maker_fee_rate defines the exchange trade fee for makers for the derivative market
MakerFeeRate *sdk.Dec
// taker_fee_rate defines the exchange trade fee for takers for the derivative market
TakerFeeRate *sdk.Dec
// relayer_fee_share_rate defines the relayer fee share rate for the derivative market
RelayerFeeShareRate *sdk.Dec
// min_price_tick_size defines the minimum tick size of the order's price and margin
MinPriceTickSize *sdk.Dec
// min_quantity_tick_size defines the minimum tick size of the order's quantity
MinQuantityTickSize *sdk.Dec
// min_notional defines the minimum notional for orders
MinNotional *sdk.Dec
// expiration timestamp
ExpirationTimestamp int64
// expiration timestamp
SettlementTimestamp int64
// new price at which market will be settled
SettlementPrice *sdk.Dec
// admin of the market
Admin string
Status MarketStatus
OracleParams *ProviderOracleParams
}
Proposal/DerivativeMarketParamUpdate
type OracleParams struct {
// Oracle base currency
OracleBase string
// Oracle quote currency
OracleQuote string
// Scale factor for oracle prices.
OracleScaleFactor uint32
// Oracle type
OracleType types1.OracleType
}
type DerivativeMarketParamUpdateProposal struct {
Title string
Description string
MarketId string
InitialMarginRatio *sdk.Dec
MaintenanceMarginRatio *sdk.Dec
MakerFeeRate *sdk.Dec
TakerFeeRate *sdk.Dec
RelayerFeeShareRate *sdk.Dec
MinPriceTickSize *sdk.Dec
MinQuantityTickSize *sdk.Dec
MinNotional *sdk.Dec
HourlyInterestRate *sdk.Dec
HourlyFundingRateCap *sdk.Dec
Status MarketStatus
OracleParams *OracleParams
}
Fields description
Title
describes the title of the proposal.Description
describes the description of the proposal.MarketId
describes the id of the market to change params.InitialMarginRatio
describes the target initial margin ratio.MaintenanceMarginRatio
describes the target maintenance margin ratio.MakerFeeRate
describes the target fee rate for makers.TakerFeeRate
describes the target fee rate for takers.RelayerFeeShareRate
describes the relayer fee share rate.MinPriceTickSize
defines the minimum tick size of the order's price.MinQuantityTickSize
defines the minimum tick size of the order's quantity.Status
describes the target status of the market.OracleParams
describes the new oracle parameters.
Proposal/TradingRewardCampaignLaunch
TradingRewardCampaignLaunchProposal
defines an SDK message for proposing to launch a new trading reward campaign.
type TradingRewardCampaignLaunchProposal struct {
Title string
Description string
CampaignInfo *TradingRewardCampaignInfo
CampaignRewardPools []*CampaignRewardPool
}
Fields description
Title
describes the title of the proposal.Description
describes the description of the proposal.CampaignInfo
describes the CampaignInfo.CampaignRewardPools
describes the CampaignRewardPools.
Proposal/TradingRewardCampaignUpdate
TradingRewardCampaignUpdateProposal
defines an SDK message for proposing to update an existing trading reward campaign.
type TradingRewardCampaignUpdateProposal struct {
Title string
Description string
CampaignInfo *TradingRewardCampaignInfo
CampaignRewardPoolsAdditions []*CampaignRewardPool
CampaignRewardPoolsUpdates []*CampaignRewardPool
}
Title
describes the title of the proposal.Description
describes the description of the proposal.CampaignRewardPoolsAdditions
describes the CampaignRewardPoolsAdditions.CampaignRewardPoolsUpdates
describes the CampaignRewardPoolsUpdates.
Proposal/FeeDiscount
FeeDiscountProposal
defines an SDK message for proposing to launch or update a fee discount schedule.
type FeeDiscountProposal struct {
Title string
Description string
Schedule *FeeDiscountSchedule
}
Title
describes the title of the proposal.Description
describes the description of the proposal.Schedule
describes the Fee discount schedule.
Proposal/TradingRewardPendingPointsUpdate
TradingRewardPendingPointsUpdateProposal
defines an SDK message to update reward points for certain addresses during the vesting period.
type TradingRewardPendingPointsUpdateProposal struct {
Title string
Description string
PendingPoolTimestamp int64
RewardPointUpdates *[]RewardPointUpdate
}
Fields description
Title
describes the title of the proposal.Description
describes the description of the proposal.PendingPoolTimestamp
describes timestamp of the pending pool.RewardPointUpdates
describes the RewardPointUpdate.