bitshares / bsips

BitShares Improvement Proposals and Protocols. These technical documents describe the process of updating and improving the BitShares blockchain and technical ecosystem.
https://bitshares.github.io
63 stars 86 forks source link

BSIP74: Margin Call Fee Ratio #164

Closed shulthz closed 4 years ago

shulthz commented 5 years ago

When the margin call was closed by the market,the system can charge the shorter penalty fees from the transaction of margin call.

The margin call penalty fees will place in a insurance fund.

The penalty fees can be 0.1% ~ ?%(Adjusted by the community).

This will encourage the shorter to close the margin in time. This wll suppress the aggressive shorter partly to reduce the global systematic risk. The insurance fund will play a role in some place. MSSR still will be MSSR.

When the shoter was be margin called, he will sell the bts to get the BITASSET to close the position, he sold 1 bts and got 0.4 bitcny, so the system charge 10% from the 0.4 bitcny as the penalty fees.

pmconrad commented 5 years ago

Thanks.

IMO it makes little sense to open many issues here with individual ideas about how to optimize MPAs. Better discuss elsewhere and come up with one BSIP containing the results of the discussion.

abitmore commented 5 years ago

IMHO charging a fee would cause less margin calls being bought thus lead to a bigger premium in a downtrend. Due to the impossible trinity, we have to accept trade-offs. If we want to improve one side, the other side would get weaken.

For optimizing MPAs, perhaps we can wait for @biophil's project: https://bitsharestalk.org/index.php?topic=28340.0 and/or work along with his team.

Adding more parameters so the community can tune is generally good IMHO, more tools means greater flexibility. However, more tools also means greater complexity, we should have guidelines about how to tune the parameters, when should tune what and etc.

shulthz commented 5 years ago

Charge the fees was independent,MSSR still is 1.02, it wouldn't cause less margin calls being bought, the margin calls still will be eaten like now with MSSR=1.02.

The research didn't have a exact name,maybe one month, maybe one year, and the result need to test and will change too much.

Some project of MPAs have charged this fee for a long time, didn't find any problems, i think we can learn somethings from it.

abitmore commented 5 years ago

If to charge extra fee from collateral, that means the debt position would lose more collateral (than current rule) when it's partially filled, that means it's harder for the debt position to return to a healthy CR, that means stronger sell pressure, that means it's closer to black swan.

shulthz commented 5 years ago

If to charge extra fee from collateral, that means the debt position would lose more collateral (than current rule) when it's partially filled, that means it's harder for the debt position to return to a healthy CR, that means stronger sell pressure, that means it's closer to black swan.

We didn't charge extra fee from collateral, we charge the fee from the transaction of margin call.

Someone borrow 100 bitcny when bts price is 1 bitcny, CR is 1.75, he collateralized 175 bts; When the CR down to 1.35, his position was closed by the market, the system will sell 175 bts in price 0.77bitcny/MSSR=0.756 bitcny/BTS for 132.35 bitcny to close the position. The system charge 10% penalty fees from the transaction 132.35 bitcny, the shorter will get 119.115 bitcny, paid the debit 100 bitcny, and he still got 19.115 bitcny.

Yes, as the current rule, when he set the target CR 1.75, he will need to sell a little more bts for the target CR.

pmconrad commented 5 years ago

You can't buy more than the full debt. If you want to charge a fee you must take it from the collateral. (Suppose there was only one shorter - how would you buy more than the existing supply?)

In your example, CR = 1.35 means price is 1.75/1.35 (about 1.3) BTS/CNY. So the call buys 100 CNY for 130 BTS. You can take another 10% (13 BTS) as fee and return 32 BTS (=175-130-13) to the shorter.

The effect is the same as with a higher MSSR - in case of a partial fill, the remaining collateral ratio will improve less, because more collateral is spent. (Even if you take the fee from the CNY side the effect will be the same because less debt is paid back.)

shulthz commented 5 years ago

The penalty fees will not play the role like MSSR.

Take the fee from the CNY and take the fee from the BTS which will be sold is different:

The shorter set the target CR 1.75,
MSSR=1.02, he will need to sell 76 bts in 0.756 bitcny/BTS; MSSR=1.10, he will need to sell 100 bts in 0.7 bitcny/BTS

  1. Take the 10% fee from the CNY, MSSR=1.02 he will need to sell 98.3 bts in 0.756 bitcny/BTS, but in practice, he maybe sell the bts from 0.78 to 0.756 bitcny/BTS.
  2. Take the 10% fee from the bts which will be sold, MSSR=1.02 he will need to sell 88.47 bts in 0.756 bitcny/BTS, and will be charged 9.83 bts as the fee,total paid:98.3 bts.

