MoCState
View Source: contracts/MoCState.sol
↗ Extends: MoCLibConnection, MoCBase, MoCEMACalculator, IMoCState ↘ Derived Contracts: MoCStateMock
MoCState - version: 0.1.12
Structs
InitializeParams
Contract Members
Constants & Variables
StateTransition
Parameters
newState
enum IMoCState.States
BtcPriceProviderUpdated
Parameters
oldAddress
address
newAddress
address
MoCPriceProviderUpdated
Parameters
oldAddress
address
newAddress
address
MoCTokenChanged
Parameters
mocTokenAddress
address
MoCVendorsChanged
Parameters
mocVendorsAddress
address
Functions
initialize
⤿ Overridden Implementation(s): MoCStateMock.initialize
Initializes the contract
Arguments
params
struct MoCState.InitializeParams
Params defined in InitializeParams struct
setMaxDiscountRate
Sets the max discount rate.
Arguments
rate
uint256
Discount rate at liquidation level [using mocPrecision]
getMaxDiscountRate
Returns the value of the BPro max discount rate configuration param
Returns
bproMaxDiscountRate BPro max discount rate
Arguments
setDayBlockSpan
Defines how many blocks there are in a day
Arguments
blockSpan
uint256
blocks there are in a day
setBtcPriceProvider
Sets a new BTCProvider contract
Arguments
btcProviderAddress
address
address of the BTC price provider contract
getBtcPriceProvider
Gets the BTCPriceProviderAddress
Returns
address of the BTC price provider contract
Arguments
getDayBlockSpan
Gets how many blocks there are in a day
Returns
blocks there are in a day
Arguments
subtractRbtcFromSystem
⤾ overrides IMoCState.subtractRbtcFromSystem
Subtract the btc amount passed by parameter to the total Bitcoin Amount
Arguments
btcAmount
uint256
Amount that will be subtract to rbtcInSystem
addToRbtcInSystem
⤾ overrides IMoCState.addToRbtcInSystem
btcAmount Add the btc amount passed by parameter to the total Bitcoin Amount
Arguments
btcAmount
uint256
Amount that will be added to rbtcInSystem
bproTotalSupply
All BPros in circulation
Arguments
docTotalSupply
All docs in circulation
Arguments
cobj
Target coverage for complete system
Arguments
collateralRbtcInSystem
Amount of Bitcoins in the system excluding BTCx values and interests holdings
Arguments
globalCoverage
⤾ overrides IMoCState.globalCoverage
GLOBAL Coverage
Returns
coverage [using mocPrecision]
Arguments
lockedBitcoin
BUCKET lockedBitcoin
Returns
lockedBitcoin amount [using reservePrecision]
Arguments
bucket
bytes32
Name of the bucket used
getRbtcInBitPro
Gets RBTC in BitPro within specified bucket
Returns
Bitcoin amount of BitPro in Bucket [using reservePrecision]
Arguments
bucket
bytes32
Name of the bucket used
getRbtcRemainder
⤾ overrides IMoCState.getRbtcRemainder
Gets the RBTC in the contract that not corresponds to Doc collateral
Returns
RBTC remainder [using reservePrecision]
Arguments
coverage
⤾ overrides IMoCState.coverage
BUCKET Coverage
Returns
coverage [using coveragePrecision]
Arguments
bucket
bytes32
Name of the bucket used
abundanceRatio
⤾ overrides IMoCState.abundanceRatio
Abundance ratio, receives tha amount of doc to use the value of doc0 and Doc total supply
Returns
abundance ratio [using mocPrecision]
Arguments
doc0
uint256
currentAbundanceRatio
⤾ overrides IMoCState.currentAbundanceRatio
Relation between docs in bucket 0 and Doc total supply
Returns
abundance ratio [using mocPrecision]
Arguments
leverage
⤾ overrides IMoCState.leverage
BUCKET Leverage
Returns
coverage [using mocPrecision]
Arguments
bucket
bytes32
Name of the bucket used
globalMaxDoc
GLOBAL maxDoc
Returns
abundance ratio [using mocPrecision]
Arguments
freeDoc
⤾ overrides IMoCState.freeDoc
Returns the amount of DoCs in bucket 0, that can be redeemed outside of settlement
Returns
amount of docs in bucket 0, that can be redeemed outside of settlement [using mocPrecision]
Arguments
maxDoc
BUCKET maxDoc
Returns
abundance ratio [using mocPrecision]
Arguments
bucket
bytes32
globalMaxBPro
GLOBAL maxBPro
Returns
maxBPro for redeem [using reservePrecision]
Arguments
absoluteMaxDoc
⤾ overrides IMoCState.absoluteMaxDoc
ABSOLUTE maxDoc
Returns
maxDoc to issue [using mocPrecision]
Arguments
maxBPro
BUCKET maxBPro to redeem / mint
Returns
maxBPro for redeem [using mocPrecision]
Arguments
bucket
bytes32
Name of the bucket used
maxBProx
⚠ This has been deprecated since the Proposal to remove leveraged positions from the protocol was approved, however it is necessary to maintain the contracts and their documentation for legacy support.
GLOBAL max bprox to mint
Returns
maxBProx [using reservePrecision]
Arguments
bucket
bytes32
Name of the bucket used
maxBProxBtcValue
⚠ This has been deprecated since the Proposal to remove leveraged positions from the protocol was approved, however it is necessary to maintain the contracts and their documentation for legacy support.
⤾ overrides IMoCState.maxBProxBtcValue
GLOBAL max bprox to mint
Returns
maxBProx BTC value to mint [using reservePrecision]
Arguments
bucket
bytes32
Name of the bucket used
absoluteMaxBPro
⤾ overrides IMoCState.absoluteMaxBPro
ABSOLUTE maxBPro
Returns
maxDoc to issue [using mocPrecision]
Arguments
maxBProWithDiscount
⤾ overrides IMoCState.maxBProWithDiscount
DISCOUNT maxBPro
Returns
maxBPro for mint with discount [using mocPrecision]
Arguments
globalLockedBitcoin
GLOBAL lockedBitcoin
Returns
lockedBitcoin amount [using reservePrecision]
Arguments
bproTecPrice
⤾ overrides IMoCState.bproTecPrice
BTC price of BPro
Returns
the BPro Tec Price [using reservePrecision]
Arguments
bucketBProTecPrice
⤾ overrides IMoCState.bucketBProTecPrice
BUCKET BTC price of BPro
Returns
the BPro Tec Price [using reservePrecision]
Arguments
bucket
bytes32
Name of the bucket used
bucketBProTecPriceHelper
⤾ overrides IMoCState.bucketBProTecPriceHelper
BUCKET BTC price of BPro (helper)
Returns
the BPro Tec Price [using reservePrecision]
Arguments
bucket
bytes32
Name of the bucket used
bproDiscountPrice
⤾ overrides IMoCState.bproDiscountPrice
BTC price of BPro with spot discount applied
Returns
the BPro Tec Price [using reservePrecision]
Arguments
bproUsdPrice
BPro USD PRICE
Returns
the BPro USD Price [using mocPrecision]
Arguments
maxBProxBProValue
⚠ This has been deprecated since the Proposal to remove leveraged positions from the protocol was approved, however it is necessary to maintain the contracts and their documentation for legacy support.
GLOBAL max bprox to mint
Returns
max BPro allowed to be spent to mint BProx [using reservePrecision]
Arguments
bucket
bytes32
Name of the bucket used
bproxBProPrice
⚠ This has been deprecated since the Proposal to remove leveraged positions from the protocol was approved, however it is necessary to maintain the contracts and their documentation for legacy support.
BUCKET BProx price in BPro
Returns
BProx BPro Price [using mocPrecision]
Arguments
bucket
bytes32
Name of the bucket used
bproSpotDiscountRate
⤾ overrides IMoCState.bproSpotDiscountRate
GLOBAL BTC Discount rate to apply to BProPrice.
Returns
BPro discount rate [using DISCOUNT_PRECISION].
Arguments
daysToSettlement
⤾ overrides IMoCState.daysToSettlement
⤿ Overridden Implementation(s): MoCStateMock.daysToSettlement
Calculates the number of days to next settlement based dayBlockSpan
Returns
days to next settlement
Arguments
blocksToSettlement
Calculates the number of blocks to settlement
Returns
Number of blocks to settlement
Arguments
isLiquidationReached
Verifies if forced liquidation is reached checking if globalCoverage <= liquidation (currently 1.04) and if liquidation is enabled
Returns
true if liquidation state is reached, false otherwise
Arguments
getLiquidationPrice
⤾ overrides IMoCState.getLiquidationPrice
Gets the price to use for doc redeem in a liquidation event
Returns
price to use for doc redeem in a liquidation event
Arguments
getBucketNBTC
⤾ overrides IMoCState.getBucketNBTC
Arguments
bucket
bytes32
getBucketNBPro
Arguments
bucket
bytes32
getBucketNDoc
Arguments
bucket
bytes32
getBucketCobj
Arguments
bucket
bytes32
getInrateBag
Arguments
bucket
bytes32
getBcons
Arguments
getBitcoinPrice
⤾ overrides IMoCState.getBitcoinPrice
Arguments
calculateBitcoinMovingAverage
Arguments
getLiq
return the value of the liq threshold configuration param
Returns
liq threshold, currently 1.04
Arguments
setLiq
sets the value of the liq threshold configuration param
Arguments
_liq
uint256
liquidation threshold
getUtpdu
return the value of the utpdu threshold configuration param
Returns
utpdu Universal TPro discount sales coverage threshold
Arguments
setUtpdu
sets the value of the utpdu threshold configuration param
Arguments
_utpdu
uint256
Universal TPro discount sales coverage threshold
getPeg
returns the relation between DOC and dollar. By default it is 1.
Returns
peg relation between DOC and dollar
Arguments
setPeg
sets the relation between DOC and dollar. By default it is 1.
Arguments
_peg
uint256
relation between DOC and dollar
getProtected
⤾ overrides IMoCState.getProtected
return the value of the protected threshold configuration param
Returns
protected threshold, currently 1.5
Arguments
setProtected
sets the value of the protected threshold configuration param
Arguments
_protected
uint256
protected threshold
getLiquidationEnabled
returns if is liquidation enabled.
Returns
liquidationEnabled is liquidation enabled
Arguments
setLiquidationEnabled
returns if is liquidation enabled.
Arguments
_liquidationEnabled
bool
is liquidation enabled
nextState
⤾ overrides IMoCState.nextState
Transitions to next state.
Arguments
setMaxMintBPro
Sets max mint BPro value
Arguments
_maxMintBPro
uint256
[using mocPrecision]
getMaxMintBPro
return Max value posible to mint of BPro
Returns
maxMintBPro
Arguments
setMoCPriceProvider
Sets a new MoCProvider contract
Arguments
mocProviderAddress
address
MoC price provider address
getMoCPriceProvider
Gets the MoCPriceProviderAddress
Returns
MoC price provider address
Arguments
getMoCPrice
⤾ overrides IMoCState.getMoCPrice
Gets the MoCPrice
Returns
MoC price
Arguments
bproToBtc
BTC equivalent for the amount of bpros given
Returns
total BTC Price of the amount BPros [using reservePrecision]
Arguments
amount
uint256
Amount of BPro to calculate the total price
docsToBtc
⤾ overrides IMoCState.docsToBtc
Arguments
docAmount
uint256
btcToDoc
⤾ overrides IMoCState.btcToDoc
Arguments
btcAmount
uint256
bproxToBtc
⚠ This has been deprecated since the Proposal to remove leveraged positions from the protocol was approved, however it is necessary to maintain the contracts and their documentation for legacy support.
⤾ overrides IMoCState.bproxToBtc
Arguments
bproxAmount
uint256
bucket
bytes32
bproxToBtcHelper
⚠ This has been deprecated since the Proposal to remove leveraged positions from the protocol was approved, however it is necessary to maintain the contracts and their documentation for legacy support.
Arguments
bproxAmount
uint256
bucket
bytes32
btcToBProx
⚠ This has been deprecated since the Proposal to remove leveraged positions from the protocol was approved, however it is necessary to maintain the contracts and their documentation for legacy support.
⤾ overrides IMoCState.btcToBProx
Arguments
btcAmount
uint256
bucket
bytes32
setMoCToken
Sets the MoC token contract address
Arguments
mocTokenAddress
address
MoC token contract address
getMoCToken
⤾ overrides IMoCState.getMoCToken
Gets the MoC token contract address
Returns
MoC token contract address
Arguments
setMoCVendors
Sets the MoCVendors contract address
Arguments
mocVendorsAddress
address
MoCVendors contract address
getMoCVendors
⤾ overrides IMoCState.getMoCVendors
Gets the MoCVendors contract addfress
Returns
MoCVendors contract address
Arguments
setMoCTokenInternal
Sets the MoC token contract address (internal function)
Arguments
mocTokenAddress
address
MoC token contract address
setMoCVendorsInternal
Sets the MoCVendors contract address (internal function)
Arguments
mocVendorsAddress
address
MoCVendors contract address
setLiquidationPrice
Calculates price at liquidation event as the relation between the doc total supply and the amount of RBTC available to distribute
Arguments
initializeValues
Arguments
_governor
address
_btcPriceProvider
address
_liq
uint256
_utpdu
uint256
_maxDiscRate
uint256
_dayBlockSpan
uint256
_maxMintBPro
uint256
_mocPriceProvider
address
_liquidationEnabled
bool
_protected
uint256
initializeContracts
Arguments
_mocTokenAddress
address
_mocVendorsAddress
address
Last updated