bsip32: wording change about MSSP and 100CRP

This commit is contained in:
Abit 2018-02-17 22:35:53 +01:00 committed by GitHub
parent 7f291d9b06
commit 7480447b88
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -43,7 +43,7 @@ It's common sense that orders should be matched at maker price.
There is a parameter in price feed named MSSR, which stands for "maximum short There is a parameter in price feed named MSSR, which stands for "maximum short
squeeze ratio". Maker price of margin call orders is MSSP, which stands for squeeze ratio". Maker price of margin call orders is MSSP, which stands for
"maximum short squeeze price", is calculated as `feed_price / ( 100% + MSSR )`. "maximum short squeeze price", is calculated as `feed_price / MSSR`.
Note: `feed_price` here is in terms of debt/collateral, aka "how much debt per Note: `feed_price` here is in terms of debt/collateral, aka "how much debt per
collateral". collateral".
@ -53,24 +53,25 @@ is always used. It need to be changed to use MSSP when the call order is maker.
Currently a black swan event will occur when the call order with least Currently a black swan event will occur when the call order with least
collateral ratio is going to be matched below 100% collateral ratio price collateral ratio is going to be matched below 100% collateral ratio price
(name it CRP). Because the call order will be matched with incoming limit order (name it `100CRP`). Because the call order will be matched with incoming limit
at limit order's price (taker price), order at limit order's price (taker price),
which can be higher or lower than CRP, so even if MSSP is which can be higher or lower than 100CRP, so even if MSSP is below 100CRP,
below CRP, an incoming taker limit order may or may not trigger a black swan. an incoming taker limit order may or may not trigger a black swan.
So it makes sense to check if a black swan event will occur every time when a So it makes sense to check if a black swan event will occur every time when a
limit order is created. limit order is created.
After the behavior changed to always match at maker price, when MSSP is below After the behavior changed to always match at maker price, when MSSP is below
CRP, an incoming taker limit order will always trigger a black swan event. 100CRP, an incoming taker limit order will always trigger a black swan event.
So it makes sense to trigger the black swan event when MSSP is below CRP rather So it makes sense to trigger the black swan event when MSSP is below 100CRP
than waiting for an incoming limit order. That means it's no longer needed to rather than waiting for an incoming limit order. That means it's no longer
check for black swan event when a limit order is created. Since checking for needed to check for black swan event when a limit order is created.
black swan event is somehow expensive, we'll gain a side benefit on performance Since checking for black swan event is somehow expensive, we'll gain a side
with the change. benefit on performance with the change.
When triggering a black swan event when MSSP is below CRP, sometimes the short When triggering a black swan event when MSSP is below 100CRP,
sometimes the short
position with least collateral ratio may still have more than 100% collateral position with least collateral ratio may still have more than 100% collateral
ratio. In this case, the global settlement price is CRP but not the actual ratio. In this case, the global settlement price is 100CRP but not the actual
collateral ratio of the short position with least collateral ratio. collateral ratio of the short position with least collateral ratio.
This is current behavior, it's fair, no need to change. This is current behavior, it's fair, no need to change.