0 Members and 1 Guest are viewing this topic.
Here is bytemasters new github comment:"1) Create new operation "issue_bitasset" that specifies an amount in USD and an amount of collateral- this operation will give the creator the requested USD and a corresponding cover order provided that (collateral/3)/usd is greater than the price feed.2) Remove all relative orders and all short orders and corresponding indexes.The end result will be a system with 3 order types: bid, ask, and cover with cover being triggered by either price, expiration or both.When a cover order expires it buys back the USD at the feed price.When a cover order is called it buys back USD below the feed at up to a 10%This system is SIGNIFICANTLY simpler to implement. A side effect is that shorts will no longer pay interest and in theory can sell below the feed. What keeps them honest is the need to buy back AT THE FEED within 30 days. In the evolution of the current system we originally had shorts that never had to cover which meant selling below the feed could end in a death spiral toward 0. The 30 day buy back rule was added after the other rules but ultimately makes the other rules unnecessary. No short will sell too far below the feed unless they think they can exit their position below that price within 30 days. "Interest" is now "paid" to those who buy below the feed and wait to sell at the feed.Removing relative orders and the "short wall" makes the system far more resistant to errors in the price feed. The price feed only needs to update a couple of times per day rather than continuously like it does now. The price feed only serves the role of judge in extreme situations and keeps everyone honest.1) It enforces reasonable collateral around 3x. If the feed is off a little then the initial collateral may be 2.9 or 3.1x but in any event the exact amount of initial collateral is not important.2) It protects shorts against market manipulation in thin markets that create "fake" margin calls, in practice as BitAsset markets grow the feed will only serve to confirm a price move and not actually trigger the margin call.3) It keeps shorts honest in the event they refuse to cover within 30 days. In this case if the feed is wrong then shorts may lose some money by being forced to pay more than necessary to buy back their BitUSD or the buy back price may be too low in which case other market participants are the judge on whether or not they want to wait for the next feed update. Shorts can completely mitigate the risk of being exposed to a feed price that is off by 5 to 10% by covering prior to expiration."
Quote from: Ander on February 12, 2015, 07:45:17 pmOkay I have an idea for yield and for forcing shorts to cover, here goes:Every so often (details to be determined), the system looks at what the price feed is for an asset, and what the highest price bid for the asset is.For example, lets say we are talking about bitUSD. The feed is $1.00, and lets imagine that the highest bid right now is $0.99, which is 1% below the feed.The system therefore declares that the interest rate charged to short bitUSD is 1% annualized. If it did this every day, it would then calculate what the daily equivalent of a 1% APR is, and declare this to be the daily yield. The system would then take this amount of daily yield collectively from the BTS collateral of all the shorts, and would divide it among all the bitAsset holders. This achieves several goals:1) BitAssets have yield. If the price of bitUSD is $1.00 or more, there is no yield at that time. If the price is 0.99 then there is 1% yield. If the price is 0.98, there is 2% yield, etc. 2) If the bitAsset falls too far below the feed, Shorts (creators of the bitAsset - they arent called 'shorts' anymore I guess) are pressured to cover because they are having the interest taken from their BTS collateral until they do. 3) This acts as a stabilizer pushing up on the price any time that it is too low, because not only do you have the hope of a possible gain, you also get interest. This counterbalances the force that pushes down on the price any time it is above the peg, which is that you can convert BTS into the asset and sell it for instant profit.There would be some technical details to work out if this was accepted, such as how often the interest needs to be calculated, how to avoid having it be manipulated (randomness in the time interval?) etc.(This post ended up at the end of a page, and its really important, so reposting on new page).
Okay I have an idea for yield and for forcing shorts to cover, here goes:Every so often (details to be determined), the system looks at what the price feed is for an asset, and what the highest price bid for the asset is.For example, lets say we are talking about bitUSD. The feed is $1.00, and lets imagine that the highest bid right now is $0.99, which is 1% below the feed.The system therefore declares that the interest rate charged to short bitUSD is 1% annualized. If it did this every day, it would then calculate what the daily equivalent of a 1% APR is, and declare this to be the daily yield. The system would then take this amount of daily yield collectively from the BTS collateral of all the shorts, and would divide it among all the bitAsset holders. This achieves several goals:1) BitAssets have yield. If the price of bitUSD is $1.00 or more, there is no yield at that time. If the price is 0.99 then there is 1% yield. If the price is 0.98, there is 2% yield, etc. 2) If the bitAsset falls too far below the feed, Shorts (creators of the bitAsset - they arent called 'shorts' anymore I guess) are pressured to cover because they are having the interest taken from their BTS collateral until they do. 3) This acts as a stabilizer pushing up on the price any time that it is too low, because not only do you have the hope of a possible gain, you also get interest. This counterbalances the force that pushes down on the price any time it is above the peg, which is that you can convert BTS into the asset and sell it for instant profit.There would be some technical details to work out if this was accepted, such as how often the interest needs to be calculated, how to avoid having it be manipulated (randomness in the time interval?) etc.
I don't think yield is important enough to take those measures.
The best I can come up with for getting yield to work is that delegates decide an interest rate that is then enforced by the blockchain somehow.
We need a way to add yield back in to the system. I think the current way actually wasnt effective, because it was better for shorts to short to themself at the feed at 0% interest. What wouldve happened in time was that everyone was going to figure this out and yield wouldve gone to 0 anyway.
The best I can come up with for getting yield to work is that delegates decide an interest rate that is then enforced by the blockchain somehow. It would be badly centralized but it could have limits that ensured it wouldnt change too fast if there was an attack.
Is 1 BitUSD is generally accepted to be worth strictly less than 1 USD? If not, then this scenario (find an offer below price feed) should be an anomaly, not a common occurrence. Anyone selling below price feed is taking a loss -- is that the norm? Should it be? Does it have to be?
Quote from: nomoreheroes7 on February 12, 2015, 07:06:44 pmSoo...what becomes of ? I don't follow all the technical stuff too well but what I'm hearing is interest may be phased out entirely...so why would I want to bank with BTS when I could bank with a bank and at least get 0.1% interest or whatever it's down to now?You buy bitUSD @ ~5/12% below the feed with amount of BTS equal to 100% feed price. Issue yourself the same amount bitUSD. Cover your cover order. You have your 5% anually, mind you in advance.
Soo...what becomes of ? I don't follow all the technical stuff too well but what I'm hearing is interest may be phased out entirely...so why would I want to bank with BTS when I could bank with a bank and at least get 0.1% interest or whatever it's down to now?
this summer
Quote from: arhag on February 12, 2015, 06:37:16 pmLet me put it in another way. Let's say there was zero BitUSD supply, then some amount of BitUSD was shorted into existence and sold to some people, but then immediately afterward they all decided they wanted to sell their BitUSD (just under the price feed) and no one else wanted to buy BitUSD. Under the current system the BitUSD supply would unwind back down to zero in at most 30 days. Under the new proposed system, there is no such guarantee.I agree that it is important that holders of a bitasset are guaranteed the ability to convert it back into BTS, at a price very near the feed, within 30 days. If the new system wouldnt allow this, it needs to be added.
Let me put it in another way. Let's say there was zero BitUSD supply, then some amount of BitUSD was shorted into existence and sold to some people, but then immediately afterward they all decided they wanted to sell their BitUSD (just under the price feed) and no one else wanted to buy BitUSD. Under the current system the BitUSD supply would unwind back down to zero in at most 30 days. Under the new proposed system, there is no such guarantee.
bytemaster thinks I am being overly optimistic about the timetable for my refactoring, and thus is looking for a change that will fix the problems but be much less expensive (in terms of developer time). This ticket is the solution he's hit upon.
TLDR, ticket in OP is still under discussion.Some history. A feature which has been on our road-map for some time is relative orders, where people can place a bid or ask at a given percentage of the feed, like "I want to buy at 95% of the feed and I want to sell at 105% of the feed," without having to run scripts and spam the blockchain with a ton transactions.I was tasked with implementing relative orders (more specifically, rehauling bytemaster's implementation to use percentages of the feed instead of absolute difference from the feed, and thoroughly testing it in preparation for release).During the testing, I found certain fundamental architectural limitations of our matching algorithm prevented us from properly matching relative orders. The same limitations also prevent certain combinations of existing order types from matching correctly in certain circumstances, which subsequently occurred on the main network. A community contributor (pmconrad) advised us of this, which I already suspected due to what I knew about the architecture, and confirmed in testing.My solution was to embark on a significant refactoring of our market engine to make orders execute the way we always intended them to. I had hoped to have it ready for initial testing this week, however I've been hugely distracted upgrading my own delegate for the 0.6.x hardfork.bytemaster thinks I am being overly optimistic about the timetable for my refactoring, and thus is looking for a change that will fix the problems but be much less expensive (in terms of developer time). This ticket is the solution he's hit upon.What we need to do is sit down and discuss the options, which will happen just as soon as I finish dealing with my obstreperous delegate VPS.
Quote from: arhag on February 12, 2015, 05:48:22 pmThis proposed change deeply concerns me. I am not convinced this won't break the peg. Specifically, it seems there is no longer any guarantee that you can sell your BitUSD at the price feed within 30 days, since new shorts can always be created that undercut you.New shorts can always be created that undercut you? Please extrapolate on this idea.
This proposed change deeply concerns me. I am not convinced this won't break the peg. Specifically, it seems there is no longer any guarantee that you can sell your BitUSD at the price feed within 30 days, since new shorts can always be created that undercut you.
Quote from: arhag on February 12, 2015, 05:48:22 pmThis proposed change deeply concerns me. I am not convinced this won't break the peg. Specifically, it seems there is no longer any guarantee that you can sell your BitUSD at the price feed within 30 days, since new shorts can always be created that undercut you.New shorts can always be created that undercut you? Please extrapolate on this idea.EDIT: Ah, the holder of the expiring short can issue a new asset to themselves, and close their old short with it, and you never get the chance to sell your at BitUSD at feed price to that person? Am I on track?
This proposed change deeply concerns me. I am not convinced this won't break the peg. Specifically, it seems there is no longer any guarantee that you can sell your BitUSD at the price feed within 30 days, since new shorts can always be created that undercut you. Not to mention it gets rid of the main source of yield for BitAssets. Maybe someone can convince me otherwise, but I think this is a bad and dangerous idea. Don't mess with our core product that we know works. The risk of breaking the market peg (and all the bad PR that will come with that even if we revert back) is not worth code simplicity.
If it turnes out to effectively eliminate yield I would be very upset that major changes like this aren't properly proposed and discussed beforehand. I understand that at certain points decisions have to be made in favour of long term success but we have to try our best not to turn this into a complete nightmare for investors.
Maybe someone can convince me otherwise, but I think this is a bad and dangerous idea. Don't mess with our core product that we know works. The risk of breaking the market peg (and all the bad PR that will come with that even if we revert back) is not worth code simplicity.
Quote from: NewMine on February 12, 2015, 05:19:42 pmWTF? Shouldn't this be done on a new chain share dropping at a snapshot or some shit. This is going to kill BTS with a major change like this.It's not really that big of a change, bitassets will still be the same before and after, but markets will be more flexible and have higher liquidity since there will no longer be restrictions on short selling at the feed.Yield might still stay due to the income from market fees, though I think ultimately all fees have to go to BTS to keep the system long term sustainable. One of the issues with yield is that in the current system if there are no active short orders competing on interest then any person with BTS can short to himself and then harvest the yield for free, ensuring that yield will always be kept low. So the entire concept of yield might not really be feasible anyway.
WTF? Shouldn't this be done on a new chain share dropping at a snapshot or some shit. This is going to kill BTS with a major change like this.
Quote from: graffenwalder on February 12, 2015, 05:36:18 pmso if you wanted to short, you now have to sell your bitasset first, before a profit can be made?Yep, you can sell the bitasset that you have issued, Then you're going to owe that bitasset to the blockchain and will be forced to buy it back at the feed price within 30 days, so if the price of BTS has increased over the 30 days you will have made a profit.
so if you wanted to short, you now have to sell your bitasset first, before a profit can be made?
Quote from: fluxer555 on February 12, 2015, 05:18:39 pmI believe this is still in suggestion phase. I think your claims are too strong without more developer input.I doubt it is part of suggestion phase. It is part of dvs/0.8.0 milestone.
I believe this is still in suggestion phase. I think your claims are too strong without more developer input.