A bad debt means value of a debt position's collateral is less than value of its debt.
Currently, when a bad debt appears in the system, no matter how small the debt is, global settlement will be triggered and ALL debt positions will be forced closed. IMHO this mechanism is flawed.
Here I propose a new mechanism to handle bad debt, the core ideas are:
1. set up a special account "bad-debt-holder" in the system, with an impossible authority like null-account, so nobody can control it
2. when a new bad debt appears, don't trigger global settlement, instead, convert that debt position to a sell order which will never expire, sells its remaining collateral for its remaining debt, under the "bad-debt-holder" account
3. if the order get filled or partially filled, destroy the (debt) asset received.
In comparison to current mechanism, this new mechanism is much "softer" and more flexible. All state will be on the order book and easy to participate for all traders.
Thoughts?
Update (2018-10-21):
1. There is an edge case which slightly affect the implementation: according to
BSIP35, when a limit order is too small, it will be cancelled, otherwise will lead to "something-for-nothing" scenario which usually messes up UI. If the limit order is owned by the bad-debt-holder account, we don't like it to be cancelled, instead, we treat it like a debt position (which will overpay when filling the last Satoshi of collateral).
2. In case when the bad-debt-holder owns several bad debt limit orders for a same asset, is it better to combine the orders into one limit order and average out the selling price? I tend to say "yes", because a) it frees memory, and b) it increases the chance that all bad debts get filled, although it may lead to a larger order hanging in the market which may add psychological pressure to traders.
Do you not think that global settlement as it's currently implemented should trigger if a majority of a bitasset's supply have defaulted on their loans though? Or should the proposed mechanism operate for the full 100% of supply?
IMHO we should operate the new mechanism for the full supply (don't trigger global settlement at all). However, perhaps we can have an option for asset owners to choose when there is no supply: which mechanism she would adopt when a black swan event occurs.
I think a penalty for such undercollateralized debt position holders will help keep them more attentive to their collateral and dis-incentivize traders from operating with too little backing.
Because bad debt appears when: collateral / (feed_price*MSSR) <= debt
So if MSSR is above 1 then there will be a penalty.
Perhaps we can another parameter here to replace MSSR though.