UpdatePositionSizeLifecycles
Last updated
Last updated
This is an external library for position size updates lifecycles Used by GNSTrading and GNSTradingCallbacks facets
Initiate increase position size order, done in 2 steps because position size changes
Name | Type | Description |
---|---|---|
Initiate decrease position size order, done in 2 steps because position size changes
Name | Type | Description |
---|---|---|
Execute increase position size market callback
Execute decrease position size market callback
Returns current address as multi-collateral diamond interface to call other facets functions.
Basic validation for increase/decrease position size request
Creates pending order, makes price aggregator request, and returns corresponding pending order id
Basic validation for callbacks, returns corresponding cancel reason
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
_input
request increase position size input struct
_input
request decrease position size input struct
_order
corresponding pending order
_answer
price aggregator answer
_order
corresponding pending order
_answer
price aggregator answer
_trader
address
trader address
_index
uint32
trade index
_trade
trade to update
_isIncrease
bool
whether is increase or decrease position size order
_collateralAmount
uint120
partial trade collateral amount (collateral precision)
_leverage
uint24
partial trade leverage (1e3)
_positionSizeCollateralDelta
uint256
position size delta in collateral tokens (collateral precision)
_expectedPrice
uint64
reference price for max slippage check (1e10), only useful for increase position size
_maxSlippageP
uint16
max slippage % (1e3), only useful for increase position size
_trade
trade struct
_answer
price aggegator answer