Pages:
Author

Topic: *old* BitShare Economic Theory 10 BTC bounty to prove me wrong... paid. - page 12. (Read 10080 times)

legendary
Activity: 1246
Merit: 1010
I do not think that you structured this very clearly.  And this is causing errors in your own beliefs.

First of all, the best way to characterize this is in fact a true open source distributed "ripple" based on the bitcoin codebase.  Another definition would be a "native" colored coin blockchain.  Since colored coins is frankly awkward, I have been considering a blockchain that accepts multiple currencies deeply.  What is blocking me is frankly that I'd want bitcoins to somehow be a "native" part of the solution, not an external currency that requires a backer.

Point 1: You somehow think collateral makes your USD not need a gateway.  Uh, No.  There's really no nice way to say it but your thinking here is flawed.  Essentially each individual is a mini-gateway, securing the genesis of your "crypto-USD".  And BTW, nobody who really needs a loan can put up that kind of collateral... people put up cars and houses because they can simultaneously USE them.  A loan is truly underwritten by FUTURE the earnings potential of the person who received the loan.  Irrespective of your blue-sky scenarios, when black monday comes around, the people who received the $1 USD and essentially "created" the 1 crypto-USD have to make good on that and convert the crypto-USD back to USD.  Or be sued to get it.

Fundamentally, there IS no crypto-USD unless its the US government issuing it.  There is only someone's individual promise to pay.  And as we learned in the 2008 mortgage crisis it can be REALLY BAD to "bundle" these promises together under the assumption that they are equivalent!

Ok, now that we've got that out of the way, lets structure the system.

Base: 
  cleaned up bitcoin codebase with a single "native" currency, let's call it "thecoin" (THC)

  new transactions:
  1. Coin-type genesis.  A coin type is represented by a public key.  URL and hash of a coin contract are included.  The private key controls that coin type.  Could require a nontrivial txn fee of THC to miners, not to just one miner but distributed across the next 1000 mined blocks or something to reduce coin type spam.  However, just like there can be essentially an infinite # of bitcoin accounts, so with coin types.  This is good because as I was saying above, you can't combine fiat promises together.
  2. Coin genesis.  Signed by the private key, this allows new currency to be minted.  (THC txn fee)
  3. Coin destruction.  A transfer to the coin type's public key is essentially coin destruction because it gives control of the coin back to the issuer.

  Transaction changes:
  4.  Of course, all txns can have multiple inputs and outputs that take different coin types (coin type public key is of course included in the TXO).  This allows atomic exchange. 
  5.  A new transaction type called "market-based exchange" that is essentially the exact same as a normal txn but just marked as an exchange between anonymous parties (see below).

Exchange:

  For some reason you feel that bids/asks should be encoded in the blockchain.  There are huge issues with that, including blockchain bloat and matching speed.  But there is no need.  Bids and asks (actually they are ALL bids, just offering different currencies if you see what I mean) do not need to be remembered forever. 

These could be a special half-signed txn specifying what is offered and what is asked in return.  These are propagated throughout the network.  Someone trades by supplying and what is requested and signing, making a full txn.  The issue here is the half-signed txn cannot easily be withdrawn.  The only sure way to withdraw is to "double-spend" the underlying TXO so the $ the half-signed txn represent does not exist.  So perhaps bids have an "expiration block number".

Another choice is an unsigned half-txn.  The only issue here is your client needs to remain on-line to sign the txn if someone matches it.

Matched txns are committed to the blockchain, with a fee in THC paid by either/both parties.  Multiple matches against the same half-txn are resolved when the next block is found -- whichever full txn makes it in that block wins.  Note a higher THC fee would encourage more miners to use your trade (txn) as opposed to someone else's, which might make things very interesting...

