Bitcoin Forum
June 22, 2024, 10:10:54 AM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: « 1 2 3 4 5 6 7 8 9 10 [11] 12 13 14 15 16 17 18 19 20 »  All
  Print  
Author Topic: P2P Exchange for bitcoin  (Read 42590 times)
doobadoo
Sr. Member
****
Offline Offline

Activity: 364
Merit: 250


View Profile
April 16, 2013, 11:28:20 PM
 #201

Tier Nolan, sounds like the colored coin idea.  The portable iou is the colored coin, you negotiate its exchange with other users.  Whoever ends up with the coin when it comes time to redeem though, would have to establish a relationship with the broker house (or already has one). 

So would this colored coin run on its own block chain or leech off the btc network?

i also wonder about liquidity.  for it to exist the items being exchanged must be fungile.  I might not want you gox colored coin, he might not want my bitinstant colored coin.


Also whatever exchange we start, it will be really hard for us to get it going.

1) There must be 1 broker first (see 5)
2)Miners/market makers who will process whatever order book system would have to be incentivized to run the software.
3) whats the hash reward early on when no one is trading, not a terribly hard one to overcome though
4) who will deposit the first cash and btc with the broker (unless we sign an established xchange on first, say one of the floundering non-goxxes looking for a new angle to fight the Gox)

5)  Why will this new broker ever extend trust (and thus clearing) with a 2nd exchange?  If the customer deposit/relationship is the revenue driver, why ever let any one else into the biz?  ( I have an idea for this, some one start the first broker as a non-profit, who will build a customer base, then freeze new accounts to make room for competition.  The Foundation would be the catalyst for forcing all the new players to let new ones in, as they will always be fair and clear with any legitimate new player.  If you refuse to clear with firms the foundation wants to include, foundation stops trading with you, isolating your customers from the big liquidity.)

"It is, quite honestly, the biggest challenge to central banking since Andrew Jackson." -evoorhees
doobadoo
Sr. Member
****
Offline Offline

Activity: 364
Merit: 250


View Profile
April 16, 2013, 11:30:17 PM
 #202

Hows about a name for this system?

What do you think of Bitcoin Open Exchange (BOX)?

"It is, quite honestly, the biggest challenge to central banking since Andrew Jackson." -evoorhees
TierNolan
Legendary
*
Offline Offline

Activity: 1232
Merit: 1084


View Profile
April 17, 2013, 12:17:23 AM
 #203

Tier Nolan, sounds like the colored coin idea.  The portable iou is the colored coin, you negotiate its exchange with other users.  Whoever ends up with the coin when it comes time to redeem though, would have to establish a relationship with the broker house (or already has one).  

Brokers make public promises about the trust links.  These can then be scanned by software.  It moves the "settling up" into the background.

Moving IOUs from one broker along a path to another broker would be included in the block chain.

Quote
So would this colored coin run on its own block chain or leech off the btc network?

i also wonder about liquidity.  for it to exist the items being exchanged must be fungile.  I might not want you gox colored coin, he might not want my bitinstant colored coin.

I was thinking an alternative block chain in this case.

A user could convert an IOU from one broker to an IOU from another broker by adding it to the block chain.  This would move the trust link between the 2 brokers.

The brokers can reset the link by both signing that the link it re-centered.  A broker can unilaterally reduce how much he trusts another node.  However, he can't reduce it past what he is owed.

If a broker was owed $25k from another broker but had stated that he trusted the broker for $100k, then he can only reduce the trust to $25k.

If a user has an IOU from a broker, they can cash it in.  If that is a face to face operation, then they can take the cash and then sign to cancel the IOU.

However, for an online broker, they will have to sign that the IOU has been paid, before the broker sends the money.

Paying an IOU for BTC could be confirmed digitally.  

Quote
1) There must be 1 broker first (see 5)

If someone intentionally destroys 10BTC, then that would show they are serious.

Ripple has everyone as a trust node.  However, I think that is to fine a resolution.

Quote
2)Miners/market makers who will process whatever order book system would have to be incentivized to run the software.

There could be a similar system to bitcoin.  You can divert some of the funds transferred to winning miner.

Transactions are adding and cancelling orders and any of the other broker updates to the trust chains.

Quote
3) whats the hash reward early on when no one is trading, not a terribly hard one to overcome though

The faster the better probably.  If the exchange works by combining trades over 10 minutes, then that would be the block difficulty target.

Quote
4) who will deposit the first cash and btc with the broker (unless we sign an established xchange on first, say one of the floundering non-goxxes looking for a new angle to fight the Gox)

Lots of small amounts could work here.  Maybe selling scratch cards could operate as a loss leader.  They cost around 30 cents for a custom one.  You sell a $10 one for face value.  That costs the broker $0.30 + other costs.  Eventually he would have to get that money back on fees and hopefully people don't turn in the IOUs.

Quote
5)  Why will this new broker ever extend trust (and thus clearing) with a 2nd exchange?

If you make it easy to start new brokers that is not an issue.  Brokers will want to be accepted by as many people as possible.

1LxbG5cKXzTwZg9mjL3gaRE835uNQEteWF
Rassah
Legendary
*
Offline Offline

Activity: 1680
Merit: 1035



View Profile WWW
April 17, 2013, 01:21:39 AM
 #204

Glad you asked, functionally nothing is being "secured" against with a PoW.  What they are doing is solving a hash which naturally creates a random window as to when da tradez go down.  People wanting liquidity will need to submit the order early in the window to have a quick execution, people more price sensitive might want to see how committed bids and offers shape up before deciding if they want to participate (trading off execution speed for price sensitivity).

 The difficulty of the hash function will adjust the rapidity of the blocks.  initially there will be little volume, so maybe a 10 or 15 minute initial difficulty window.  Then when trades pick up, volume triggers will drop the difficulty lower to allow for quicker blocks. 

I think having to wait to execute the trade would really really suck. It would basically be exactly like the lagged Gox exchange, where no one knew what the actual price was, and bid blindly.

The PoW also solves the who's trades meets who's.  Its the problem of the 3 generals using a delayed communications system trying to coordinate an attack on the enemy problem that Satoshi pointed out that was solved with PoW in Bitcoin.  Some relays will hear some tx's sooner than others, some relays/miners will not hear some at all.  Whatever miner hits the hash solution first decides (according to a standarized algo) the price and trades that go thru.  The brokers then look to this PoW chain to officially determine what client orders executed and in what amount.

Unnecessary. Remember, we're dealing with clients looking for trades here. If a match between a buyer and a seller comes up, and somewhere far away anther double match shows up, the client will already have his match and will reject any new matching attempts. So I think something like a Bitcoin transaction memory pool, without having to actually mine the orders into a block will work fine.
doobadoo
Sr. Member
****
Offline Offline

Activity: 364
Merit: 250


View Profile
April 17, 2013, 02:50:25 AM
 #205


I think having to wait to execute the trade would really really suck. It would basically be exactly like the lagged Gox exchange, where no one knew what the actual price was, and bid blindly.

You would have the previous block as a guide to where the price discovery and liquidity depth is.  You won't bid blindly.  I've use trading systems even more blind that this on wallstreet.  You enter the number of shares and the maximum you are will to pay.  Others do the same, but you don't see their bids and offers.  Then on or about every half hour the system crosses you anonymously with all the other overlapping trades, resolving allocation and price according to weighted averages.  

I guess you just have to see it in action to believe it.  Its a really neat trick.  Only diff is with Bitcoin Open Xchange (calling it this from now on), you could see every ones order.  So there would be even more price transparency.  If it works not seeing any one's competing orders, it sure as shit can work with more price/depth disclosure.  Trust it.  The logic is sound.
Quote
......Whatever miner hits the hash solution first decides (according to a standarized algo) the price and trades that go thru.  The brokers then look to this PoW chain to officially determine what client orders executed and in what amount.

Unnecessary. Remember, we're dealing with clients looking for trades here. If a match between a buyer and a seller comes up, and somewhere far away anther double match shows up, the client will already have his match and will reject any new matching attempts. So I think something like a Bitcoin transaction memory pool, without having to actually mine the orders into a block will work fine.

You fundamentally misunderstand the problem.  You transmit your tx to many relays with the hope of fast execution.  So what the first one that responds is the one you execute with?  Well what if he's just relaying some one else tx, and that original tx was filled with some one else while you were negotiating.  Now i suppose you could include your ip in the order or something.  but how do two parties confirm, and what will you do to me if i confirm with you, but then hear a better price from some one else and confirm with that dude.  Who is the ultimate arbiter of what is a valid trade.  With my PoW system, the PoW system says so.


"It is, quite honestly, the biggest challenge to central banking since Andrew Jackson." -evoorhees
doobadoo
Sr. Member
****
Offline Offline

Activity: 364
Merit: 250


View Profile
April 17, 2013, 02:56:29 AM
 #206

Tier as i read what you are describing I can't help but think, wrf, this is exactly what i'm proposing said a diff way. 

You: The ious are submitted to the PoW block chain by the client looking to trade.   
Me: The broker who you have the iou with is directed by the client to have HIM submit the iou to the PoW block chain and miners would monitor net balances of ious to make sure they are within the credit tolerances. 

Functionally they are the same, but my way is +1 XP for privacy, cause i don't have to fix my IP to the origination of the tx to buy or sell.  I tell gox to go send the order to market on my behalf, and when he squawks it i just relay it to all the miners i know.

maybe my whole description sucks in those earlier posts, but i'm sure we are fundamentally describing almost the exact same thing, if only your structure just sounds a hair different.

"It is, quite honestly, the biggest challenge to central banking since Andrew Jackson." -evoorhees
gollum (OP)
Sr. Member
****
Offline Offline

Activity: 434
Merit: 250


In Hashrate We Trust!


View Profile
April 17, 2013, 03:13:16 AM
 #207

Tier as i read what you are describing I can't help but think, wrf, this is exactly what i'm proposing said a diff way.  

You: The ious are submitted to the PoW block chain by the client looking to trade.  
Me: The broker who you have the iou with is directed by the client to have HIM submit the iou to the PoW block chain and miners would monitor net balances of ious to make sure they are within the credit tolerances.  

Functionally they are the same, but my way is +1 XP for privacy, cause i don't have to fix my IP to the origination of the tx to buy or sell.  I tell gox to go send the order to market on my behalf, and when he squawks it i just relay it to all the miners i know.

maybe my whole description sucks in those earlier posts, but i'm sure we are fundamentally describing almost the exact same thing, if only your structure just sounds a hair different.

What do you think about having separate blockchains for each exchange? something like file sharing torrents, you choose which torrents (files) to share.
Here you choose which exchanges to share (share, host, mine or whatever we wanna call it).
Some parts of the system can be distributed to all miners if needed, for example executed transaction history.
doobadoo
Sr. Member
****
Offline Offline

Activity: 364
Merit: 250


View Profile
April 17, 2013, 05:15:11 AM
 #208


What do you think about having separate blockchains for each exchange? something like file sharing torrents, you choose which torrents (files) to share.
Here you choose which exchanges to share (share, host, mine or whatever we wanna call it).
Some parts of the system can be distributed to all miners if needed, for example executed transaction history.

Interesting idea.  Trying to figure how this would impact the network. More decentralization this way?  Lemme think this one thru.  You see if you have a bunch a brokers, some of those brokers may not want to trade with new startups (why enable the competition) and thus not endorse their exchange key (eg not establish them in Web of Trust). 

So if the small fry brokers had a way to start up their own little trading pit, that might help enable more competition amongst brokers.  As the market for bitcoin users grows, the startup guys will attract new biz cuz the big boys who don't wanna play with them might be goxxing it with high fees and shitty service.  So the 'alt-pit' would grow to a point where desire for liquidity and fear of losing customers would eventual bring the gox boys around to integrating with the alt-pit.

You don't want any broker to somehow use his position to corner liquidity, cuz then he can raise fees and goxx it.

Probably put all the hash solutions of each competing trading pit together as a merkle root, which might somehow make their tx's cross compatible.

Need to sleep on this.  Let it roll around in my brain.

"It is, quite honestly, the biggest challenge to central banking since Andrew Jackson." -evoorhees
nwbitcoin
Sr. Member
****
Offline Offline

Activity: 294
Merit: 250


You are a geek if you are too early to the party!


View Profile WWW
April 17, 2013, 07:50:58 AM
 #209

Tier as i read what you are describing I can't help but think, wrf, this is exactly what i'm proposing said a diff way.  

You: The ious are submitted to the PoW block chain by the client looking to trade.  
Me: The broker who you have the iou with is directed by the client to have HIM submit the iou to the PoW block chain and miners would monitor net balances of ious to make sure they are within the credit tolerances.  

Functionally they are the same, but my way is +1 XP for privacy, cause i don't have to fix my IP to the origination of the tx to buy or sell.  I tell gox to go send the order to market on my behalf, and when he squawks it i just relay it to all the miners i know.

maybe my whole description sucks in those earlier posts, but i'm sure we are fundamentally describing almost the exact same thing, if only your structure just sounds a hair different.

What do you think about having separate blockchains for each exchange? something like file sharing torrents, you choose which torrents (files) to share.
Here you choose which exchanges to share (share, host, mine or whatever we wanna call it).
Some parts of the system can be distributed to all miners if needed, for example executed transaction history.

This sounds like the kind of modular approach that should work - plus, if it does work like a torrent, the more popular it becomes, the faster it would become, due to there being more options of where to get the data from?

That would be brilliant! Smiley

*Image Removed*
I use Localbitcoins to sell bitcoins for GBP by bank transfer!
gollum (OP)
Sr. Member
****
Offline Offline

Activity: 434
Merit: 250


In Hashrate We Trust!


View Profile
April 17, 2013, 08:08:52 AM
Last edit: April 17, 2013, 08:32:34 AM by gollum
 #210

Tier as i read what you are describing I can't help but think, wrf, this is exactly what i'm proposing said a diff way.  

You: The ious are submitted to the PoW block chain by the client looking to trade.  
Me: The broker who you have the iou with is directed by the client to have HIM submit the iou to the PoW block chain and miners would monitor net balances of ious to make sure they are within the credit tolerances.  

Functionally they are the same, but my way is +1 XP for privacy, cause i don't have to fix my IP to the origination of the tx to buy or sell.  I tell gox to go send the order to market on my behalf, and when he squawks it i just relay it to all the miners i know.

maybe my whole description sucks in those earlier posts, but i'm sure we are fundamentally describing almost the exact same thing, if only your structure just sounds a hair different.

What do you think about having separate blockchains for each exchange? something like file sharing torrents, you choose which torrents (files) to share.
Here you choose which exchanges to share (share, host, mine or whatever we wanna call it).
Some parts of the system can be distributed to all miners if needed, for example executed transaction history.

This sounds like the kind of modular approach that should work - plus, if it does work like a torrent, the more popular it becomes, the faster it would become, due to there being more options of where to get the data from?

That would be brilliant! Smiley

The purpose of this proposal has both technical and economical reasons:
-Economical
create a free market that benefits popular exchanges
Give the miners a choice to actively chose which exchanges they want to support with their computing power.
Each exchange should be able to decide what they want to pay to the miners per block, that creates a competition among different exchanges to attract computing power, and also to build up a reputation.

This model will also result in brokers and clients of each exchange to support their exchange by providing computing power to make their exchange more stable and more secure, and also get paid for it.

-Technical
It should benefit the performance of the exchange if the miners are divided in groups where each group is focused on a specific exchange.

Example of how a market with four exchanges could look like:
|Exchange   | Pays/block    | Reputation   | Miners    | Pays/block/Miner   |
| A excellent    | 1 BTC    | 10       | 1000    | 0.001    |
| B average    | 2 BTC    | 5       | 700       | 0.003    |
| C bad service | 5 BTC    | -5      | 100       | 0.05    |
| D bucket shop | 10 BTC    |-10      | 10       | 1.000    |
marcus_of_augustus
Legendary
*
Offline Offline

Activity: 3920
Merit: 2349


Eadem mutata resurgo


View Profile
April 17, 2013, 08:39:55 AM
 #211

I've been wondering if you could use pieces of Bitmessage ... it has P2P secured comms and a broadcast functionality. So an offer could be broadcast to everyone who's subscribing to the GBP-BTC channel (there could be multiple broadcasting channels (USD-BTC, EUR-BTC, etc) maybe run  by the brokers/market makers?) and then interested parties take up the discussion on P2P messaging from there ... but have no idea how trust ratings, etc, could be policed so just putting this piece of it out there in case it helps someone else's thinking.

TierNolan
Legendary
*
Offline Offline

Activity: 1232
Merit: 1084


View Profile
April 17, 2013, 08:55:47 AM
 #212

Unnecessary. Remember, we're dealing with clients looking for trades here. If a match between a buyer and a seller comes up, and somewhere far away anther double match shows up, the client will already have his match and will reject any new matching attempts. So I think something like a Bitcoin transaction memory pool, without having to actually mine the orders into a block will work fine.

If the chain ordered all bids and offers, then there is no need for a crossing system at all.

If you add a bid and the lowest outstanding offer is less than your price, the trade would be immediate at the price of the offer (and vice-versa if you submit an offer).  Otherwise, your bid is added to the order book.

The block size question also arises with regards to flooding the order book.

1LxbG5cKXzTwZg9mjL3gaRE835uNQEteWF
TierNolan
Legendary
*
Offline Offline

Activity: 1232
Merit: 1084


View Profile
April 17, 2013, 08:57:20 AM
 #213

Functionally they are the same, but my way is +1 XP for privacy, cause i don't have to fix my IP to the origination of the tx to buy or sell.  I tell gox to go send the order to market on my behalf, and when he squawks it i just relay it to all the miners i know.

What if the broker refuses?

1LxbG5cKXzTwZg9mjL3gaRE835uNQEteWF
arklan
Legendary
*
Offline Offline

Activity: 1778
Merit: 1008



View Profile
April 17, 2013, 11:40:27 AM
 #214

Functionally they are the same, but my way is +1 XP for privacy, cause i don't have to fix my IP to the origination of the tx to buy or sell.  I tell gox to go send the order to market on my behalf, and when he squawks it i just relay it to all the miners i know.

What if the broker refuses?

why would he? he's being paid to do that for you. you deposit your fiat with him, then say "submit order!" and he, of course, takes a fee for holding your fiat, while the fee for submitting the order goes to pay the miners described above. thus, if he refuses, he goes out of business.

i don't post much, but this space for rent.
mobile4ever
Hero Member
*****
Offline Offline

Activity: 546
Merit: 500


View Profile
April 17, 2013, 01:11:39 PM
 #215


I have one. It needs a PHP programmer. Its P2P. It puts a seller in direct contact with a buyer.

http://www.reddit.com/r/Bitcoin/comments/18w6lu/a_new_idea_for_bitcoin_markets/

Why don't you tell us clearly & concisely what it is that you propose, for the moment I can only see vague mentions of plugins, html and octopi Smiley



It is here:


https://bitcoinstarter.com/projects/54


No octopi included.
Rassah
Legendary
*
Offline Offline

Activity: 1680
Merit: 1035



View Profile WWW
April 17, 2013, 02:41:38 PM
 #216

You would have the previous block as a guide to where the price discovery and liquidity depth is.  You won't bid blindly.  I've use trading systems even more blind that this on wallstreet.  You enter the number of shares and the maximum you are will to pay.  Others do the same, but you don't see their bids and offers.  Then on or about every half hour the system crosses you anonymously with all the other overlapping trades, resolving allocation and price according to weighted averages.  

I believe you that it works, but first, this isn't stocks/commodities trading, this is currency, where companies and merchants like BitPay may want to see what the price is right this second, so they can sell right at that second to convert to fiat. And second, you still haven't explained how this is any different from MtGox with a 10 minute lag, where you saw what the price was 10 minutes ago, and just put your bid where you hope it will stick?

You fundamentally misunderstand the problem.  You transmit your tx to many relays with the hope of fast execution.  So what the first one that responds is the one you execute with?  Well what if he's just relaying some one else tx, and that original tx was filled with some one else while you were negotiating.  Now i suppose you could include your ip in the order or something.  but how do two parties confirm, and what will you do to me if i confirm with you, but then hear a better price from some one else and confirm with that dude.  Who is the ultimate arbiter of what is a valid trade.  With my PoW system, the PoW system says so.

I think you are overcomplicating the problem. Yes, you transmit your order to many relays with hopes of fast execution, and yes, the first one to answer your request for a specific price will be the one you trade with. What more do you need? If the relay is relaying someone else's tx, then you trade with that someone else. You are not looking for for relays, you are looking for orders. If you use an address system (like Bitcoin's address-signed transaction broadcasting or Bitmessage's signed message broadcasting), then all you are interested in is the address of the person willing to trade. Make it work like Bitaddress, and you can use the same system to communicate with the other party as well. If there is a better price, placed after your trade, then obviously you wouldn't hear about it, since you already found a match for yours. It's no different from trading at a point in time, then once the price drops after a few seconds, trading again at a later time.
Regarding the arbiter, it's just individual clients. With your PoW system, it's still the individual clients who look at the PoW blockchain to match up with the best price. The difference is that your idea organizes trades into a blockchain, whereas I suggest to just keep it in a shared database without the blocks and PoW since they are not needed. There is no trades to double-spend or counterfeit.
P.S. In a PoW system, there is nothing to prevent a malicious trader from not following through on sending his side of the money if he sees a better deal, either.
gollum (OP)
Sr. Member
****
Offline Offline

Activity: 434
Merit: 250


In Hashrate We Trust!


View Profile
April 18, 2013, 03:06:52 AM
 #217

Some members suggested that we should have a voting. I suggest that we debate on different solutions til sunday 21 April and afterwards summarize all requirements to vote on.

Example of what to vote on:

1 Colored coin:
a) Use colored-coins in the existing bitcoin blockchain.
b) Create a new blockchain (a new alt-coin) which is only used for the exchange so we dont spam bitcoins blockchain. The new alt-coin has 0 value itself, the only value of the coins are what they represent (1 USD or 1 BTC for example)

2 Orderbook:
a) Order book in blockchain
b) Order book in memory

3 Exchanges:
a) One and only one exchange
b) Many independent virtual exchanges running in the system

5 If we decide on Virtual exchanges, miners right to chose exchange:
a) each miner supports the blockchain and specific virtual exchanges (like bittorrent)
b) each miner supports the blockchain and all exchanges

6 Distribution and processing of order books:
a) order books are distributed and processed by all miners
b) order books are distributed and processed only by the closest peers, and not by all miners
c) order books are distributed and processed only by miners that chose to support a specific virtual exchange

7 Fees to miners:
a) Predefined model of X bitcoins per block and halfing periods
b) Parameter model where the fee depends on several parameters
c) Free-market model where each virtual exchange bids whatever they desire and competes against other virtual exchanges to attract miners

...
Herodes
Hero Member
*****
Offline Offline

Activity: 868
Merit: 1000


View Profile
April 18, 2013, 03:58:49 AM
 #218

Do you need miners for a desentralized bitcoin exchange ? Couldn't an exchange be more of the model of bittorrent, or would that not work ?
Rassah
Legendary
*
Offline Offline

Activity: 1680
Merit: 1035



View Profile WWW
April 18, 2013, 04:08:28 AM
 #219

Do you need miners for a desentralized bitcoin exchange ? Couldn't an exchange be more of the model of bittorrent, or would that not work ?

That's what I've been saying. A blockchain you have to mine is all the rage with the kids nowadays, so they want to stick it into everything  Roll Eyes
Herodes
Hero Member
*****
Offline Offline

Activity: 868
Merit: 1000


View Profile
April 18, 2013, 04:42:28 AM
 #220

Do you need miners for a desentralized bitcoin exchange ? Couldn't an exchange be more of the model of bittorrent, or would that not work ?

That's what I've been saying. A blockchain you have to mine is all the rage with the kids nowadays, so they want to stick it into everything  Roll Eyes

Also mining for such a system would take hashing away from the main bitcoin network.

Would it not be possible that each client in the decentralised system either could import an existing private PGP-key, or generate one for you to use, for example it could even import ratings from bitcoin-otc.com if you could prove you had the right private key. Then all that were needed for trading and identifying a certain individual on the network would be to prove that the client holds the private key, kind of like the same authentication method that is used on freenode when auth/verifying with gribble.

That would build kind of a layer over bitcoin-otc, but it could also be made to work stand alone. So the ratings given and received somehow where retained in the system. Not sure how you'd secure the data integrity, perhaps by signing a rating, and then having the client check it against the public key to see if the signature is valid ?

So if you're Alice and trades with Bob, you can see that Bob has received like 20 ratings, and then an indicator could indicate whether the signature of all those ratings were valid or not. And then it would also be possible to click on the usernames that rates Bob to check their history and so on.

I'm not sure what's most desirable, just to connect individual parties for trades, like bitcoin-otc, or to have a more liquid orderbook like MtGox. In the event of the latter, you would need to have a fiat balance and a btc balance for each user, and the btc would need to be held somewhere ? Are we then talking about centralization again, hum.. Perhaps the best option is to neither store fiat nor btc in such a desentralized exchange, but only to connect buyers and sellers. And then there could be a bunch of trusted escrows that could be used as well, or one could just send the funds if one felt comfortable with it based on the rating of the counterparty. A trade could also be completed in bunches, where a 1K USD trade is completed by first sending 100 USD, then 200 and so on. The more I think of it, just having a nice bit-torrent like client connecting buyers and sellers would be pretty nice.

To make things easier, there could be different filters, so one could filter users based on geo-positions for instance, or currency, or whatever. If someone puts up a bid of 10 BTC in london for whatever price, then somebody could chose to match it completely or partially, and after it's matched it could be locked in the market for a certain time frame, perhaps 12 hours, or whatever timeframe (could also be adjustable) the seller or buyer (or both ) is interested in ? If the deal goes through, the order is removed from the market and added to the done trades list, so that other users can see what trades are done, and at what price. In the done trades list, there could also be a link to ratings, as it would be desirable for both parties to rate the other when the deal is done.

Some crafty software could even hide all the 'ugly' PGP details from the less advanced users. So all they needed to do was to download the client, hook up with a counterparty, and check his trustrating, and then decide how to proceed from there, so there should obviously be some messaging capasity in the system as well. I think there's a bitmessage open source system recently created, don't know much about it, but maybe it could be used ?

So in the future, it could be super-easy, just go to bitcoin-org, download BOX (Bitcoin Open eXchange) or whatever name it is called. And then after it is installed, it asks for PGP-import, or generates a private pgp-key if you don't have one, and uploads the public key to a keyserver or perhaps the public key should reside in the exchange network itself ? Anyway, everything happens under the hood, so the only thing the user does is entering his order.

It could be Tom, living in new york, enters buy 3 BTC @ 93, and selects preferred payment method from a drop down list, for instance wire transfer. Then Janice sees this buy order, and she wants to sell 3 BTC for the artwork she sold online, so she marks the order and a message is sent to Tom that Janice wants to trade. Tom then proceeds to check the trust level of Janice, and sees that she is 'highly trusted after 30 successfull trades. There could be a colorbar or something indicating the trust level of a user + the ability to clik the user to see his/her complete story. So after peeking over the ratings of Alice, Tom thinks it looks good, and sends Alice a message asking her for her bank account information. This is then relayed immediately to Tom, and signed by Alice, and it will show up as 'approved message' on Tom's end. Then tom sends the money, and when the money is received on Alice's end, she sends the btc to Tom (he provided his desirable btc address through the client, signed with his private pgp key). Then either of the parties could mark the trade as completed, and give the other user a rating, and the trade then is moved into 'trade history'-list. In the event the trade didn't go through, Tom could label (give negrating) Alice as a scammer if she never sent the BTC, and then reopen his offer for BTC purchase, since it was never completed. The same way, Alice could negrate Tom if Tom for instance saw that the price fell to 70, and he didn't want to honour the negotiated price.

There are so many ways this could've been made, so what do you think ? I don't think we need a blockchain for a desentralized exchange. A bittorrent like system with discovery of peers would work just fine. Perhaps there would be a need for irc-bootstrapping in the beginning or something, but that should only be used in the early days. Heck, this could even be integrated with the official client!
Pages: « 1 2 3 4 5 6 7 8 9 10 [11] 12 13 14 15 16 17 18 19 20 »  All
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!