So, charge the fee from the collateral will have the smaller sell pressure than charge the fee from the CNY.

@clockworkgr

abitmore commented 5 years ago

@shulthz you kept talking about fully filled debt positions. I and @pmconrad concerned more about partially filled positions. It's different. I agree that there is little risk if we charge some when closing a position. However, the positions that are too big thus hard to close will be impacted as well. For example, if you have a position with 100 BTS collateral, it's easy to close if sell all, market price won't change much; if you have a position with 10,000,000 BTS, even you want to sell all collateral, likely there is no so big buy support in the market.

shulthz commented 5 years ago

I have thought about the target CR, the amount of bts which was sold is less than the MSSR=1.10, didn't take too much sell pressure. Bitcny have the 600 million highest supply and now have 70 million, and 400 million was digested by the market with MSSR=1.10 and no target CR. Charge the shorter penalty fees only sell a little more bts in feed price/MSSR, and didn't give the price shock. The sell pressure mainly come from the MSSR and the debit which were very closed to the MCR. The most of the position was be eaten when the market bounced back. The target CR was used by people, if the people didn't want to use it, it will not decrease the sell pressure. If you have a position with 10,000,000 BTS and want to close it, pay back the debit and wait the feed price arise is the best useful way, the market will hard to close it in any conditions and maybe the market didn't want to eat it. We have MSSR=1.10 for a long time, hardly see people talking the price shock and sell pressure with the MSSR.

abitmore commented 5 years ago

To be clear, I'm not against adding more features/tools. Just discussing to try to find out the pros and cons and guidelines about using the features/tools.

Charge the shorter penalty fees only sell a little more bts in feed price/MSSR, and didn't give the price shock.

Every little bit counts. The last straw that broke the camel's back was not heavy at all.

The sell pressure mainly come from the MSSR and the debit which were very closed to the MCR.

IMHO sell pressure (actually the demand to close debt positions in a downtrend) is mainly due to MCR but not MSSR, although higher MSSR may lead to bigger premium in a downtrend which gives people an illusion "sell pressure is high" so may probably cause people to dump BTS in other markets. Reducing MCR can significantly reduce sell pressure but may lead to lower overall CR thus easier/closer to black swan. This is off-topic though.

If you have a position with 10,000,000 BTS and want to close it, pay back the debit and wait

It doesn't make sense to argue this way. Please focus on the topic. Although people can have fiat or other cryptocurrencies or a house to sell for bitCNY, or even loan elsewhere or get money by whatever means, it is off-topic.

The situation is, there is only BTS in collateral, the collateral will be listed for sale automatically if CR <= MCR. This IS sell pressure. If the the owner of the debt position does nothing, charging extra fees doesn't help for mitigating sell pressure.

Here I repeat again, please focus on topic.

shulthz commented 5 years ago

Focus on topic:

The shorter set the target CR 1.75, and his current CR is 1.35. MSSR=1.02, he will need to sell 76 bts in 0.756 bitcny/BTS; MSSR=1.10, he will need to sell 100 bts in 0.7 bitcny/BTS

  1. Take the 10% fee from the CNY, MSSR=1.02 he will need to sell 98.3 bts in 0.756 bitcny/BTS, but in practice, he maybe sell the bts from 0.78 to 0.756 bitcny/BTS.
  2. Take the 10% fee from the bts which will be sold, MSSR=1.02 he will need to sell 88.47 bts in 0.756 bitcny/BTS, and will be charged 9.83 bts as the fee,total paid:98.3 bts.

Charge fee(less than 15%) will give less sell pressure than MSSR=1.10 if we charge bts. Charge fee(mor than 10%) will give more sell pressure than MSSR=1.10 if we charge CNY.

Sell pressure was influenced by many factors, not only MCR and MSSR, if charge fee take the sell pressure not more than MSSR=1.10, I don't think it's a problem.

Off-topic: When we change MSSR=1.02, the main influence is the price shock, but it also reduce the sell presure.

