Pages:
Author

Topic: Forking the Blockchain for Bonds (25 BTC Bounty) - page 3. (Read 8562 times)

legendary
Activity: 1050
Merit: 1003
Some helpful points.The blockchain is the bond issuer (just as in mining). Private bond issuers are not neccesary. There are multiple ways of understanding why public bond issues are useful. Perhaps framing it in terms of time preference will help.

http://en.wikipedia.org/wiki/Time_preference

Creation of bonds allows trading between people with different time preference.
 
Bond buyers want to buy items tomorrow. Bond sellers want items today. Without the introduction of blockchain issued bonds, it is very difficult for these parties to profitably trade. Buyers and private bond issuers would need to negotiate and enforce contracts privately. Currently, the level of trust in the community and resources for enforcement make it difficult to support a private credit market. Introducing mined bonds reduces the need for trust and enforcement mechanisms, allowing for profitable trades between individuals with different time preference. One advantage of this is that it makes leveraging a bet cheaper.

Also, creation of bonds is also a useful step towards the creation of contingent claims. Contingent claims are discussed here:
http://forum.bitcoin.org/index.php?topic=19130.0
The contingent claims also provides some useful discussion about possible coin generation rules. This should make clear that bonds would not 'screw up coin generation"

None of the other new comments in the thread are worth addressing at this point.





sr. member
Activity: 350
Merit: 251
why would we do this? it adds a plethora of additional challenges and complexity. why would i mine for bonds, when the current system gives me real money now. sure i could trade the bonds, but why, i got real money now, do you want 2 currencies competing? making each other less valuable.
legendary
Activity: 1008
Merit: 1001
Let the chips fall where they may.
To be honest, I am not sure what you are proposing. If you want to "lock-in" a difficulty 6 months ahead of time, that will likely screw up block generation. On average, one block is produced every 10 minutes or so. If the next block was already produced 6 months ago, we would have to artificially raise the difficulty level to avoid generating coins. Worse, block generation is what processes transactions. Artificially raising the difficulty would slow transaction processing: you can't just "add" transactions to the 6 month old block now maturing.

As becoin said, you can make your own bonds: Generate a savings wallet using Bitcoin Off-The-Grid (BOTG), and store it in a safe place; preferably two safe places. Send money to it. After the "bond period" is up, retrieve the savings wallet and import the private keys. You can then spend the coins again.
legendary
Activity: 3431
Merit: 1233
Bonds allow her to maintain an equivalent long position on bitcoin and also leave some money left ovwr for other investment or consumption purposes.
If Mary has X amount of bitcoins in her wallet.dat she already has a long position on bitcoin! If she wants to leverage this long position she must find someone willing to make the opposite bet - the equivalent short position on bitcoin. Bonds are essentially bets on future inflation. The buyer and seller have different inflationary expectations. In the bitcoin economy this is not possible because by design bitcoins can not be 'printed' arbitrarily.
legendary
Activity: 1050
Merit: 1003
Her idea could require holding a reserve of bitcoin assets. For example she might be building a bitcoin bank or a bitcoin casino. Alternatively she might just want a diversified btc portfolio. Bonds allow her to maintain an equivalent long position on bitcoin and also leave some money left ovwr for other investment or consumption purposes.
legendary
Activity: 3431
Merit: 1233
For example, suppose Mary holds bitcoins and has a business idea that would add significant value to the bitcoin economy within one to two years. It would be in Mary's interest to sell some of her current bitcoins for bonds and some for USD to finance her idea.
Why would Mary sell her bitcoins to buy bitcoin bonds which in turn has to be sold to finance her idea? Why wouldn't she sell her bitcoins and buy directly whatever products and services she needs to implement her idea?
legendary
Activity: 1232
Merit: 1094
The bitcoin spec is pretty much already set down in stone.  You can't allow blocks in the main chain that previous versions of the client would reject.

The one exception is that some of the parameters like maximum block size are intended to be relaxed.  However, even that goes against the principle.

The trust that is placed in the bitcoin system is because there is no central bank with the power to change the rules.

I posted in your other thread, but can post again here (second pass of thinking about it).

I think the best plan would be to create an alternative chain and provide an incentive for miners to participate in it.  In theory, you could have lots of different types of futures in the one alternative chain, but that makes it more difficulty for miners to check things.

A future that is backed against the difficulty in the main bitcoin chain is something that would be easy for miners to test.

The header for the new chain could be











the merkle root is equal to

Hash( , )

The way a Merkle tree works is that for any node, you can prove that a particular node (transaction) was part of the tree.

...

The merkle inclusion check could be implemented in the scripting language for the main chain, so you could have a real bitcoin transaction that required that you prove that your win was included in the alternative chain in order to unlock it. 

Effectively, you would send a coin to on bitcoin chain with a release condition of "must provide proof that the unlock authorization was included in the alternative chain and was confirmed by K blocks and difficulty in the alt chain was at least D".

That would involve 3 checks, first you verify that the unlock code was part of a merkle tree.  Next, you verify that the is valid and finally you verify that the alt chain block in question was buried deep enough in the alt chain.

A user would submit a proof request to the alternative chain.  "The difficulty for block N was greater than X and less than Y" and the alt chain would certify that it is true by including it in the chain. 

Once it has been confirmed by at least K blocks, the winner can take the proof and submit it to the main chain.

I am not sure how best to handle it so that the coin futures can be traded.  The alt chain would need to track the owner of the each future piece, so that the release code only works for 1 person.
legendary
Activity: 1050
Merit: 1003
Would rather discuss contingent claims as I mentioned before, since I now believe it is more useful.
See this thread:
http://forum.bitcoin.org/index.php?topic=19130.0

I'm aware that Vladamir offers mining contracts which would seem expensive to most. Don't blame him at all, Vladamir would be bearing a whole lot of risk otherwise. Given that bitcoin didn't incorporate these features in its design, he is performing a useful service. So is paypal, however; so this argument doesn't go very far. Sorry if I was trolling above, just frustrated with the responses (my fault).

legendary
Activity: 3920
Merit: 2349
Eadem mutata resurgo
Quote
I understand that almost no one here understands economics well, but the computer scientists are at least intelligent. As far as me writing the code, I am an economics professor, not a computer programmer.
(Watching .... this should be entertaining.)

You could always buy mining contracts from our good friend Vladimir the miner who is effectively selling futures contracts on bitcoins .... https://forum.bitcoin.org/index.php?topic=2883.0

Bonds are debt are they not? Bitcoin is a credit currency as fas I'm aware ... (economics can be prone to political bias if monetary concepts are not applied with rigour.)
legendary
Activity: 1050
Merit: 1003
Don't understand the block chain design very well or have any coding knowledge, but I do have a strong hunch that it should be possible. Would love to know if the hunch is correct or wrong, and would love to hear more formal arguments from the developers about this.

After thinking more, I posted the next day about contingent claims. It's worth noting that bonds are redundant if you have contingent claims. A bond (with no default risk) is just a contingent claim that is a valid bitcoin in any possible future state of the world. You can make one from a bundle of contingent claims. Thus, implementing contingent claims probably makes more sense than implementing bonds.

 
sr. member
Activity: 416
Merit: 277
...
For example, miners would have the option of mining instantly maturing bitcoins or bitcoins maturing on Jan 1st of 2012, 2013, 2014, 2015, 2016. (one to five year maturity)
Average difficulty for all maturities would be pegged to hold the total number of all types of coins constant according to Satoshi's schedule.
...

So, given that the client instantly converts bitcoin bonds on maturity into bitcoins and given that the number of bitcoins in the economy meets a fairly strict schedule, in the run up to the maturity of one set of bonds the bitcoin client would have to know how many bonds were going to mature and adjust the difficulty of the normal block generation so that after they mature, the right number of bitcoins is in circulation. This would probably mess up the block generation rate in the time before maturity and so prevent this implementation of bonds. Block generation provides timely transaction confirmation and anything which harms this cannot be tolerated.

ByteCoin
legendary
Activity: 1050
Merit: 1003
@MeSarah
The redomination you suggest (which I think is a good one though though USD like terms might be better than WOW currency like terms) could be achieved by developing an improved GUI. I think that developers will do this in the near future. I don't think that creating new currencies from scratch is a good idea, however. For the reasons described below:

