-
Notifications
You must be signed in to change notification settings - Fork 163
Disable exchange trading of BTC in Counterwallet #560
Comments
My feedback - leave all the code there for the time being but hide it away in Counterwallet. Promote Vennd and Quick Buy and XBTC more on the UI. Leave the BTC-based trade pairs but, for example, replace the "Buy XCP" panel with a "Quick Buy XCP" panel. Get rid of the buy orders panel but keep the "Completed Trades" panel. Another idea - when a user makes a BTC order, in the background that gets converted to XBTC and the order is placed. When the order is matched it gets converted back to BTC. User starts with BTC, user ends with BTC. Obviously, warn the user that this is what is happening in the background beforehand. |
ACK
Before we know what the new UI will look like, we'll have to be further along in the development process of the alternative system. That said, I'm pretty sure that it won't be too hard to make the UX pretty consistent. An atomic exchange will probably be a multi-step (read: multi-transaction) process (in the protocol), but different (and certainly faster) than BTC trades as they are currently implemented. |
In case it's not well-known, the justification for this proposal is that BTC trades require users to settle matches sometimes a long while after the orders are made, and then the settlement must happen quickly, or the order match must be cancelled. This model is difficult to make work with a web wallet with which the server has no control over user private keys. Users then have to stay logged in to the site indefinitely to make their orders (and the orders of others) go through, and this is impossible to enforce. |
Disabling this feature should dramatically improve the experience of users that are new to Counterparty and Counterwallet, and don't know that trading with BTC on the DEx is different from trading between native Counterparty assets. |
I agree that it should be disabled. |
Really good that you guys responded so quickly to this. I was the person commenting most on the BTCpay recently and I'm also very new to crypto in general. Hopefully it can be worked around in the future but I agree it should be hidden on the exchange for now, if only because another user should not be able to actively and consistently tie up other sellers/buyers funds on the exchange. I was in counterwallet for over a week solid and saw multiple people comment their frustration on the system. And let's just say there are a couple people who have been gaming the DEx and trolling orders for that entire time period, who will be very unhappy with the changes ;) That said, I know it's probably frustrating to have to do this, but take it from a new person that I'd rather not have the option here than have 14 out of 15 trades expire while I'm waiting in counterwallet for 3 hours. Not trying to be a dick here, just giving the perspective of a crypto-noobs first impression. |
Let me also say that I think the current system would work great (albeit slow) if there weren't literally just a couple people on the exchange taking advantage of the "logout to expire order" issue. I'm certain after a little snooping that it's just one or two guys causing this whole system to fail at the moment, though I'm sure as more people join that number would rise.. |
I'm fine keeping all of the APIs in on counterblock, and just disabling it in the UI. My feeling is to keep it so that people can view BTC trade pairs, but on a BTC trade pair, the buy/sell boxes are missing, and there is a note pointing to use XCP instead (and either pointing to quickbuy, or a centralized exchange)? A potential thing here is that the BTC trading adds a HUGE amount of complexity and code to counterwallet... we can keep it in, and allow a master switch to turn it on and off, but once we have the replacement, I'm fine jettisoning the whole thing because of that. @JahPowerBit ... what are your views with this? |
I have not strong opinion about disable or not. However if we agree with the postulate, that it's impossible to have an efficient and reliable btcpay without storing private key server side, then I am in favor to completely remove BTC markets and BTCPay in a clean way. Like you said Robby, BTC trading take an huge amount of code and complexity, and can be a good thing, btw, to lighten the code, especially that If one day we find a reliable solution for a "web btcpay", it's no sure at all that the actual code will be useful. |
Only one thing: Even if we do remove BTC exchange functionality from Counterwallet, we can't remove BTC orders from the Open Orders tab, of course, as users must still be able to cancel their BTC orders. |
Q1: If BTC is altogether unavailable on the DEx, are all users going to have to denominate their assets in XBTC? My opinion: |
It'll only be disabled on Counterwallet. This is not a proposed protocol change. We won't be replacing BTC with XBTC, which is not a perfect substitute. |
If the friction is too high, then it makes sense to disable BTC, except for power users who can use the CLI. Maybe people ought to start thinking about trading against XCP anyway. |
So I guess the main question now is: do we rip out all of the BTC based code, or have a flag that turns it on and off. The former will remove a lot of complexity, and the latter adds complexity. The question is: do we think that anyone will run their own counterwallet that will want to use this BTC code? My thought is probably not...if we're having issues with it, then someone else who runs their own counterwallet will have issues with it too... opinions? |
I'm OK with removing the code. I do think that reliable BTCpay is fundamentally incompatible with client-side cryptography in web wallets. |
So what would remain BTC related:
anything else? |
Arguably you could keep both the ability to view market pairs with BTC, but I don't see any logical reason to do that, if you can't trade against BTC. |
I don't think you should be able to view BTC market pairs, and the ability to cancel BTC orders can be safely removed in a matter of weeks. |
@PhantomPhreak Yes I agree. Counterwallet is not also a block explorer, hence being able to view orders you can't fulfill makes no sense. |
@cityglut ...sure... I guess there's blockscan and the CLI to see the BTC market |
@JahPowerBit: is this work you'll be able to slate to start soon? |
if the features are already implemented, just leave them in and let users enable them in advanced options. Leave them disabled by default, and prompt a frightening disclaimer.... Definitely a better solution than removing it. |
@xnova , just need to finish the "Fast initial synchronisation" for counterpartyd and I will take care of that. I think I will start sunday or monday. |
I think this should be done in stages. Just allow an option to have it disabled in counterwallet first. And if this works out well after sometime without any impact only then consider removing the code altogether. From a non technical perspective, I can already see the "trolls" stating/shouting that you can cannot trade with BTC on Counterparty. One of the selling points of Counterparty riding on the Bitcoin network was that it was possible to trade with BTC, but with this option (although it was always some what less than ideal) removed it would be less one selling point for counterparty |
@mtbitcoin: Yes, this was my initial thought. If @JahPowerBit thinks it's not too burdensome and complex to take this approach, then I personally am fine with it. We can put this in, flick the switch to disable BTC, wait about a month, and if everything is good and no major issues, gut BTC trading from Counterwallet. @JahPowerBit , @PhantomPhreak : thoughts? |
@xnova Further down the road, is gutting BTC trade the only option? Personally I think the ability to trade BTC directly on Counterparty (was) and is one of the more major USP... The other being the security of riding on the BTC platform If I recall correctly when this was first an issue and discussed, a few proposals were put forward but most were classified as stop gap/temporary solutions and that a more permanent solution was required. |
@mtbitcoin I agree with you. I believe more people like the feature than have a problem with it. |
@mtbitcoin, @Rippler, we're not talking about getting rid of BTC trading on Counterparty. We're talking about removing the feature from this particular web wallet, with this particular security model, which is incompatible with this particular way of trading BTC. |
@mtbitcoin , @xnova , if the goal is to test technicals issues, so it's not useful to proceed with stages. Make optional or remove BTC trading is two completely different works. Test the optional mode will not help us at all to detect eventual bugs in the version without BTC trading. |
Based on user feedback, we should probably temporarily remove BTC-based trading on the exchange from counterwallet.
Note, this is a proposal to temporarily remove it from the version of Counterwallet that we host, not from the Counterparty distributed exchange.
Initial questions for community feedback:
Adam and I spoke about this. He can comment on a possible alternative here (using atomic swaps), but it remains to be seen how uniform we can make the counterwallet UI if we do swaps for the BTC pairs, and use the dex for everything else.
The text was updated successfully, but these errors were encountered: