Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - arhag

Pages: 1 ... 11 12 13 14 15 16 17 [18] 19 20 21 22 23 24 25 ... 81
256
General Discussion / Re: Where is BM?hide?
« on: March 25, 2015, 11:29:50 pm »
"The way Dan runs that company is it's a referendum on his political philosophy."

"We're not here to prove Ludwig von Mises right or wrong, we're here to build a company. So we kind of butt heads a lot and at the end of the day one of us had to go."

"By the way, Stan Larimer and Pam are some of the nicest people I have ever met in my life."

Fixed those quotes for you.

257
General Discussion / Re: EMERGENCY : the market is broken
« on: March 25, 2015, 12:56:36 am »
I still wonder whether shorts need to compete on interest, except at the feed price. It could be simpler to treat all offers above the price feed as 0% interest, assuming all shorts are rational.

Honestly, I was hoping that the market engine would be designed such that it would already be like how you describe. It just makes sense. I wonder what the devs think about that tweak to the market engine.

258
General Discussion / Re: EMERGENCY : the market is broken
« on: March 25, 2015, 12:44:01 am »
This removed the shorts from the order book, making the whole trading experience much more approachable for newcomers.

Have you seen versions of the interface with combined buy and sell tables?

The idea is that by default the trader doesn't need to care whether a BitAsset sell order is an actual sell order order (represented in that interface with red prices) or a short sell order (represented in that interface with blue prices). It seems like a normal market. Then they can look at the detailed short order table and the table of margin calls if they want.

It also removed the interest rate on shorts, which has been shown to be a gimmick because equilibrium rate is 0% (via the existing ability to self-short and take an unbounded portion of it for yourself at any time).

I think it is unfair to say the interest rate is a gimmick when only looking at market behavior during a bear market. Sure, in a bear market, shorts aren't going to offer interest, why should they? The interest mechanism is in place to prioritize shorts in a bull market.

Besides being a big change, was there a major downside to this approach?

The main downside of the approach is that it gets rids of the guarantee that BitAsset sell orders that are kept under the price feed will be matched in at most 30 days. If someone is allowed to self-short regardless of the state of the market, they can rollover their shorts indefinitely and never be forced to buy the BitAsset sells in the market. A way to resolve this is to prevent self-shorting when there is any BitAsset sells under the price feed, but in my opinion this is a less elegant solution than the system we already have.

259
General Discussion / Re: EMERGENCY : the market is broken
« on: March 22, 2015, 02:38:16 am »
BTW, the BitGold market is blocked with a 50% order too and there are no suitable bridges/external markets for BitGold. The best external offer is on bter for more than 2x the fair price.

Well there is someone selling 0.092 BitGold (actual BitGold not a short) at a price only 1.45% higher than the price feed currently. It may not seem like a lot but the two shorts expiring on March 23 and 24 only owe a total of approximately 0.00255 BitGold. Although, the shorts expiring on March 26 owe more than that 0.092 BitGold, but I think there is a good chance the bug will be fixed before then.

260
General Discussion / Re: EMERGENCY : the market is broken
« on: March 22, 2015, 02:12:23 am »
I'm not claiming its flawed, but maybe you're comment was a general one.

Yeah, sorry, I meant it generally and didn't mean to imply that you are suggesting the current design is flawed.

I was merely suggesting that beyond the quick fix, its a useful time to consider whether there is an improved way of handling this aspect of shorts, as we should do from time to time with all aspects of bitAssets.

By the way, I have some additional thoughts that I will post shortly on your BitCurrency thread. Actually, on second thought, I decided that the various corner cases made the new approach that I was thinking of more complicated for users to understand than our current BitAsset system. So nevermind, I still hold the position that the current BitAsset design is the best I've seen so far.

261
If I understood your post correctly, it sounds like you want something similar to Ripple's Offer Autobridging.

262
General Discussion / Re: EMERGENCY : the market is broken
« on: March 22, 2015, 01:42:23 am »
I am slightly shocked how much the developers ignore the severity of this bug.