Eventually a digital currency will emerge (call it Bettercoin) which allows for more p2p contracting possibilities than are currently possible with Bitcoin. If bitcoin is widely used before Bettercoin emerges, than bitcoin will likely remain dominant despite its manifest technological inferiority (think QWERTY keyboards vs. superior alternative key arrangements, or Paypal vs. Bitcoin, or Windows vs. Linux). This is what current holders of bitcoin would like to see happen. If Bettercoin emerges before bitcoin becomes widely used, Bettercoin will gather a larger user base and bitcoin will collapse in value. Bitcoin holders would not be happy about that. The issue with creating new currencies from scratch (ones that don't grandfather in existing holdings) is that these currencies would fragment bitcoin in to several smaller interest groups each of which would like to see their currency take off. Collectively, the currencies would lose value due to uncertainty over which one would eventually take over. Bettercoin would be better positioned to step in and take over the market, and existing asset holders would be wiped out. 

I am doubtful that they will pursue options like the one I am suggesting precisely because of this fragmentation issue, but think that this is misguided. What I am suggesting would require significant modifications to the underlying currency generation rules. Most likely it would entail a splitting bitcoin into two currencies. However, provided that
1) one branch had superior features (for example was faster, more secure, or allowed for more contracting possibilities) 
2) this branch protected the value of incumbent bitcoin holders by grandfathering in their holdings within a certain time frame.
Then everyone would rapidly convert to the superior currency branch and fragmentation would be short-lived. I am worried that a reluctance to experiment with more radical modifications will leave bitcoin in a weaker position relative to future competitors. If everyone is too fixated on preserving Satoshi's original plan, then bitcoin will be unable to adopt features offered by superior p2p platforms. If bitcoin experiments with new features now, then bitcoin will be ready to copy features offered by competitors, effectively killing them off before they became threatening.

full member
Activity: 154
Merit: 100
Ive been thinking about something like this but from a different angle. I havent thought it all the way through but here are my ideas. One of the problems I see with btc is the whole decimal issue. From my prespective 0.000003 or 0.0005 is error prone. I also belive that it has an impeding effect on the adoption of btc.

So here is my unthought through idea. We add multiple coin types to the block chain. For example, if btc is our fixed base of 1 regarding quantity and dificulty, we might add a coin type that is 10 times the quantity of btc and 1/10 of the dificulty. If the orginal btc is the gold standard we might call this the silver btc. We might want to add a copper btc as well. That might look like 100 times the quantity of silver and 1/100 the dificulty of silver. We could go furth and add an aluminum btc. It might look like 1000 times the quantity and 1/1000 of the dificulty of copper btc. I think it would be important that these different coin types live in the same eco-system.

The key would be that they draw reference from the same dificulty, that of the orginal btc. With all coin types using the same reference dificulty it would add a measure of stablity between the coin types. I believe this would bring back cpu miners. That would broaden the user base. I believe it would also keep gpu miners mining gold btc instead of the aluminum because they would in essence be making the same but in a more mature market. But of course the market would decide the value of each coin type. If it becomes more profitible to mine aluminum btc then gold btc miners would transition. This would decrease quanities of new gold btc eventually making it more profitible to mine gold btc again. The affect of adding these new coin types would in essence increase the total btc quanity.

Well, there it is. Please dont be to harsh on me.


legendary
Activity: 1050
Merit: 1003
I would be happy if someone could come up with a technical solution that didn't involve mining and forking the block chain. However, using a contract where a third party holds collateral does not accomplish what I want done. The idea is to reduce the cost of contracting and make bitcoin a more efficient medium of exchange.  This should be the primary goal of bitcoin developers.

I think the main problem is that the post readers aren't sufficiently intelligent and/or ignorant of economics.  I understand that almost no one here understands economics well, but the computer scientists are at least intelligent. As far as me writing the code, I am an economics professor, not a computer programmer.
sr. member
Activity: 337
Merit: 250
full member
Activity: 210
Merit: 100
firstbits: 121vnq
I'm afraid you won't get much traction there either because forking the chain is a Big Deal and there is nothing you want to do that can't be done with already existing bitcoins and payment agreements.
legendary
Activity: 1050
Merit: 1003
This doesn't appear to be generating much well-reasoned discussion here. Could someone help me move this to Project Development and Technical Discussion?
legendary
Activity: 1050
Merit: 1003
@ relative

Very glad you are not on the FED reserve board. Of course, cash dominates bonds if the bonds offer a zero percent or negative interest rate. This is the FED's 0% lower bound on nominal interest rates that is often referred to in the popular press. Bonds would not sell at a zero percent interest rate because other people (not me) would rather spend their bitcoins now.  




legendary
Activity: 1050
Merit: 1003
@Stefan. I really appreciate your question. The short answer is that the miners would observe prices on markets and their consequent mining decisions would determine difficulty. Here are some algebraic details of how it might work.

Here is the approximate existing system which provides a starting point and is left basically intact:

A(t) is the actual total coins of all maturities per hour during period t
H is the  target number of aggregate coins of all types per hour. This decreases according to those strange discontinuities introduced in Satoshi's system, but I'll just pretend it is constant for simplicity.
D(t) = aggregate difficulty needed to approximate H at time A(t)

D(t)= [D(t-1)A(t-1)]/H   Note that this is determined without knowing anything about the past difficulties of specific maturity bonds.
    
Now I graft some bonds on to the existing system. Incorporating multiple bond types should be easy.

Ab(t) is the number of coins of one year maturity per hour during period t.
Ac(t) is the number of coins of instant maturity per hour during period t.
A(t) = Ab(t) + Ac(t) (by definition)

Db(t) is the difficulty for coins of one year maturity
Db(t) = [Db(t-1)Ab(t-1)] / D(t)  

Dc(t) is the difficulty for coins of instant maturity
Dc(t) = [Dc(t-1)Ac(t-1)] / D(t)

Rearranging the equations the ratio of the two difficulties is:

Dc(t)/Db(t)= Dc(t-1)Ac(t-1) /  Db(t-1)Ab(t-1)

Bounds on one period maximum upwards and downwards movements in the difficulty ratio would prevent sudden movements across maturities from screwing with the aggregate generation rate A(t).
e.g. Dc(t)/Db(t) = 0.8 [Dc(t-1)/Db(t-1)]           if       [Dc(t-1)Ac(t-1) /  Db(t-1)Ab(t-1)]   <=    0.8 [Dc(t-1)/Db(t-1)]
                       = [Dc(t-1)/Db(t-1)]               if       1.2 [Dc(t-1)/Db(t-1)] >  [Dc(t-1)Ac(t-1) /  Db(t-1)Ab(t-1)]   >    0.8 [Dc(t-1)/Db(t-1)]
                       = 1.2 [Dc(t-1)/Db(t-1)]          if       [Dc(t-1)Ac(t-1) /  Db(t-1)Ab(t-1)]   >    1.2 [Dc(t-1)/Db(t-1)]  
 
Initially the two difficulties should just be seeded as equal, Dc(t)/Db(t)=1. Over time Dc(t)/Db(t) would increase until it reaches a price that clears the mining market (i.e. miners are indifferent between maturities).
In the medium to long-term, Dc(t)/Db(t) would fall (increase) if markets became more (less) confident about the future of bitcoin.
  
newbie
Activity: 56
Merit: 0
Quote
For example, I would like to hold bitcoin on the chance it is successful in a few years time. Since I plan to hoard, I would like to convert my bitcoin holdings into bonds. I don't want to invest in a company that might rip me off.

...and there is your logical fallacy.
it doesnt add to the bitcoin economy if you buy a bond without risk generated by the monetary system.

a paper ("bond") without any risk and with no interest is known as cash, or BTC holdings in this case. why dont you just hold BTC for 2 years?
if you want to convert your cash into capital by buying a bond, there is risk involved, and that is the way it is supposed to be.
riskless bonds is certainly not a goal of a viable monetary system, neither is endless "capital".

the latter point is the main fallacy of our current monetary policy: the assumption that the injection of money creates capital and grows the economy.

Pages:
Jump to: