Bitcoin Forum
May 04, 2024, 10:57:55 AM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: [1] 2 »  All
  Print  
Author Topic: PeerTrade - No central exchange, no escrow, no fiat. minimal risk.  (Read 3757 times)
peertrade (OP)
Newbie
*
Offline Offline

Activity: 14
Merit: 0


View Profile
March 24, 2014, 05:21:05 PM
Last edit: March 24, 2014, 06:41:58 PM by peertrade
 #1

Have you been burned by a centralized altcoin exchange?   Or an exchange won't list your coin?   Read on.

----------------------------------------------------------------------

tl;dr  PeerTrade is software that facilitates cross blockchain cryptocurrency exchange directly between two parties with a known minimal risk.

Readme: https://github.com/peertrade/peertrade/
Download: https://github.com/peertrade/peertrade/releases
website: http://peertrade.org

----------------------------------------------------------------------

Author's Note

This software is something of an experiment, and is released in an early text-mode prototype form, to determine if the altcoin community is interested in this novel manner of trading. If there does seem to be real interest, feedback and adoption then further advances in the software, documentation and associated website will be forthcoming.  If not, it's been fun to work on.

Enjoy PeerTrade!



What is PeerTrade for?

PeerTrade facilitates the exchange of cryptocurrencies directly between two parties without any third party involvement. This means: no centralized exchange and no escrow agent.

The problem we face when two parties wish to exchange digital coins of one cryptocurrency for another is that neither party wants to go first because the other party might simply run off with all the coins.

PeerTrade is software that aims to minimize and manage this risk, rather than solve the problem altogether.

PeerTrade does not do any fancy cryptography and does not utilize any form of escrow. It simply breaks an exchange up into many smaller exchanges so that the risk is much smaller if the other party does not come through.

This way large amounts can be traded back and forth, but only small amounts will be risked by either party.

A trade can be broken into any number of rounds, so the risked amount can be made very small indeed. The tradeoff is that the more rounds of exchange, the longer the trade will take.

PeerTrade is sort of like paying half up-front, half-on delivery to limit your risk. But PeerTrade breaks the payment into much smaller chunks, and automates the process for both parties.

So a trade of 100 ABCcoin for 10 XYZcoin can be split into 10 exchanges of 10 ABC and 1 XYZ. Or 100 exchanges of 1 ABC and 0.1 XYZ. Or 1000 exchanges of 0.1 ABC and 0.001 XYZ. You get the picture.

The number of rounds and the number of receive confirmations per round is determined by the first party to initiate a trade, and is visible to both parties before trade begins.

Still it must be emphasized that it is possible (and likely) to lose one round's worth of funds should you deal with an untrustworthy person. As such, PeerTrade users are encouraged to:

    Trade only with individuals with established reputations.
    Only enter into trades when you can absorb losing 1 round's worth of coins.

It should also be emphasized that the only communication that PeerTrade performs between the two trading parties is sending and receiving coins via the blockchains of the two crypocurrencies involved. All other communication is performed out-of-band by the two parties.


A PeerTrade exchange can be visualized like this:
http://peertrade.org/images/howitworks.png



Features

    Direct 2 party trades between cryptocoins. ( Escrow not required )
    Breaks a trade up into many smaller automated trades with much lower risk.
    PeerTrade tokens encode trade parameters for sending to other party.
    Trade any coin for any other. Not limited to primary markets.
    Trade new or unpopular coins that are not listed on any exchange.
    No account signup needed.
    Can resume incomplete trades.
    Completed trades may be (optionally) published to peertrade.org
    Coin list with default wallet parameters auto refreshed from peertrade.org
    Works with any cryptocoin wallet that supports the basic bitcoin RPC methods.
    Detects encrypted wallets and assists with unlocking for send.



How to Trade

The PeerTrade model is two party peer to peer only. So you need to (somehow) find someone that is willing to trade a given amount of coins at a given price. Eg, I will sell you 20 XYZ coins for 50 ABC coins.

When both parties come to agreement then either party can initiate a trade with PeerTrade. The software will generate a token that the first party gives to the second, and then the second party must give a matching token back to the first. These tokens contain payment amounts, coin addresses, number of rounds, etc. Once the tokens have been swapped and verified, trading can begin.

If the underlying PeerTrade exchange mechanism catches on, it is expected that over time the trading community will devise efficient platforms for announcing, matching and accepting trade offers. For now, just starting out, it can be as simple as starting a forum thread: "WTS 300 abcCoin for xyzCoin. Send offers".

Going forward, one can imagine exchange website(s) that accept limit orders and performs order matching, but do not execute any orders. Instead, when two orders are matched, the site notifies the two parties so that they can trade between themselves.

--------

Readme continues at: https://github.com/peertrade/peertrade/
website: http://peertrade.org     ( markets and info )


1714820275
Hero Member
*
Offline Offline

Posts: 1714820275

View Profile Personal Message (Offline)

Ignore
1714820275
Reply with quote  #2

1714820275
Report to moderator
1714820275
Hero Member
*
Offline Offline

Posts: 1714820275

View Profile Personal Message (Offline)

Ignore
1714820275
Reply with quote  #2

1714820275
Report to moderator
It is a common myth that Bitcoin is ruled by a majority of miners. This is not true. Bitcoin miners "vote" on the ordering of transactions, but that's all they do. They can't vote to change the network rules.
Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction.
1714820275
Hero Member
*
Offline Offline

Posts: 1714820275

View Profile Personal Message (Offline)

Ignore
1714820275
Reply with quote  #2

1714820275
Report to moderator
peertrade (OP)
Newbie
*
Offline Offline

Activity: 14
Merit: 0


View Profile
March 24, 2014, 05:51:55 PM
 #2

Here is an example trade occurring with 10 rounds of exchange and 0 confirmations.



Bob sees:


--- Beginning trade Buy 20 BFC, Sell 15 STR ---

2014-03-24 10:36:05 -- [0] Sent 0 of 15 STR               [0] Rcvd 0 of 20 BFC               Ahead:  0 STR
2014-03-24 10:36:12 -- [0] Sent 0.01 of 15 STR                                               Ahead:  0 STR
2014-03-24 10:36:21 --                                    [0] Rcvd 0.001 of 20 BFC           Ahead:  0 STR
2014-03-24 10:36:25 -- [1] Sent 1.5 of 15 STR                                                Ahead:  1.5 STR
2014-03-24 10:36:34 --                                    [2] Rcvd 4 of 20 BFC               Behind: 1.5 STR
2014-03-24 10:36:38 -- [3] Sent 4.5 of 15 STR                                                Ahead:  1.5 STR
2014-03-24 10:36:42 --                                    [4] Rcvd 8 of 20 BFC               Behind: 1.5 STR
2014-03-24 10:36:47 -- [5] Sent 7.5 of 15 STR                                                Ahead:  1.5 STR
2014-03-24 10:36:55 --                                    [6] Rcvd 12 of 20 BFC              Behind: 1.5 STR
2014-03-24 10:37:00 -- [7] Sent 10.5 of 15 STR                                               Ahead:  1.5 STR
2014-03-24 10:37:04 --                                    [8] Rcvd 16 of 20 BFC              Behind: 1.5 STR
2014-03-24 10:37:10 -- [9] Sent 13.5 of 15 STR                                               Ahead:  1.5 STR
2014-03-24 10:37:18 --                                    [10] Rcvd 20 of 20 BFC             Behind: 1.5 STR
2014-03-24 10:37:26 -- [10] Sent 15 of 15 STR                                                Ahead:  0 STR

Trade is complete!




Alice sees:


--- Beginning trade Buy 15 STR, Sell 20 BFC ---

2014-03-24 10:36:19 -- [0] Sent 0 of 20 BFC               [0] Rcvd 0.01 of 15 STR            Ahead:  0 BFC
2014-03-24 10:36:30 -- [0] Sent 0.001 of 20 BFC           [1] Rcvd 1.5 of 15 STR             Behind: 2 BFC
2014-03-24 10:36:41 -- [2] Sent 4 of 20 BFC               [3] Rcvd 4.5 of 15 STR             Behind: 2 BFC
2014-03-24 10:36:52 -- [4] Sent 8 of 20 BFC               [5] Rcvd 7.5 of 15 STR             Behind: 2 BFC
2014-03-24 10:37:03 -- [6] Sent 12 of 20 BFC              [7] Rcvd 10.5 of 15 STR            Behind: 2 BFC
2014-03-24 10:37:14 -- [8] Sent 16 of 20 BFC              [9] Rcvd 13.5 of 15 STR            Behind: 2 BFC
2014-03-24 10:37:28 -- [10] Sent 20 of 20 BFC             [10] Rcvd 15 of 15 STR             Ahead:  0 BFC

Trade is complete!




( omitting all the trade setup and token exchange wizard stuff. )

peertrade (OP)
Newbie
*
Offline Offline

Activity: 14
Merit: 0


View Profile
March 25, 2014, 05:32:28 PM
Last edit: March 25, 2014, 05:47:42 PM by peertrade
 #3

So it's been 24 hours since I started this thread and so far not a single reply.  I had hoped some people would try the software out, or at least that there would be some questions and comments. Or someone saying it's a dumb idea, or something.

Silence is golden I guess.

If there were genuine interest, I was planning to work next on building out the peertrade.org website with an orderbook system, so it could match orders, then notify the parties so they could perform the trade.  This would essentially be a full exchange website except that the exchange would never hold a single satoshi of the traded funds, and markets would be determined by the decentralized traders, not the exchange.

I am honestly surprised by the complete lack of interest in this project given how many have been burned by all these exchanges getting hacked or absconding with funds.  And also how people have had to beg cryptsy and the other exchanges to get their new coins listed. I know there are many coins out there with people holding and mining them, that are not listed on any exchange.

So I'd like to take a little poll.  To anyone reading this, I'd like to know your state of mind:

a) Interested, but need more examples/help to get started.

b) Interested, but I don't have anyone to trade with.

c) Very interested.  Downloaded software and looking for someone to trade with.

d) Confused.  What does this thing do again?

e) Contemptuous.  It's a bad idea from the get-go.

f) Lazy.  Waiting for a system with an orderbook to find trading partners for me.

g) Risk Averse. I don't want to risk a single satoshi (of any cryptocurrency) when I'm trading, even if I control the max risked amount and it enables a fully decentralized exchange.

h) Uninterested.  This all sounds too difficult.

i) Uninterested.  I'm happy with the existing exchanges, or I don't trade altcoins.


Or just post your comments.


Thanks!





northranger79510
Sr. Member
****
Offline Offline

Activity: 308
Merit: 250

Riecoin and Huntercoin to rule all!


View Profile
March 25, 2014, 06:07:49 PM
 #4

Wow. This is an interesting concept. I would be very interested in this

Huntercoin: H9kttkrQidiQMG9NibmTgjgCKqWJMAkAXD
Riecoin: Like us on https://www.facebook.com/TheRiecoinCommunity
peertrade (OP)
Newbie
*
Offline Offline

Activity: 14
Merit: 0


View Profile
March 25, 2014, 06:47:40 PM
 #5

Wow. This is an interesting concept. I would be very interested in this

Cool.  Do you have any altcoins you'd be interested in trading?   If you download the PeerTrade software we could give the system a test run.

Here's a few I could trade:  ELP, STR, IFC, LBW, RVD, ASC, QRK. RPC, DRK, SNC.

Would trade any of the above for BTC, LTC, DOGE, PPC.   Or for just about any coin, really... it can be a small trade.   ;-)
peertrade (OP)
Newbie
*
Offline Offline

Activity: 14
Merit: 0


View Profile
March 25, 2014, 09:37:07 PM
 #6

Anyone want to trade?   Here's your chance to be the Hal Finney of PeerTrade.    Grin
roslinpl
Legendary
*
Offline Offline

Activity: 2212
Merit: 1199


View Profile WWW
March 25, 2014, 09:55:26 PM
 #7

well I must say this project is very interesting!
I would like to see how it will be developed in the upgrades.

peertrade (OP)
Newbie
*
Offline Offline

Activity: 14
Merit: 0


View Profile
March 25, 2014, 10:11:44 PM
 #8

in what upgrades?   The trading software is working now and is available on github.   Just download it and give it a try.  I am happy to perform a test trade with anyone that does so.

If you mean the website peertrade.org, well I would like to get some feedback from people using the trading software before I devote more time to adding significant website features.  If people find the underlying trade mechanism useful, then it becomes worthwhile to build an orderbook around it for matching trades.

well I must say this project is very interesting!
I would like to see how it will be developed in the upgrades.


roslinpl
Legendary
*
Offline Offline

Activity: 2212
Merit: 1199


View Profile WWW
March 25, 2014, 10:43:48 PM
 #9

But each project must be upgraded in future Smiley isn't ?Smiley just to make it better, more stable etc. Smiley
And for now it looks very good!

Good job!
peertrade (OP)
Newbie
*
Offline Offline

Activity: 14
Merit: 0


View Profile
March 25, 2014, 11:07:39 PM
Last edit: March 25, 2014, 11:24:28 PM by peertrade
 #10

Well sure I will be happy to upgrade and improve it if people are actually using it.  So far though it seems like pulling teeth to even get anyone to download the software and try it out.  I'm not sure if my explanation is not adequate, or people just don't like the idea, or what.  It's hard to interpret inaction and silence.

Of course I am biased but I think the software is pretty neat.  I don't like the central exchanges and this software enables me as a miner to trade altcoins directly with other miners, even the unlisted coins.  Now it's true that I could lose a non-zero amount of coins if the other party is untrustworthy, but I get to control exactly what that amount is, and to me that small risk is totally worth it.  Like a cost of doing business, or like exchange fees.

I think that when people try the software they will be surprised how easy it is to use.   It is text-mode, but it walks you through the trade process step-by-step and tries really hard to auto-configure connections to your wallets, and remember settings for next time.

Anyway, thanks for the encouragement roslinpl.

But each project must be upgraded in future Smiley isn't ?Smiley just to make it better, more stable etc. Smiley
And for now it looks very good!

Good job!
countryfree
Legendary
*
Offline Offline

Activity: 3052
Merit: 1047

Your country may be your worst enemy


View Profile
March 26, 2014, 02:00:37 AM
 #11

All I have is BTC, and I don't want to have any other cryptocurrency, but your idea is interesting, you have my support.

I used to be a citizen and a taxpayer. Those days are long gone.
peertrade (OP)
Newbie
*
Offline Offline

Activity: 14
Merit: 0


View Profile
March 26, 2014, 02:05:06 AM
 #12

You are a true blue bitcoiner countryfree.  i salute you, and thanks for the feedback.
peertrade (OP)
Newbie
*
Offline Offline

Activity: 14
Merit: 0


View Profile
March 26, 2014, 02:07:39 AM
 #13

Ok, I changed the copy on the website to something a bit more sales-y.  

Quote
Ask yourself these questions: Are you fed up with online exchanges that keep losing or stealing your coins? Are you tired of begging them to list your favorite altcoin?

I sure am.

That's why I created PeerTrade. It is simple text-mode software you run on your own computer that connects to your local wallets and enables direct 2-party trades without any central exchange in the middle.