Another issue would be bid flooding to attempt a DOS.  This could be handled to some degree by miner's fees -- essentially clients would refuse to forward the bid if the TXin does not offer enough THC as a miner's fee.  Clients can't tell the size of the bid because they don't know the value in USD of the coin-types being traded.  So we don't know if a txn is "dust".  So the miner's fee essentially needs be used to eliminate dust txns.  Clients could also refuse to forward half-txns that are far outside the trading range of currency-types as known by looking at txns committed to the blockchain and marked as being an "market-based exchange".

Another possibility is proof-of-stake.  You sign the bid half-txn with an account holding at least M THC, clients only hold N bids from a particular signature at one time.


Done!  Easy!  :-)
hero member
Activity: 770
Merit: 566
fractally
I want to create a new alt-chain with a few modifications to the Bitcoin to enable a multi-currency, crypto-fiat, exchange.  I am a software engineer (C++ expert) and could potentially do it all myself, but this project is important enough that I would like to collaborate with someone who is very familiar with the existing Bitcoin code base and who can help me work through technical details specific to Bitcoin.

* I will be updating these specs based upon discussion in this thread, so check back from time to time*

Specific changes I want made to the bitcoin client are:

1)  Distribute half of all mining fees as dividends to outputs with a positive balance.
2)  Annotate all outputs with a currency UNIT.
3)  Create an output script that will only allow the output to be spent under 2 conditions:
          a) it is signed by a specified address's private key (cancel the bid)
          b) it is part of a transaction that has 2 characteristics: (accept part of the bid)
                  - 1 output to a specified address in a specified currency at a specified exchange rate
                  - 1 output that allows the change to be spent under the same terms as this output.
4)  When accepting a bid, the input may be coins in one UNIT used as collateral for coins in the EXCHANGE unit.
5)  When one UNIT is used as collateral for another THEN the dividends paid to that UNIT get paid to the other UNIT.
6) Update the hashing algorithm in a way to prevent centralized control or instant monopoly of all shares by asic mining companies.

I suspect that someone who is very familiar with the bitcoin code base would be able to help me get this implemented in very short order.  I have much of it figured out / designed.  Please contact me if you are interested.

I am also looking for feedback on how to improve this idea.  I have explained the reasoning / economic model behind these changes in other threads, but will answer questions here as well.  I suspect that once we get to talk on skype/phone you will forget about the money and be more interested in the result.  But even if you are skeptical I am willing to make it worth your while to spend some time helping me try it out.

Payments can be made in bitcoin or other negotiable methods.

Anyone who can convince me to abandon this idea before I invest more money into it will be given a 10BTC bounty.


Original Explanation of Economics behind this:
Background / Explanation of Economic Model behind these changes: https://bitcointalksearch.org/topic/m.2259254

* EDIT *
Updated / clearer explanation:
https://bitcointalksearch.org/topic/m.2273237

* EDIT *
I have created a github repository / branch from bitcoin for this project.
https://github.com/bytemaster/bitshare

If you are interested in investing in BitShares to help fund development and bounties (like the wonderful Icon that was just produced) then checkout INVESTING.md at github for the signed terms.  In summary 1000 BitShares will be pre-mined for every 1 BTC contributed to the investing BTC address and your Bitcoin wallet should be importable into BitShares and allow you to redeem your BitShares once it is released.
  
The number of shares pre-mined will be in addition to the 21,000,000 issued via mining.

* EDIT *
I will close out this bounty thread before spending any invested funds.  If the bounty is won, all invested funds will be returned.

If you would like someone other than me to be the decider of whether or not you 'win' the bounty, then I will agree to create a contract with objective criteria that will be arbitrated by Judge.Me.  

You can validate that I have the funds to pay the bounty by checking the balance of the investment address  (Over 50 BTC at that adress are my contribution to this).

Total outside investment thus far:  2 BTC  Thanks!
Total bounties paid:  0.75 BTC
Total tips paid: 2 * .05 BTC

* EDIT *
It is now clear that the only thing BitShares is good for is short-selling 'bitcoin' in a trustless manner.   This is very useful in its own right by allowing hedging, but it is not the system I hoped it would be.

All funds will be returned to investors.
Pages:
Jump to: