Bitcoin Forum
June 25, 2024, 03:58:02 AM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: [1]
  Print  
Author Topic: On creating a decentralized trading network.  (Read 887 times)
EricLou (OP)
Newbie
*
Offline Offline

Activity: 9
Merit: 0


View Profile
December 23, 2013, 02:57:43 AM
 #1

We've all heard stories on how unreliable certain exchanges can be.

The worst part is that they can just run away with all the coins they have under their control anytime they want.

We have these amazing decentralized currencies but we're still beholden to centralized organisations to trade these currencies.

But what if we could do it another way?

Buying or selling Fiat online will always require a trusted third party. But trading between altcoins doesn't have to.

The goal here is to be able to find a seller that will sell what you want in exchange for what you have, and then be able to execute the transaction at an agreed exchange rate without having to trust any of the parties involved.

But making that happen isn't so easy. If you send your coins first, there's no guarantee that they'll send them back to you. A vice versa.

We need a way to place coins in escrow and only release them to the other party if they've sent you their coins.

Most altcoins don't support that feature. So we'll need to create one.

And so, I would like to create "TradeCoins".

How they work:

They can be mined, stored and transferred like most other coins. The specifics are TBD.

In addition they can be placed in escrow with a set of rules guiding the when and to whom of their release.

These rules can depend on events that occur in other currencies.

The network (miners), in addition to resolving transactions, will resolve escrow events by cross referencing what happens on the block chain of other coins against the rules setup in TradeCoin's escrow accounts.

As such a trade without a trusted third party can occur like this:
I want to trade my 1 BTC and sell them for PPCs.

I find an untrusted trader (Bob) who will sell me 1 BTC's worth of TradeCoins (let's say that amounts to 1000 TradeCoins).

I tell Bob the address(es) I will send the 1 BTC from and Bob tells me where to send it to.
I also tell Bob the address of my TradeCoin account.

Bob then puts 1000 TradeCoins into an escrow account with the rule that they be released to my TradeCoin account once 1 BTC has been sent from my BitCoin account to his BitCoin account. There is also a rule that after 3 hours if the 1 BTC has not been sent, then the TradeCoins return back to Bob.

I then send the 1 BTC to bob and the 1000 TradeCoins automatically get transferred to me.

Now, I find an untrusted trader (Jane) who will sell me 100 PPCs for 1000 TradeCoins. I repeat the same process as with Bob but with the roles reversed.

And I am now the proud owner of 100 PPCs and have sold 1 BTC. Mission accomplished!

Of course, it's not a perfect system. You are exposing yourself to the price volatility of TradeCoins when you only want to deal with BTCs and PPCs and, additionally, you have to make the trade in two steps. What could have been great market conditions to sell your BTC for PPCs when you started the process may turn out not so good once you have the TradeCoins and you're trying to by PPCs.

And so, there are two other ways to trade BTCs for PPCs:

1- Keep your own store of TradeCoins.
If you expect to be doing a lot of trades, then you might consider just keeping a bunch of TradeCoins in reserve to use as guarantee.

So if I wanted to sell 1 BTC for 100 PPC directly without have to go through TradeCoins as intermediary (but still using them as a guaratee). I would do it this way:

First, I find someone (Bob) who wants to buy my 1 BTC for an agreeable price of 100 PPC.

Next, we agree on what would be a reasonable guarantee in TradeCoins. Let's say the current price of 1 BTC is equivalent to 1000 TradeCoins. So we agree on a 1500 guarantee (something a bit higher than the price is needed to guard against price fluctuation).

I then put 1500 of my own TradeCoins (that I already had before) in escrow with the following rules:
1) If you send Bob 1 BTC, then the TradeCoins go back to you.
2) If after 3 hours you have not sent Bob 1 BTC, and Bob has sent you 100 PPC then the TradeCoins go to Bob
3) If after 3 hours neither 1 nor 2 has occured, the TradeCoins go back to you.

Bob is now happy that if he send me 100 PPC, I will send him back the 1 BTC because he knows he'll get 1500 TradeCoins if I don't.

So Bob sends me 100 PPC.

I wait until I'm absolutely certain that the 100 PPC transfer has been confirmed.

I then send Bob my 1 BTC.

And the 1500 TradeCoins come back to me.


The third method of transaction is probably the safest with regards to price volatility but it does require a third party (and a commission).

With this third method, I don't have to own any TradeCoins at all.

So, I want to sell 1 BTC for 100 PPC.

I need to find Bob who wants to sell 100 PPC for 1 BTC and Jane who will provide escrow services for 0.2% commission.

One of the transactions will need to go through Jane it doesn't matter whose. So let's say it's the 1 BTC.

Then the trade happens like this:

Jane puts 1500 TradeCoins in escrow with the following rules:
1) If I send Jane 1.002 BTC and Bob sends me 100.1 PPC within 3 hours and Jane sends Bob 1 BTC within 6 hours, then the TradeCoins go back to Jane.
2) If I don't send Jane 1.002 BTC within 3 hours, regardless of what Jane and Bob do, the TradeCoins go back to Jane.
3) If I send Jane 1.002 BTC and Bob sends me 100.1 PPC within 3 hours but Jane doesn't send Bob 1BTC within 6 hours, then the TradeCoins go to Bob.
4) If I send Jane 1.002 BTC within 3 hours but Bob doesn't send me 100.1 PPC within 3 hours and Jane sends me 1.002 BTC within 6 hours, then the TradeCoins go back to Jane.
5) If I send Jane 1.002 BTC within 3 hours but Bob doesn't send me 100.1 PPC within 3 hours and Jane doesn't send me 1.002 BTC within 6 hours, then the TradeCoins go to me.

Next, I send Jane 1.002 BTCs. Jane has 1500 TradeCoins in escrow to guarantee that I don't get screwed.

Once that is confirmed, Bob send me 100.1 PPC. Now I'm happy and I can go on my merry way. Bob's transfer is safe because it is now guarateed by the 1500 in escrow.

Once that is confirmed, Jane sends Bob 1 BTC.

The 1500 TradeCoins automatically go back to Jane.

So if the trade goes through normally:
I spend 1.002 BTC, receive 100.1 PPC.
Bob spends 100.1 PPC, receives 1 BTC.
Jane provides escrow services and earns 2 mBTC.

Regardless of what happens, the only way Jane loses her TradeCoins is if she messes up.

Both Bob and me have to send our coins before we receive what is due to us. So we can't really defraud anyone.

Jane however will have the opportunity to keep BTCs that aren't hers. They are mine before Bob sends the PPCs, and they become Bob's after. But in both cases she's put up 1500 TradeCoins as guarantee (which is worth more than the 1 BTC she's holding for Bob and I).


So that's how you trade Cryptocurrencies without a trusted third party.

Now I'm willing to build this. But only if there is sufficient interest and if I'm confident that I can get back my investment with profits.

Also, if I can partner with 1 or 2 serious, experienced and competent developer I think that would vastly increase my chances of success and even my profits. So any good developers out there, please let me know.

And if you're already working on something like this. Let me know too, we're better off collaborating rather than competing.
other_side
Full Member
***
Offline Offline

Activity: 285
Merit: 100


View Profile
December 23, 2013, 03:17:22 AM
 #2

There have been lots of attempts to create P2P exchange.
Colored coins, Mastercoin, NXT, Emunie.
EricLou (OP)
Newbie
*
Offline Offline

Activity: 9
Merit: 0


View Profile
December 23, 2013, 03:41:24 AM
 #3

There have been lots of attempts to create P2P exchange.
Colored coins, Mastercoin, NXT, Emunie.


I want a P2P trustless exchange between any alt coins.

Mastercoin only allows exchange between Mastercoin derived coins, these can have a tenuous link to actual alt coins, but they're not the real thing.

I don't see how Colored coins constitute a P2P exchange could you elaborate?

NXT seems to have made a promise of a decentralized BTC/NXT exchange but instead offers a centralized version and no indication on how they expect to pull off a decentralized one.

Emunie seems to be more realistic about creating a decentralized exchange. But they haven't provided any specifics yet. I hadn't heard of them before they seem very interesting.
plopper
Newbie
*
Offline Offline

Activity: 7
Merit: 0


View Profile
December 23, 2013, 04:02:23 AM
 #4

Andreas Antonopoulos says bitcoin is programmable money. So I guess it could be programmed like a simple AND switch. If bob AND jane both set the trade bit to 1, only THEN it trades. Seems that would prevent the usual problem of a scam where bob sends jane 10 foo coins, but jane scams and doesn't send any in return.
kaslo
Newbie
*
Offline Offline

Activity: 22
Merit: 0


View Profile
December 23, 2013, 04:17:05 AM
 #5

agreed, it is interesting, but can it be done where some or all coins are tradable remains to be seen...
Jcw188
Hero Member
*****
Offline Offline

Activity: 546
Merit: 500


Carpe Diem


View Profile
December 23, 2013, 04:21:35 AM
 #6

I like this idea. But i think there would w more interest in something like that that could somehow exchange fist for btc or an alt.   That's the problem, what with the PayPal chargebacka an everything.



████▄██████████▄
███▄████████████
▄███▀
████
████
████
▀███▄
███▀████████████
████▀██████████▀


▄██████████▄
████████████
███████████▀███▄
████████████████
████████████████
████████████████
▀███▄███████████
████████████████
████▀██████████▀


▄██▄█████████▄██▄
▀████▄█████▄████▀
▀████▄▄████▀
███████████
▄███▀█████▀███▄
█████████████████
█████████████████
█████████████████
▀███████████████▀


▄███████████████▄
█████████████████
████▀███▀██████▀
███████▄█████▀
████▄▄██████████▄
▀▀██████▀███████
▄██████▄███▄████
█████▀██████████
▀██▀███▀████████▀


████▄███████████
████████████████
▄███▀███████████
███████████████
██████████████
████████████████
███████████▄███▀
████████████
▀██████████▀
████████
██
██
██
██
██
██
██
██




██
██
██
██
██

██
██
██
████████
|
.
Listed
on
BINANCE
KUCOIN
Gate.io
|
other_side
Full Member
***
Offline Offline

Activity: 285
Merit: 100


View Profile
December 23, 2013, 04:23:21 AM
 #7

I want a P2P trustless exchange between any alt coins.
Many people want this to happen. But it is not clear how to accomplish.
There are also several automated exchange projects that work.
24change, p2pchange.
There are also automated escrows.
The bitcoin protocol itself has contracts.
Collection of P2P exchange discussions.
markm
Legendary
*
Offline Offline

Activity: 2940
Merit: 1090



View Profile WWW
January 05, 2014, 04:59:25 PM
 #8

Huh? Isn't this already do-able between any two blockchains simply by proper construction of transactions?

I thought there are already fully details blow by blow discriptions of how to do this, on the wiki.

No third party blockchain is needed, you just use the two blockchains you want to trade between and construct transactions in a certain way in a certain order?

-MarkM-

Browser-launched Crossfire client now online (select CrossCiv server for Galactic  Milieu)
Free website hosting with PHP, MySQL etc: http://hosting.knotwork.com/
iopq
Hero Member
*****
Offline Offline

Activity: 658
Merit: 500


View Profile
April 16, 2014, 03:40:24 AM
 #9

Huh? Isn't this already do-able between any two blockchains simply by proper construction of transactions?

I thought there are already fully details blow by blow discriptions of how to do this, on the wiki.

No third party blockchain is needed, you just use the two blockchains you want to trade between and construct transactions in a certain way in a certain order?

-MarkM-

Any link on how to do this? If this is possible, how come there are exchanges for altcoins?
jparsley
Sr. Member
****
Offline Offline

Activity: 266
Merit: 250



View Profile
April 16, 2014, 09:03:12 AM
 #10

Huh? Isn't this already do-able between any two blockchains simply by proper construction of transactions?

I thought there are already fully details blow by blow discriptions of how to do this, on the wiki.

No third party blockchain is needed, you just use the two blockchains you want to trade between and construct transactions in a certain way in a certain order?

-MarkM-


this would be a nice way to exchange, where do i find this info

please unban me.
vnvizow
Sr. Member
****
Offline Offline

Activity: 364
Merit: 250



View Profile
April 16, 2014, 09:36:44 AM
 #11

I believe the are similar system running right now
Pages: [1]
  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!