Avoid cheating and denial of service attacks during bull/bear market by adapting bond system #1792
gustavonmartins
started this conversation in
Ideas
Replies: 1 comment
-
You made here a lot of good points. That said, you can actually set your bond and the wait time if you enable "Advanced Options" while creating your order |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
What is the scenario that originated this discussion:
Supposed someone is a taker to buy BTC at a certain price, paid their bonds, but the seller did not interact after that.
Then the buyer B gets half of the bond back, but had to wait one extra day to buy again (it was night, so they had to sleep). On the mean time, BTC price went up by 6% and they had to buy it a higher price
As they got half of the bond back (half of 5%), they lost 3.5% (6% - 0.5*5%).
And the seller is now 1% better off (6% price increase - 5% bonds lost).
What is the general issue here:
How the current system makes a denial of service attack easy
A DOS attack could be someone flooding the market with offers, making honest offers becoming difficult to find. Then the attacker steps out of the deal after the buyer paid the bond. The seller makes another offer when the market is better, profiting from the attach/cheat.
What is my proposal
I tend to think cheaters should come at a loss in order to avoid a Denial Of Service attack. Denial of service attacks can only happen when the cost for the attacker is much lower than his benefit from it. The only way to stop it is to change their cost/benefit rate
My proposal is that there is a minimum bond that gives buyer the guarantee that if the trading is not completed due to the other side, that if the price goes up on the mean time, the buyer gets a share of the bond corresponding to the increase in price, as to not lose any money from the trade.
For his to work, the initial bond paid will have to be high enough to cover this case, plus whatever is needed so that the seller is negatively impacted by trying to cheat / creating a DoS attack
Examples of the proposal working:
On the previous day of the trade, the market went up by 7%. Thus, the seller S pays a bond of 7%
Buyer B pays also 7% bond.
S cancels the trade, expecting to get more money by selling the next day.
S loses 7%, and waits another day to sell. His net profit for cheating is 0%, so he has no incentive to cheat.
B got 7% of the trade (the bond), so he is not in financial loss, and can buy from someone else at 7% higher price paying with his 7% bond, so he has 0% loss.
Where this can get tricky
Variations of the proposal which might be easy to implement:
There are many formulas for volatility (like ATR and standard deviaion), but something simple can be done on the beginning (last days close to opening price ratio).
Based on this, a minimum bond should be used. In case this is against "free market" ideology, the user interface can just let the user know that the bond is only enough to cover x hours of volatility.
We can also think if the goal is that a cheater comes with 0% net profit, or if they should come at a loss. If a loss is intended, the extra bond (x% on top of 7% of the example) can be shared between coordinator and the cheated buyer.
Beta Was this translation helpful? Give feedback.
All reactions