Proposed change to order fee mechanism

[quote author=Polo link=topic=132.msg882#msg882 date=1393349296]
I don’t have anything new to add except for motivation. People really need Counterparty to be easy to use:

[quote]Honestly, if people can’t feel secure leaving their bitcoins ONLINE, which is one of the selling points, then bitcoin does not have a future. If people have to physically move their bitcoins from cold storage everytime they want to use it, bitcoin has no future.

Do you know how much money is stored online? ( Banks, online stock brokers, credit cards, etc ). Can you imagine online banking, buying from amazon, trading stocks online, etc, if one had to physically move their cash from “cold storage” each time they wanted to commit a transaction?[/quote]

http://www.reddit.com/r/worldnews/comments/1yv6j1/mt_gox_is_dead_rumors_swirl_over_insolvency_of/cfo8uu4

Counterparty core team: the world is at your fingertips. Please do something, ANYTHING to ensure Bitcoin holders can use Counterparty directly instead of turning it into yet another altcoin that must be purchased before hand. I’m praying there’s a solution other than burning. This may be something worth creating a bounty for.
[/quote]


Assuming that this proposal goes through, a BTC -> XCP vending machine that is run by a DAC might smooth over the transition to trading on a DEX. It could be limited to small purchases and it would be likely the DAC would need to be tied to an exchange.


It would work similar to this xpost from bitcointalk forums. You would purchase XCP for BTC and not XCP and the price would need to be indicative to either the DEX or a centralised exchange. The price could be broadcast periodically by the node.
https://bitcointalk.org/index.php?topic=395761.msg5251733#msg5251733

Put yourself in the shoes of the average Bitcoin user. "Look, I don’t know WTF your proposal is, I just want to trade some stocks. WTF is a DAC? WTF is a vending machine? I just have Bitcoin man."

And that’s the best case scenario. Most users aren’t even comfortable with Bitcoin. That’s why it’s such a HUGE advantage to build your stock trading platform directly on top of Bitcoin! It’s the whole promise of Counterparty. Nobody is going to switch to Ethereum if there’s an easy option on top of Bitcoin.

Allow troll orders to throw you off that game, and words cannot describe the short-sightedness. It is that important for people to use pure BTC reserves to get going. Make it easy for people who do not own XCP to use the platform or it is DOA.

I’m just thinking aloud here, not even sure if this is possible.

What about a similar idea as proof of burn, but BTC is sent to another address (i.e. not the original address) and no XCP or anything else is created. Instead, can the XCP protocol recognize that this is now a “trustworthy” address and then let them place a BTC order (with a 0% fee) for a certain amount, based on the BTC they sent to the burn address? Ideally, we should also track when a transaction is completed, and then remove the “trusted” designation from the address. It would be ideal if this all happened behind the scenes.

Example:
1)[size=7pt][font=times new roman]      [/font][/size]I want to buy 1 BTC worth of XCP
2)[size=7pt][font=times new roman]      [/font][/size]I send 0.02 BTC to a new burn address (1CounterBTCXCPxxxxxfdhfdj)
3)[size=7pt][font=times new roman]      [/font][/size]Now I have 0.98 BTC, and the protocol allows me to place a buy order for a maximum of 0.98 BTC worth of XCP, without requiring a fee


The only small downside that I can see to this is that the 2% in point 2 above will need to be a magic number. However, it will only need to be for BTC transactions and XCP orders can be dealt with the same way we are discussing (i.e. with the fee required).


[size=11pt][font=Calibri]EDIT: Although the DEX is by nature trustless, I think it also makes sense to layer on a rating system or some way for the protocol to know if the address that is placing the order is a legitimate user or a troll. As a certain address completes successful transactions this trust rating should grow. As the trust rating for a particular address grows, that address would need to send less BTC to the burn address in order to place a BTC order. [/font][/size]

And here’s an example of why BTC direct trading should be enabled in Counterparty at all costs:

[quote]I think an even more important question is, why is Mastercoin, nxt, bitshares, emunie any less capable then what counterparty is doing[/quote]

https://bitcointalk.org/index.php?topic=395761.msg5371088#msg5371088

The correct answer is: you don’t have to buy the underlying token to use the Counterparty DEX. It is BTC driven.

A further correct answer is: Counterparty is a distributed Bitcoin stock exchange. Is Mastercoin a distributed Bitcoin stock market? No. Is Nxt? No. Are bitshares? No. Emunie? No. Ethereum? No.

Guess that just leaves Counterparty then.

Your platform is DOA without this feature.

One way to get around "Having to own XCP before being able to buy XCP on DEx." is Xcp faucet. The faucet should give a reasonable amount enough to use as DEx fee for buying a small amount of XCP, once a new user collects a pretty good size of XCP, he can make a bigger buy order.


The faucet should make it hard for user to beg more than one time. In http://mastercoin-faucet.com, user needs to verify identity from either reddit, bitcointalk, github, twitter, Facebook, or g+ in order to get some MSC. This makes it difficult for attacker to make troll order using Xcp fee coming from faucet.


So I say removing btc fee is good to go.

[quote author=Polo link=topic=132.msg888#msg888 date=1393367278]
Put yourself in the shoes of the average Bitcoin user. "Look, I don’t know WTF your proposal is, I just want to trade some stocks. WTF is a DAC? WTF is a vending machine? I just have Bitcoin man."

And that’s the best case scenario. Most users aren’t even comfortable with Bitcoin. That’s why it’s such a HUGE advantage to build your stock trading platform directly on top of Bitcoin! It’s the whole promise of Counterparty. Nobody is going to switch to Ethereum if there’s an easy option on top of Bitcoin.

Allow troll orders to throw you off that game, and words cannot describe the short-sightedness. It is that important for people to use pure BTC reserves to get going. Make it easy for people who do not own XCP to use the platform or it is DOA.
[/quote]


I’m not disagreeing with you. Giving an option.


Did you read the proposal? The DAC would be simple to use.


They have BTC, they send BTC to a given address, they get XCP back. They can trade on DEX immediately.


If the user cannot work out how to send BTC, they won’t be able to trade. On a centralized or decentralized exchange.

If users need to own XCP to use the platform, you do not have a Bitcoin stock market. You have an XCP stock market. This is NOT true today, but that point would become true regardless of faucets. No matter how easy it is to acquire XCP or how many exchanges list it, if you have to own XCP to use the platform, your platform is: fucked.

I don’t care if it makes your platform code 1000X cleaner. I don’t even care if we have to piss off Bitcoin dev team if it comes down to it. Your platform is going to die if you do away with BTC purity. It is suicide!

[quote]The DAC would be simple to use.[/quote]

I have enough trouble believing Ethereum as they spout off such acronyms. Suffice to say, I’ll believe it when I see it.

[quote author=romerun link=topic=132.msg893#msg893 date=1393370702]
One way to get around "Having to own XCP before being able to buy XCP on DEx." is Xcp faucet. The faucet should give a reasonable amount enough to use as DEx fee for buying a small amount of XCP, once a new user collects a pretty good size of XCP, he can make a bigger buy order.


The faucet should make it hard for user to beg more than one time. In http://mastercoin-faucet.com, user needs to verify identity from either reddit, bitcointalk, github, twitter, Facebook, or g+ in order to get some MSC. This makes it difficult for attacker to make troll order using Xcp fee coming from faucet.


So I say removing btc fee is good to go.
[/quote]


[size=9pt][font=verdana]I think a faucet is a good idea regardless of what else we end up doing. I registered a few sites that would be good for this and if someone has experience putting something like this together I would certainly be interested. I would also donate some XCP to get the thing started. I have these domains (plus the .net, .info, .org etc)[/font][/size]
getxcp.com
xcpbtc.com
xcpfaucet.com
xcpgate.com
xcpgateway.com


[size=11pt][font=calibri]If there is any interest I will start a faucet thread so we don’t clutter things up here.[/font][/size]

[quote author=Polo link=topic=132.msg895#msg895 date=1393371311]
If users need to own XCP to use the platform, you do not have a Bitcoin stock market. You have an XCP stock market. This is NOT true today, but that point would become true regardless of faucets. No matter how easy it is to acquire XCP or how many exchanges list it, if you have to own XCP to use the platform, your platform is: fucked.

I don’t care if it makes your platform code 1000X cleaner. I don’t even care if we have to piss off Bitcoin dev team if it comes down to it. Your platform is going to die if you do away with BTC purity. It is suicide!

[quote]The DAC would be simple to use.[/quote]

I have enough trouble believing Ethereum as they spout off such acronyms. Suffice to say, I’ll believe it when I see it.
[/quote]


If you piss off the Bitcoin devs and/or the miners then the functionality on which Counterparty relies upon will cease to exist.


[quote][font=verdana]If there is any interest I will start a faucet thread so we don’t clutter things up here.[/font][/quote]

Let’s make another thread on faucet, it’s one of those things that have to have anyway. Faucet that verifies only ip and captcha can only give out useless dust, it should verify at least email in order to give out something useful.

Developers, Do whatever you need to do to secure the market from Troll orders. If that means implementing an XCP fee based system so be it.
At a later date we can bring in some improvements to include BTCpay as well, however for now it can only be XCP based escrow.

[quote author=Polo link=topic=132.msg895#msg895 date=1393371311]
If users need to own XCP to use the platform, you do not have a Bitcoin stock market. You have an XCP stock market. This is NOT true today, but that point would become true regardless of faucets. No matter how easy it is to acquire XCP or how many exchanges list it, if you have to own XCP to use the platform, your platform is: fucked.

I don’t care if it makes your platform code 1000X cleaner. I don’t even care if we have to piss off Bitcoin dev team if it comes down to it. Your platform is going to die if you do away with BTC purity. It is suicide!
[/quote]


Point is btc fee sounds like a rich feature but it’s not practical. it’s been proven by poloniex that centralized exchange is more convenient for new user. But there is a need for DEx constantly reminding our community by tradehill, bitcoin24, gox, glbse, bitfunder, btct and more to come. We need a practical dex, or it’s worthless.

[quote author=romerun link=topic=132.msg900#msg900 date=1393373401]Point is btc fee sounds like a rich feature but it’s not practical. it’s been proven by poloniex that centralized exchange is more convenient for new user. But there is a need for DEx constantly reminding our community by tradehill, bitcoin24, gox, glbse, bitfunder, btct and more to come. We need a practical dex, or it’s worthless.[/quote]

Poloniex doesn’t prove anything. Until Counterwallet comes out, it’s not right to judge.

As of the current Counterparty protocol, users will be able to download Counterwallet, transfer in their BTC, and start trading stocks immediately.

GOD that is HUGE.

Why would anyone use another system that requires them to buy the underlying token, as in Mastercoin, Nxt, or Ethereum, when they can just use Counterparty instead?

This feature is make or break. This is the most important competitive advantage Counterparty has, BAR NONE.

No other platform allows for distributed stock trading on top of Bitcoin.

[quote author=JahPowerBit link=topic=132.msg868#msg868 date=1393292414]
Maybe to facilitate the first purchase of XCP, we could add the concept of "direct order". This type of order:

- Is associated with a unique payment address
- Did not match any other order
- Must be paid directly by a "bctpay" (without order match) by the owner of the address associated with the "direct order"

Counterparty serves as escrow for transactions traded on the forum or elsewhere. This can be a good complement to Centralised exchanges to buy his first XCP.
[/quote]


This seems workable, any objections or weaknesses to this?

Would this be a possible mechanism for direct XCP buy BTC sell transactions -
BTC seller broadcasts a Lock_time BTC transaction to open in 10 blocks with parameters matching an existing open order - if the order is matchable and still has funds, it is set to matched and removed from future order matches until the transaction goes through.
If the order is no longer matchable, the BTC seller broadcasts a higher sequence transaction replacing the previous.

[quote author=porqupine link=topic=132.msg942#msg942 date=1393557086]
Would this be a possible mechanism for direct XCP buy BTC sell transactions -
BTC seller broadcasts a Lock_time BTC transaction to open in 10 blocks with parameters matching an existing open order - if the order is matchable and still has funds, it is set to matched and removed from future order matches until the transaction goes through.
If the order is no longer matchable, the BTC seller broadcasts a higher sequence transaction replacing the previous.
[/quote]

If we’re willing to wait 10 blocks, then there are lots of possibilities…

[quote author=PhantomPhreak link=topic=132.msg943#msg943 date=1393599561]
[quote author=porqupine link=topic=132.msg942#msg942 date=1393557086]
Would this be a possible mechanism for direct XCP buy BTC sell transactions -
BTC seller broadcasts a Lock_time BTC transaction to open in 10 blocks with parameters matching an existing open order - if the order is matchable and still has funds, it is set to matched and removed from future order matches until the transaction goes through.
If the order is no longer matchable, the BTC seller broadcasts a higher sequence transaction replacing the previous.
[/quote]

If we’re willing to wait 10 blocks, then there are lots of possibilities…
[/quote]

Well we are running a 10 block average expiration on order match anyways (unless this has changed), so I don’t see how it would make a big practical difference, it would just be used to guarantee that an order is free of any other matches (that is to avoid the conflict of a multiple BTC sends attempting to fill an order, 10 blocks isn’t all together necessary for that).
The alternative would be for direct orders to ping potential transactions (via dust sends) and the first ping could be considered a valid confirmation, but for a number of reasons this seems worse than the lock_time match version (especially in favor of the lock_time version is that it has to use a valid output transaction, so this effectively absolves the problem of not being able to verify btc balance of an arbitrary address) .

[quote author=kdrop20 link=topic=132.msg899#msg899 date=1393372717]
Developers, Do whatever you need to do to secure the market from Troll orders. If that means implementing an XCP fee based system so be it.
At a later date we can bring in some improvements to include BTCpay as well, however for now it can only be XCP based escrow.
[/quote]

I agree with this sentiment and the proposed change to use escrowed XCP fee if it is the simplest solution.

The chicken/egg thing is hardly a drawback when compared to having a simple and secured market.

At the later date, we could add more complicated direct XCP/BTC orders as proposed by JahPowerBit/porqupine to solve the initial XCP purchase.

What is the current status of the fee mechanism for trades on the DEX involving BTC?

What method will be used going forward? I think there is confusion about how the fees should work.