"If the owner of the debt position does nothing, charging extra fees doesn't help for mitigating sell pressure." Mitigating sell pressure was determined by the emotion of market, lower or higher MSSR or MCR will have less help with it when the market determined not to eat it. I think it is Off-topic. The purpose of charge fee is not designed to help for mitigating sell pressure. It's very hard and difficult to cover everything.

bitcrab commented 5 years ago

it lead to nothing but less borrowing and high premium and serious shortage of smartoin. totally against this kind of idea, no doubt.

shulthz commented 5 years ago

“high premium”? where it come from? "serious shortage of smartoin"? how did you got this conclusion? How do you know it lead to nothing? can you prove it?

bitcrab commented 5 years ago

“high premium”? where it come from? "serious shortage of smartoin"? how did you got this conclusion? How do you know it lead to nothing? can you prove it?

you can read here to get a full understanding: https://bitsharestalk.org/index.php?topic=28367.0

shulthz commented 5 years ago

“high premium”? where it come from? "serious shortage of smartoin"? how did you got this conclusion? How do you know it lead to nothing? can you prove it?

you can read here to get a full understanding: https://bitsharestalk.org/index.php?topic=28367.0

This didn't have any conflict with what you write, it's a supplementary rule, and the parameter can be adjusted by the community, and you will find how useful of the parameter and fees finally. I can find some posts more early: https://bitsharestalk.org/index.php?topic=26764.0 https://bitsharestalk.org/index.php?topic=26798.0

(Edited by @abitmore: reformatted. By the way deleted 2 duplicate comments.)

clockworkgr commented 5 years ago

Personally I quite like this, and it's similar to part of an idea I've had and bounced around in TG.

I'll try and get it fleshed out and add it to the conversation.

Inmortak commented 5 years ago

10% fee for failing to increase your collateral is cannibalistic. Who in this earth is going to collateralize BTS to create BitUSD, after reading this conversation and watching the last two years BTS /USD chart?

shulthz commented 5 years ago

10% fee for failing to increase your collateral is cannibalistic. Who in this earth is going to collateralize BTS to create BitUSD, after reading this conversation and watching the last two years BTS /USD chart?

If you don't get it, I don't have time to try to convince you, sorry.

I think you should check the MAKERDAI carefully and then think about what you say.

Inmortak commented 5 years ago

Lol, you made me feel like a Larimer. Thanks for the compliment!

froooze commented 5 years ago

The margin call penalty fees will place in a insurance fund.

Every serious business has an insurance fund.

The penalty fees can be 8% -15%(Adjusted by the community).

A extra 0.1% margin call fee for bitCNY and 0.2% margin call fee for bitUSD should also work and has no real effect on the premium. No discount for users with a LTM, 100% to the insurance fund and reserve pool.

I had a similar idea with a daily BTS buyback from the insurance fund:

182

Inmortak commented 5 years ago

Hey guys, I wrote the following analysis regarding the issue. GS is only the manifestation of some more profound structural flaws in the Bitshares protocol. It's a pretty long read but, nonetheless worth the time.

Eliminating the negative impact of Global Settlement events (GS) is certainly a priority for the Bitshares ecosystem. Currently, GS is widely regarded by the Bitshares community as a natural consequence of harsh market conditions, bad debtors and poor marketing strategy. Contrary to this perspective, I maintain here, that GS might be the consequence of some other more fundamental factors in the dynamics of the whole Bitshares protocol. I postulate that if these factors are modified, the probability of a GS or a similar event is drastically reduced almost immediately and may even tend to disappear in the long term. These factors include, but may not be limited to, two feedback loops currently present in the dynamics of workers’ financing and Margin calls. This work attempts to elucidate the architectural nature of the problem, out of which GS is only an inevitable result. Also, a new mechanism is proposed.

https://steemit.com/bitshares/@aguerrido/feedback-loops-and-analysis-of-bitshares-architecture-in-relation-to-smart-assets-sustainability

shulthz commented 5 years ago

@Inmortak

164 can support this kind fund.

pmconrad commented 5 years ago

@Inmortak I disagree with your analysis. 1 The "Worker Feedback Loop" is not a loop. The reserve pool regularly pays out a small percentage of itself to workers. That percentage is not dependent on market conditions. Thus, there is no "loop". Also, the effect of this (i. e. inflation) is much smaller than in classic POW coins, plus these payments are not wasted but used on improving parts of our ecosystem, so the overall value should be growing.

  1. Confiscating margin positions with CR > 1.1 in order to cover fund undercollateralization is a bad idea. Why should "good" shorters be punished by taking their collateral away for covering for the "bad" shorters?
  2. Your proposal is not a solution. As you state, under extreme conditions you cannot uphold the settlement guarantee. Instead you want to forbid settlement, which will effectively lead to the coin being valued at the pool collateralization. This is similar to the "Global settlement protection" proposal.
  3. You explain with much handwaving that the pool will have fee income, without really explaining the mechanism for this, not with actual numbers. I strongly doubt that market fees will be sufficient to cover bad debt in a significant downtrend. For comparison, we have burned a lot of money (much more than you'll earn with fees) through that unspeakable OMO fund trying to protect a downtrend market, without much success.
Inmortak commented 5 years ago

@pmconrad

I appreciate you took the time to read. I just saw this, otherwise I would have answered you before.

1 The "Worker Feedback Loop" is not a loop. The reserve pool regularly pays out a small percentage of itself to workers. That percentage is not dependent on market conditions. Thus, there is no "loop". Also, the effect of this (i. e. inflation) is much smaller than in classic POW coins, plus these payments are not wasted but used on improving parts of our ecosystem, so the overall value should be growing.

I am all in for the workers too. I am claiming that they must be paid in stable assets instead of bts. That's it.

Precisely because, as you say, the process of paying for workers is independent of market conditions, is that we have a systemic negative feedback on immediate price. Of course, workers have a positive feedback on infrastructure for the whole ecosystem. But I am talking about the immediate effect on price here. If the workers receive thousands of bts daily that they have to short on the market, the immediate effect is a decrease in Bts price, which at its turn forces more bts to be paid next time to the workers in order to honor the USD value of the worker contract. Then, more bts dump and so on, etc.

  1. Confiscating margin positions with CR > 1.1 in order to cover fund undercollateralization is a bad idea. Why should "good" shorters be punished by taking their collateral away for covering for the "bad" shorters?

A position with a CR>1.1 is not a healthy position. Healthy positions are those with a CR> MCR, which, at the moment is 1.6 for BitUSD. In fact, what I propose is a milder form of the parcial GS initiative in which all positions with a CR<MCR are taken over. Notice that this take over would only happen whenever the pool_cr < 1 and would not necessarily affect all positions as the take over would be on a one by one basis from worst position to better positions until Pool_cr > 1. Finally, I also propose that any taken-over position can be bought back by its former holder under the condition that its collateral is brought back to MCR. So, no punishment at all is mandatory.

  1. Your proposal is not a solution. As you state, under extreme conditions you cannot uphold the settlement guarantee. Instead you want to forbid settlement, which will effectively lead to the coin being valued at the pool collateralization. This is similar to the "Global settlement protection" proposal.

Global settlement freezes the BitUSD market whenever it happens, which is whenever at least one debtor fails to keep his cr>1. What I am proposing is way different. I am proposing that under the super extreme case in which the pool_cr < 1 and all positions with cr<MCR have been taken over, the force-settement is suspended until the pool_cr > 1. Which, at its turn, is almost guarantee if the pool is always replenished.

Nonetheless, your are absolutely right here in something: My proposal doesn't solve the problem completely. Problem that, by the way, is not totally solvable. Under an ultra-bear market for example, if bts price goes to 0, it's impossible to use it for collateral of even 1 BitCent.

  1. You explain with much handwaving that the pool will have fee income, without really explaining the mechanism for this, not with actual numbers. I strongly doubt that market fees will be sufficient to cover bad debt in a significant downtrend. For comparison, we have burned a lot of money (much more than you'll earn with fees) through that unspeakable OMO fund trying to protect a downtrend market, without much success.

You are right here too. And, unfortunately, I cannot provide better feedback here. I don't have the numbers involved nor I feel I have the required prerogative. In summary, I don't fully know the finances of the network. I am claiming, however, that a protection fund is required and its existence implies its replenishing.

shulthz commented 5 years ago

maybe charge 0.5% fees first.

froooze commented 5 years ago

maybe charge 0.5% fees first.

At first I was pro margin call fee, but we should not extract value from margin positions. Instead we should minimize margin calls and use other sources of income (liquidity reward pool) for the reserve pool.

pmconrad commented 5 years ago

The discussion about specific values for the proposed new settings is a bit premature. I suggest to leave it out until the mechanisms have been specified and implemented.

froooze commented 5 years ago

The discussion about specific values for the proposed new settings is a bit premature. I suggest to leave it out until the mechanisms have been specified and implemented.

  1. Yes we need to implement new market mechanics before starting any discussion about parameters.
  2. Extracting value from already handicapped positions, makes the situation worse!
bitcrab commented 5 years ago

it lead to nothing but less borrowing and high premium and serious shortage of smartoin. totally against this kind of idea, no doubt.

I changed my mind now, actually last time the ”10% penalty fee“ shocked me. we need to find ways to get more system income, and buy back BTS using these income. at least I think margin call trading can be charged the same market fee of ordinary trading. another consideration is to add a seperate "margin call fee", in my view the margin call fee can be combined with MSSR, say, currently MSSR of bitUSD is 1.01, if we set a "margin call fee" to 0.5%, then the actual MSSR to margin call order eaters can be 1.005, and the gap contribute fees to system. however I don't think the margin call fee can be too high, it should always less than(MSSR-1)

bitcrab commented 5 years ago

If to charge extra fee from collateral, that means the debt position would lose more collateral (than current rule) when it's partially filled, that means it's harder for the debt position to return to a healthy CR, that means stronger sell pressure, that means it's closer to black swan.

it also means committee-account can get income from margin call trading and use to buy back BTS, the problem is to select a suitable fee rate to balance the fee income and stronger sell pressure

bitProfessor commented 5 years ago

it lead to nothing but less borrowing and high premium and serious shortage of smartoin. totally against this kind of idea, no doubt.

I changed my mind now, actually last time the ”10% penalty fee“ shocked me. we need to find ways to get more system income, and buy back BTS using these income. at least I think margin call trading can be charged the same market fee of ordinary trading. another consideration is to add a seperate "margin call fee", in my view the margin call fee can be combined with MSSR, say, currently MSSR of bitUSD is 1.01, if we set a "margin call fee" to 0.5%, then the actual MSSR to margin call order eaters can be 1.005, and the gap contribute fees to system. however I don't think the margin call fee can be too high, it should always less than(MSSR-1)

I currently agree with this idea.this idea may change the strategy of investors.margin call fee <1%

froooze commented 5 years ago

it also means committee-account can get income from margin call trading and use to buy back BTS, the problem is to select a suitable fee rate to balance the fee income and stronger sell pressure

We already have a margin call fee (MSSR). Extra margin call fee is extra penalty or extra risk. We should not do this. We can extract more value from other business models.

Margin call is something we wanna minimize and maximize liquidity. Lets focus on the important things: #182

shulthz commented 5 years ago

it also means committee-account can get income from margin call trading and use to buy back BTS, the problem is to select a suitable fee rate to balance the fee income and stronger sell pressure

We already have a margin call fee (MSSR). Extra margin call fee is extra penalty or extra risk. We should not do this. We can extract more value from other business models.

Margin call is something we wanna minimize and maximize liquidity. Lets focus on the important things: #182

The MSSR is a method to keep the margin call coverage, it is not a fee. We can use this fee and MSSR as a method, reduce the MSSR and increase the fee or make a balance with these two. Everyone want to sell their debit with any method, he must pay the system fee, especially margin call, the interest is necessary, this fee is a kind of interest.

I have checked the #182, i understand what you described, but i think it has hight risk which have happend in real world, must have a Min Call Ratio #161, the debter must be margin call in this Min Call Ratio, or the lender need/like to take on the risk with the debter in the common CR.

bitcrab commented 5 years ago
BSIP: 0074
Title: Add parameter "Margin Call Fee Ratio" to smartcoin
Authors:
  Jerry Liu bitcrab@qq.com
Status: Draft
Type: Protocol
Created: 2019-09-07
Discussion: https://github.com/bitshares/bsips/issues/164
Worker: TBD

Abstract

This BSIP provide a solution to charge fee from margin call trading.

Motivation

Bitshares community becomes more and more aware that BTS need a powerful economy model, one simple selection is to charge the tradings and buy back BTS using the accumulated fees, as did in many exchange platform tokens, the continuous income can help to provide smartcoin liquidity and sustain BTS price. Margin call tradings are potential to contribute a big part of the income to the system, however up to now the margin call trading is not charged, we need to find a suitable way to get this part of system income.

Rationale

Margin call fee can be seen as to pay the cost for smartcoin supply and stabilization, it is irrelevant to market fee sharing.

Specification

Add one new parameter Margin Call Fee Ratio for each(MCFR) smartcoin, which is controlled by the smartcoin owner.

Margin call order price = settlement price/(MSSR-MCFR).

Here settlement price is a new introduced parameter which is defined in BSIP71, settlement price = feed price when there is no bad debt.

When a margin call trading happens, the margin call order owner sells BTS in quantity QB and get smartcoin with quantity = QB*settlement price/MSSR, the buyer sells smartcoin with quantity = QB*settlement price/(MSSR-MCFR) and get BTS in quantity QB. the difference in paid and received smartcoin will be paid to system as margin call fee.

pmconrad commented 4 years ago

the difference in paid and received smartcoin will be paid to system as margin call fee.

See discussion above, the fee must be paid in collateral not smartcoin, otherwise it would be impossible to close all short positions with margin calls.

bitcrab commented 4 years ago

the difference in paid and received smartcoin will be paid to system as margin call fee.

See discussion above, the fee must be paid in collateral not smartcoin, otherwise it would be impossible to close all short positions with margin calls.

@pmconrad I understand that we need to ensure the margin call order owners to get enough smartcoins to close the debt, so we have 2 selections to get the fee:

  1. make buyers pay extra smartcoin.
  2. make buyers get less collateral.

and I think we should also make the margin call order price a "real price" to buyers, as buyers need to decide based on that price and the margin call fee ratio(maybe 0.005 or even higher) maybe much higher than market fee, so I select the first way and in my proposal the margin call orders will be placed at price settlement price/(MSSR-MCFR), but the margin call order owners will get smartcoins based on price settlement price/MSSR.the extra smartcoin paid by buyers is the fee, the debt owners do not get less than current status.

another point is that the margin call orders and the ordinary orders are traded in the same market, however if margin call order has fee in BTS side and no fee in smartcoin side, ordinary order has 0.1% fee in smartcoin side and no fee in BTS side, this may lead to confusion, it's not a good experience for a buyer to find a sell order with good price but after trading find he lose much after being cut off higher margin call fee.

say, there is a margin call order at 0.033USD with 1% BTS fee and an ordinary order at 0.0332 USD with 0% BTS fee, surely the buyer should eat the ordinary order firstly, although it is at higher price, but how can the matchmaking engine to ensure that?

froooze commented 4 years ago

Margin call fee does increase system risk, centralization and it is harder to close own position. Margin call fee is an extra penalty to the already handicapped positions.

@bitcrab : How high should the margin call fee be ? 0.02% - 0.05?

pmconrad commented 4 years ago

the debt owners do not get less than current status.

Suppose there was only one debt position, and it was margin called, and there's one holder who owns all the smartcoins. Now, if the holder sells all his coins into the margin call you'd expect the margin call to be filled completely. But it isn't, because part of the smartcoins will be paid out as fees.

Admittedly this is an edge case, but it illustrates the problem. The backend logic must be able to handle edge cases.

we should also make the margin call order price a "real price" to buyers

Agree.

Suppose

Alice will pay X * FP * MSSR in collateral and should receive X smartcoins. Bob expects to receive X * FP * MCFR in the collateral asset, i. e. order price = FP * MCFR. The delta X * FP * (MSSR - MCFR) in the collateral asset would be the margin call fee.

(From the term "Margin Call Fee Ratio" I would expect the fee to be calculated as a fraction of the the MSSR, e. g. if MSSR = 1% and MCFR = 90% then fee = 0.9% of called amount. But that's more of an implementation detail.)

bitProfessor commented 4 years ago

I changed my mind now, yes,no margin call fee is a feature not a bug.

I will not support it.

On 09/09/2019 21:21, froooze wrote:

I am against this, the margin call fee does increase system risk, because it is harder to close a margin position. Margin call fee is an extra penalty to the already handicapped positions. We extract here value on the wrong position.

No margin call fee is a feature not a bug!

— You are receiving this because you commented. Reply to this email directly, view it on GitHub, or mute the thread.

shulthz commented 4 years ago

Margin call fee does increase system risk, centralization and it is harder to close own position. Margin call fee is an extra penalty to the already handicapped positions.

@bitcrab : How high should the margin call fee be ? 0.02% - 0.05?

Can you tell me this how increase the system risk in Makerdao which have 13% penalty fee?

Why it is a feature in MakerDao?

Every debtor should take care of his debt, this is market, when he was margin called by the system, this mean he didn't want or have the ability to protect his position, then the system help he to deal with the position as the rule, the debtor have the chance to handle his position by hand before margin called.

If he want transfer the risk to system, and want system to handle this, he must pay something to system.

I think this maybe clearly in some point.😬

shulthz commented 4 years ago

the debt owners do not get less than current status.

Suppose there was only one debt position, and it was margin called, and there's one holder who owns all the smartcoins. Now, if the holder sells all his coins into the margin call you'd expect the margin call to be filled completely. But it isn't, because part of the smartcoins will be paid out as fees. Admittedly this is an edge case, but it illustrates the problem. The backend logic must be able to handle edge cases.

If the price of the coin go down, he will can't close his position even if he sell all his coins when his CR <MSSR and the market price <=Feed price/MSSR. With or without fee can't influence/change this.

If he sell all coin in the market by hand without margin called, he still can't close his position, as we have 0.1% market fee.🤔

bitcrab commented 4 years ago

Suppose

  • Alice has a margin-called debt position with D debt and C collateral.
  • Bob wants to sell an amount X of the same smartcoin.
  • We have a feed price FP (in terms of collateral/debt), and we have MCR and MSSR as usual, and we have the suggested MCFR.
  • We ignore _settlementoffset, _marketfee, and GS-protection for now. They are applied as usual.
  • The situation is FP * MCR > C/D >= FP * MSSR (otherwise either the position hasn't been margin called or we're already in global settlement).

Alice will pay X * FP * MSSR in collateral and should receive X smartcoins. Bob expects to receive X * FP * MCFR in the collateral asset, i. e. order price = FP * MCFR. The delta X * FP * (MSSR - MCFR) in the collateral asset would be the margin call fee.

this is acceptable, I think we can go ahead this way.

bitcrab commented 4 years ago

Margin call fee does increase system risk, centralization and it is harder to close own position. Margin call fee is an extra penalty to the already handicapped positions. @bitcrab : How high should the margin call fee be ? 0.02% - 0.05?

Can you tell me this how increase the system risk in Makerdao which have 13% penalty fee?

Why it is a feature in MakerDao?

Every debtor should take care of his debt, this is market, when he was margin called by the system, this mean he didn't want or have the ability to protect his position, then the system help he to deal with the position as the rule, the debtor have the chance to handle his position by hand before margin called.

If he want transfer the risk to system, and want system to handle this, he must pay something to system.

I think this maybe clearly in some point.😬

this BSIP will just provide the possibility to charge fees from margin call trading.

how high a fee will be charged depend on what a consensus the community can reach.

it's possible to charge 0% fee, it's also possible to charge a 13% fee, but I think it's not bad to begin with a value like 0.5%.

abitmore commented 4 years ago

If the price of the coin go down, he will can't close his position even if he sell all his coins when his CR <MSSR and the market price <=Feed price/MSSR.

This scenario is in scope of #193 (BSIP71: prevent global settlement).

abitmore commented 4 years ago

@ryanRfox please assign a BSIP number. Thanks.

ryanRfox commented 4 years ago

Assigned BSIP74

@bitcrab please make a PR with your draft text.

bitcrab commented 4 years ago

@ryanRfox done, [(https://github.com/bitshares/bsips/pull/208)]

pmconrad commented 4 years ago

Margin call fee does increase system risk, centralization and it is harder to close own position.

Debt positions pay FP*MSSR exactly as they did before. Please explain why you think this increases system risk. And please explain what this has to do with centralization, that looks really far-fetched to me.

froooze commented 4 years ago

Margin call fee does increase system risk, centralization and it is harder to close own position.

Debt positions pay FP*MSSR exactly as they did before. Please explain why you think this increases system risk.

The margin call fee does reduce the MSSR for Bob, when Alice gets not punished extra. Margin call fee does always manipulate the MSSR either on the taker or maker side!

And please explain what this has to do with centralization, that looks really far-fetched to me.

When fees are not collected, this is not a problem and can be ignored.

pmconrad commented 4 years ago

The margin call fee does reduce the MSSR for Bob

Yes. This is actually a good thing because it reduces the premium.

Originally, the theory of our SmartCoins meant the premium to be an incentive for holders to sell their SmartCoins into margin calls. In reality this didn't work. Instead, the premium was perceived very negative by market participants because they expected the asset to trade closely around the fair value.