How are they ignoring it?

If you want a safe quick fix, reduce the 50% max APR to something like 5%. This is one single variable and surely can not break anything else.

And what happens if that safe quick fix somehow breaks consensus. There is a process in place now to prevent bigger problems from occurring due to a fix being rushed. The last time a fix was rushed for an even bigger bug, the "fix" ending up forking the blockchain and the real fix required rolling back many hours worth of blocks (thankfully there were apparently no double spend issues). Let's avoid having a situation where the cure is worse than the disease, and follow proper testing procedure.

The devs are taking it seriously, it seems that there is already a patch being prepared, however these things still need to be properly reviewed and tested before release.

By the way, to the people with shorts expiring in the next few days (which is actually not a lot of money by the way), you do know you can sell your spare BTS (which you should always have if you are shorting) for BTC and then use the BTC to buy BitUSD via an outside exchange or a bridge like metaexchange, and then use the BitUSD to cover the short, right? That does add some fees due to the various spreads, but I bet it is much less than 10%. Just something that might be worth looking into.

263
General Discussion / Re: EMERGENCY : the market is broken
« on: March 21, 2015, 08:51:57 pm »
Why is it necessary for shorts to compete on both interest and price? If we set the price as always equal to the feed price, wouldn't the interest rate suffice to queue shorts? Then the 50% order would be at the front of the queue and easily get taken out on small volume, and interest would normalise after that.

If you force shorts to always short at the feed price, then in a bear market they will self-short and just sell the BitUSD at a higher BTS/BitAsset price in the free BitUSD : BTS market. Allowing shorts to match above the price feed just takes this two-step process and makes it a one-step process for the shorts.

The BitAsset design isn't flawed. This is simply a bug in the implementation of the design. And that bug should be fixed as soon as possible. Let's not pretend this is some flaw in the design that requires us to rethink the whole thing. It is just an unfortunate coding mistake.

264
General Discussion / Re: EMERGENCY : the market is broken
« on: March 21, 2015, 08:40:03 pm »
"Nobody can short." How is that not an absolute emergency ? If nobody took advantage of the bug until now, that's fine, but now, it's over. Nobody can short. When shorters will have to cover, they will have to buy at the price someone is willing to sell, or lose the 10%. I don't understand how the market peg can hold.

I'm just saying it's a matter of perspective. It is a serious bug that should be fixed as soon as possible. But shorts not working and even the market peg breaking is not as bad as actually having your funds stolen.

Are we sure that the expired cover orders will buy up to 10% higher than the BTS/BitAsset price feed or not? I haven't seen a conclusive answer to this. But if it is true, I wonder if shorts and forced covers can be temporarily shut down by the delegates not publishing price feeds? If so, I think it would make sense to do that to buy shorts time until this bug is fixed.

Or actually, the delegates could offset the price feeds by 10% so that the expired cover order is limited to the real price feed. The call price being at a slightly lower BTS/BitAsset price temporarily is not a big deal, and shorts can't short now anyway.

265
General Discussion / Re: EMERGENCY : the market is broken
« on: March 21, 2015, 07:12:48 pm »
So... nobody seems to really care. Crazy.

I mean it is a serious bug, but I think "absolute emergency" is an over-exaggeration. The worst case with this bug is that shorts are suspended and anyone who already has a short position is unable to roll over their shorts. So it sucks if you are forced to exit your short position (either by buying BitUSD to cover or by others buying up your expired cover order at the price feed) when you did not intend to, but as far as money-related bugs go this is fairly tame IMO. It isn't as bad as the previous transaction malleability bug that would allow someone to nearly empty out your balance if you transferred a small fraction of your balance to them.

267
Also arhag:  You have a ton of potentially useful proposals scattered all about the forum. What would you think about organizing them on some central repo with descriptions and author attribution? I think it would be a good idea to keep these gems from getting buried in the forum.

Well, I have already sort of started that process with this post. But as I mentioned in that thread, I would really like to start seeing a list of post-1.0 features ordered by priority on an official roadmap. Once we have a process in place where people can submit formal proposals for changes or new features to the core devs and have them actually maintain a prioritized list of features to implement on an official roadmap, I would be happy to tidy up my proposals and officially submit them as part of this formal process.

But many people have been asking the core devs for a proper roadmap for a while now, and so far nothing. And GitHub issues and milestones are not a great tool for that and, as you can see in that linked thread, apparently one shouldn't derive any meaning or expectations from the fact that an issue happens to be tagged for any particular milestone.

268
Hey gamey if you haven't already, please hook up with robrigo so he can get you into the slack and mumbles.
I think he's settin something up for this weekend so we can coord this.
Thanx :)

 This post made my day  :)

 :)

 ;)

Mine too:)  :P

269
General Discussion / Re: Reworking the wallet trading interface
« on: March 21, 2015, 12:17:47 am »
Thanks for all the feedback everyone! I've kept working on this yesterday and today, and now have a workable version combining what I had with some of your ideas. I hope you'll recognize it Arhag ;)



All orders are now grouped together, shorts with sells and buys with covers (covers not yet implemented). Shorts are color-coded blue, buys green, sells red.

Clicking on "Account orders history" replaces the blockchain orders with your personal orders.

Volume, high, low and change are for the current day.

Clicking on the "Margin calls" or "Shorts" button makes the respective tables visible one level below the current tables. Inverting the market switches the buttons correctly.

Clicking on the "Cover" tab replaces the orders history table with the open margin orders table, I had to put it there due to space issues.

For the courageous you can check it out by pulling the branch from github as always.

Nice job!

Can you include other screenshots like what it looks like when you flip the market or when you press the "Margin calls" or "Shorts" buttons.

Also, I think you should allow the left column to change width as necessary to fit the tables (so that the open margin orders table can appear under the Cover tab), and  just push the other columns to the right (meaning allow for horizontal scroll on smaller screens). In that case, I think it would be better to switch the middle (price history) column with the right (market depth) column, because as Shentist said it is the more important information especially when you are ready to buy and sell. And, it would be nice if the left column could be a drawer that you could hide and pull out as desired. On smaller screens you could see the market depth and price history columns, and then when you are ready to place or cancel orders, you can pull out the drawer which might push the price history column slightly off-screen (it could be reached via horizontal scrolling though). When you are done you can again hide the drawer and see the full market depth and price history columns in the browser window. And on larger screens, the drawer could be left open and all three columns would be visible at all times.

Edit:
Also, I would really like to see the following under the "BitUSD : BTS" label:
Code: [Select]
Show quantity in [ BitUSD |v]  Show price in [ BTS/BitUSD |v]
Where the [ ... |v] are drop down boxes.

The first drop down box would have two classes of items. The first class is the Base class, which in this case would include BTS as well potentially other SI variations of BTS units such as kBTS (these other options other than the base unit would have to be manually specified per asset type). The second class is the Quote class, which in this case would include BitUSD as well as its other potential (manually specified) SI variations. Changing the quantity selection would make replacements everywhere a quantity field is shown in the page which includes the boxes in the Buy, Sell, Short, Cover tabs, the Buy and Sell tables, "Blockchain Orders History" table, "Account Orders History" table, "Open * Orders" tables, "Margin Orders" table, "Short Orders" table, the vertical axis of the volume bar charts under the price history chart, the vertical axis of the market depth chart, and the Volume label.

Each class of items would have a default unit choice. The default selection to display the quantity fields would be the default unit choice within the Base class. So in a "BitUSD : BTS" market the default quantity display selection would be the default choice in the BTS class (perhaps kBTS would be a good default in this class). In the "BTS : BitUSD" marekt the default quantity display selection would be the default choice in the BitUSD class (perhaps just sticking with BitUSD would be a good default in this class).