PeerTrade turns a single large exchange into many smaller exchanges, so that only a small amount is ever risked by either party.

So you can exchange coins with confidence directly from your local wallets that you personally safeguard. Plus you can exchange any cryptocurrency for any other without being limited to primary markets.

Right now I am looking for feedback on the core exchange software, so there is no orderbook yet and you will need to find someone to trade with on your own. But plans for an online orderbook are in the works also. Such an orderbook would only list trades and find matches. You would still run the PeerTrade software to execute the trade.

You may get started by downloading PeerTrade and reading through the detailed README file.
slothbag
Sr. Member
****
Offline Offline

Activity: 369
Merit: 250



View Profile
March 26, 2014, 02:37:01 AM
 #14

Wow, this sounds like quite an accomplishment. Congrats.  I am surprised you have had very little response given the need for a trustless exchange.

From a brief glance it would appear you only support copy/paste Bitcoin clones (via the RPC), what if I want to trade BTC, XRP, NXT, will it support these different cryptocoin implementations?

Have you thought about some sort of reputation system, it could be used so that a trade between two reputable people could be broken down into less fractions, requiring less fees.

Cheers

Edit: Oh, I see there is no shared orderbook.. PeerTrade simple allows to users to break up a transfer..  Sorry, not as impressive as I first thought Tongue
peertrade (OP)
Newbie
*
Offline Offline

Activity: 14
Merit: 0


View Profile
March 26, 2014, 04:06:54 AM
 #15

From a brief glance it would appear you only support copy/paste Bitcoin clones (via the RPC), what if I want to trade BTC, XRP, NXT, will it support these different cryptocoin implementations?

If they implement the RPC api for sendtoaddress(), getreceivedbyaddress(), and listtransactions() then they would work.  At present I have no plans to support them especially, but that could possibly change.


Quote
Have you thought about some sort of reputation system, it could be used so that a trade between two reputable people could be broken down into less fractions, requiring less fees.

yes, I have considered a reputation system.  It is mentioned in the README todo list.  A simple system could be implemented just by including a unique userid (guid generated on each node) in the peertrade token.  Then peertrade.org could just display how many published trades each user has.  Could also attach comments.

Quote
Edit: Oh, I see there is no shared orderbook.. PeerTrade simple allows to users to break up a transfer..  Sorry, not as impressive as I first thought Tongue

Yeah, PeerTrade is not complex.   It is a simple idea.  But it does enable transferring large sums with an arbitrarily smaller amount of risk, eg sum/100 or sum/1000.   I find centralized exchanges to be much riskier than that.

PeerTrade doesn't have its own peer network at present, so there is no shared orderbook in that sense.  I am considering adding a central orderbook on the website, and users would be emailed when there is a match.  Not ideal, but possibly workable.

a dedicated p2p network + orderbook would be outside my expertise.  But if anyone here is interested in creating such a thing, you'd be welcome to join the project.

Another idea is use counterparty or mastercoin as a shared orderbook.  I'm not sure of the feasability of that yet.

Anyway, thanks for your comments!
BenAnh
Hero Member
*****
Offline Offline

Activity: 518
Merit: 500


View Profile
March 26, 2014, 04:25:04 AM
 #16

Why don't you risk that small amount but instead the exchange can escrow that amount so it's risk free?
medUSA
Legendary
*
Offline Offline

Activity: 952
Merit: 1003


--Signature Designs-- http://bit.ly/1Pjbx77


View Profile WWW
March 26, 2014, 05:11:07 AM
 #17

This is a very well known way to trade, and most would find this not very inspiring. Don't be discouraged when not a lot of members showed interest.

The key is implementation and interface. If you can have this interface where you set all the details of the trade and put it in "ready mode", it will complete the full deal bit by bit fully automated whenever a buyer/seller accepts, it would be a killer.

What you need is some screen shots of the interface or a video of an actual deal on youtube, then comments and ideas will come.
peertrade (OP)
Newbie
*
Offline Offline

Activity: 14
Merit: 0


View Profile
March 26, 2014, 06:56:04 AM
 #18

Why don't you risk that small amount but instead the exchange can escrow that amount so it's risk free?

There is no "exchange" entity to perform the escrow.  The transfers are direct between the 2 parties.  That's the point.

If we introduce an escrow agent between the parties, then we are back to trusting a third party.  In theory, yes we could do a lot of small transfers so we are only trusting the third party with a little bit at a time, but it is also doubling the number of transfers which means at least doubling the time and network fees.  I don't believe it is workable, and anyway it is not PeerTrade.

Of course anyone is welcome to fork the code and introduce a third party escrow if desired.   
peertrade (OP)
Newbie
*
Offline Offline

Activity: 14
Merit: 0


View Profile
March 26, 2014, 07:19:35 AM
 #19

This is a very well known way to trade, and most would find this not very inspiring. Don't be discouraged when not a lot of members showed interest.

Good feedback, thanks.  That's actually why I released this now rather than spending any more time on it.  I wanted to find out if there would be much interest.  So far, the answer seems to be no.

You say it is well known.  Perhaps the idea is, though I haven't seen it discussed anywhere, and I'm likewise unfamiliar with any other software that implements it.  Can you point me towards software that does this, or towards some documentation or discussion of the idea?

Uninspiring or not, I have heard so much complaining about centralized exchanges I had hoped more people would be willing to at least download the software and give it a quick try before dismissing out of hand.  

Quote
The key is implementation and interface. If you can have this interface where you set all the details of the trade and put it in "ready mode", it will complete the full deal bit by bit fully automated whenever a buyer/seller accepts, it would be a killer.

Yes, that it is pretty much what it does.  See the example trade in the 2nd comment of this thread -- the actual exchange of funds is fully automated.  I have tried to make the setup as simple as possible.  For example, the software tries very hard to auto-configure wallet connections, deal with encrypted wallets, and so on.  It presents a wizard that guides the user through the trade process.  Actually, all the setup stuff was the hard part.... I had the exchange code written the first day.

 * Bob enters in the currency symbols to trade, how much to buy and sell, how many rounds, and min_confirmations.  
 * The software generates a token that encodes this information and also a newly generated receive payment address.  
 * Bob sends the token to Alice.  
 * Alice enters it into her PeerTrade, and it generates a token with the same info and a newly generated payment address.  
 * Alice sends this to Bob and starts the transfer.  
 * Bob enters in Alice's token, which gets verified, and starts the transfer.
 * Exchange runs, fully automated on both sides until it completes.
 * If exchange is interrupted by either party, it can be resumed on both ends.

Quote
What you need is some screen shots of the interface or a video of an actual deal on youtube, then comments and ideas will come.

I will post a full a..z exchange from both points of view, for starters.   I agree a video would be helpful.  I'm not skilled at video production.  I'm hoping someone else can do that.  

Again, thank-you for your insightful comments.
BenAnh
Hero Member
*****
Offline Offline

Activity: 518
Merit: 500


View Profile
March 26, 2014, 07:23:38 AM
 #20

Why don't you risk that small amount but instead the exchange can escrow that amount so it's risk free?

There is no "exchange" entity to perform the escrow.  The transfers are direct between the 2 parties.  That's the point.

If we introduce an escrow agent between the parties, then we are back to trusting a third party.  In theory, yes we could do a lot of small transfers so we are only trusting the third party with a little bit at a time, but it is also doubling the number of transfers which means at least doubling the time and network fees.  I don't believe it is workable, and anyway it is not PeerTrade.

Of course anyone is welcome to fork the code and introduce a third party escrow if desired.   
So I can do this with someone using the same math without peertrade. So what's the point of using the service?
Pages: [1] 2 »  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!