The second drop down box would have various items for different units of a Base/Quote price (thus BTS/BitUSD in the "BitUSD : BTS" market). Inverting the prices would require flipping the market. However, the drop down would allow displaying the price in different units within this Base/Quote price class. There would always be the typical option (in this case BTS/BitUSD or BitUSD/BTS), but other options could be manually added for each market. For example, in the "BTS : BitUSD" market one might add BitUSD/kBTS unit as an option. And in fact, that might be chosen as the default price unit in the "BTS : BitUSD" market since the prices (currently) look nicer in BitUSD/kBTS (for example the price feed right now in the "BTS : BitUSD" market is around 8.08 BitUSD/kBTS). Changing the price selection would make replacements everywhere a price field is shown in the page which includes the boxes in the Buy, Sell, Short, Cover tabs, the Buy and Sell tables, "Blockchain Orders History" table, "Account Orders History" table, "Open * Orders" tables, "Margin Orders" table, "Short Orders" table,  the vertical axis of the price history chart, the horizontal axis of the market depth chart, and the High, Low, Latest Price, and Call Price labels.

A few other things.

All non-editable quantity fields should show the same number of decimal places everywhere (with proper rounding) and all non-editable price fields should show the same number of decimal places everywhere (with proper rounding). Right now the prices in the tables have 3 decimal places while the prices in the labels at the top have 4 decimal places. Even worse, the volume label is displayed in BTS (and so is the market depth chart vertical axis) while all other quantity fields are in BitUSD. In my opinion these should all be the same unit (as described above) and also the number of decimal places in the Volume label at the top should be the same as the decimal places in quantity fields in the tables. However, clicking on a particular order from the Buy and Sell tables may fill in prices and quantities at a higher level of precision (perhaps in the maximum precision of the asset) in the fields of the Buy/Sell/Short box. Also the detailed information shown in the tooltip when hovering over any table item (or even the labels at the top) can show the quantities and prices with higher precision (perhaps in the maximum precision of the asset for quantity values)

I think the market label at the top ("BitUSD : BTS") should make both the Quote and Base asset hyperlinks that send the user to the page specific about the asset. This would be something like the "Asset Info" tab of the asset on bitsharesblocks.com.

Finally, you should change the color of the "Shorts" button to blue to match with color of the prices of short orders in the table below it. And you should change the color of the "Margin calls" button to something other than green, red, or blue so that it is not confused with regular buy or sell orders or with short orders. This should be the same color as the color of the prices of margin cover orders (and optionally expired cover orders) in the table below it. In fact, I would rename the "Margin calls" button to just "Calls" (and rename the "Margin Call Orders" table to "Call Orders") so that it encompasses both (potential) margin calls and (potential) expired calls. Then the "Call Orders" tables could further disambiguate between an order that is "Not Called" (a short position that has not yet been margin called and has not yet expired), "Expired Call" (a short position that has expired but not yet been margin called), or "Margin Call" (a short position that has been margin called regardless of whether it has expired yet or not).

270
Great, more concerns are being mixed into delegates. They are becoming a catch-all for every role. We need to separate concerns.

The best person to be a block producer is not the best person to act on the PR board or make decisions about the future of the blockchain (a board of directors) who is also not the best person to execute those decisions (developers, marketers).

To separate concerns we will need stake-based proposal voting on the blockchain. It is an acceptable hack to add these roles to the delegates for the time being until such a proposal voting system is built. But I think it is essential to eventually build proposal voting support into the client and I think it is a mistake to keep overloading the tasks of the delegates for too long.

I would like to see the delegates eventually only act as block producers and the authority to submit binding proposals / dynamic parameter changes (some of which may require a quorum of stakeholders to approve before they become ratified).

Generalized BitAssets would allow the creator of the BitAsset to specify a name, margin call limit, collateral asset type, expiration period, initial description, initial feed price definition, and initial authority. If a certain quorum of the current authority agrees, they could change the description, authority, or feed price definition.  The feed price definition could be a mathematical expression dealing only with multiplication and division operations and terms that are either constants or price feed sources. The authority can optionally be set to the dynamic set of top 101 delegates. Anyone could create a price feed source which defines an initial authority, the initial feed providers, and some additional parameters governing price feed aggregation. If a certain quorum of the current authority of a price feed source agrees, they could change the authority or the feed providers of the source. The feed providers regularly publish prices into the price feed source and a median of those provided prices is used to determine the latest price of the price feed source (there are other details left out such as how a price feed source determines if a price is stale and should be ignored). Either the authority or feed providers of the source or both could optionally be set to the dynamic set of top 101 delegates. Until generalized BitAssets are built, the price feed of BitAssets can be hard-coded to come from the median of the delegate price feed submissions as they do today.

Binding proposals submitted by a majority of the delegates would allow for changing certain dynamic parameters in the blockchain (e.g. minimum transaction fee, asset registration fee, etc.) as well as hiring and firing workers (who would not necessarily be delegates) or changing their salary. If the new total pay of all workers is within the current budget limit, these "worker change" binding proposals become ratified by only a super majority approval of the delegates (who will typically merely act as a proxy for the decisions of the board of directors, to be discussed below, who in turn are guided by the wishes of the shareholders via non-binding proposals). If the budget limit needs to be increased, a "budget limit change" binding proposal can be submitted by a majority of the delegates and ratified by approval from the necessary quorum of shareholders. Until such functionality is enabled, workers will just use helper delegates and get paid from a fraction of their delegate pay (as is done today), and other parameters of the blockchain can only be changes through hard forks (as is done today).

Finally, non-binding proposals would allow the stakeholders to add and remove members (they don't have to be delegates) from the board of directors group (by add and remove, I mean conceptually, since these are non-binding proposals and so the set of board members is not actually known to the blockchain itself). This board of directors would be privy to the internal discussion of key workers (such as the core developers) and future plans for the BitShares ecosystem. They would approve of the release of PR-vetted information out to the public. They can delegate the task of PR vetting to another PR review board better suited to handling that task (which can include a subset of the board of directors as well as other trusted members outside the board) but at the end of the day each board member is the one who has to put their seal of approval (or not) on releasing information to the public (so the shareholders can know who to vote out if necessary). Also, some of the internal deliberations surrounding the decision that was made public should also be publicly released (potentially redacted if necessary) so the shareholders can better know who to vote out of the board and who to keep. Finally, some decisions that are more controversial, but that the board nevertheless agrees is important to reach a consensus on, can be released as an official proposal (not an official final decision) to the public, and they should rely on non-binding proposal voting by the shareholders to determine whether the proposal is ratified (thus becoming an official decision) or not.

In this system, as long as the delegates do a good job at producing blocks (and potentially also providing price feeds) and also follow the chain of command when submitting and potentially approving binding proposals (such as worker-related changes or changes to dynamic parameters on the blockchain like transaction fees), they can be fairly confident that they won't be voted out. By following chain of command, I mean that they keep track of who the members of the board of directors are and how much quantitative influence each has in decision votes (to be determined by following the results of related non-binding proposals that have the necessary approval by shareholders) and that they follow the public final decisions made by the current board of directors that have some predefined quorum of their approval. Shareholders provide a check and balance on the board of directors through the use of non-binding proposals to replace board of director members if necessary. Also certain significant binding changes to the blockchain, such as "budget limit change" proposals and eventually "hard fork" proposals, would require enough of the shareholders' direct approval votes in order to be ratified and actually make the change happen on the blockchain. If some delegates are not respecting the changes to the board of directors made through the non-binding proposals, the shareholders can always vote out those delegates and replace them with delegates who will follow the official chain of command.


Pages: 1 ... 11 12 13 14 15 16 17 [18] 19 20 21 22 23 24 25 ... 81