Pages:
Author

Topic: Proposal from a macroeconomist for an optimal crypto-currency - page 2. (Read 4296 times)

newbie
Activity: 29
Merit: 0
First explain carefully what a "repo market" as opposed to, say, a bond exchange or stock exchange or futures market is, or when one or more of the latter counts as a repo market.  Second, exactly how an interest rate relates to such a market.  The only one of those market types where interest rates are directly measurable seems to me to be some kind of futures market. 

A repo market is a collateralised bond market. See e.g. https://en.wikipedia.org/wiki/Repurchase_agreement . It combines elements of futures markets and bond markets to produce one which comes close to capturing the risk free rate. The basic idea is that I sell you an asset (perhaps below market price), and we both sign a contract in which we promise to trade back the asset at some specified price in the future. The specified price may be written as a function of market observables to remove some of the risks associated with fluctuations in the value of the asset. As you point out in a later post, an enforcement method is obviously needed for these contracts, however, if the collateral is appropriate, losses from the other party reneging on the contract may be minimal.

If it's a service that we can figure out how to completely decentralize and build into the blockchain itself, then we're cooking with gas. If it's something that would be an external resource, or that would have to be centralized at a website somewhere, then it gets us nothing. 
Or at least maybe check whether something like bitshares or the like, which already claims to plan decentralised markets that do not rely upon outside "oracles", might be able to or would not suffice to provide the required information.

Yes. OK. The details of the bitshares decentralized market seem a bit sketchy in the white paper, but they seem to have much of the required structure. eMunie also seems to have solved the problem, though I understand from Raxe that their solution isn't really decentralized. Finally, Ripple certainly provides a structure on which something like this could be built, with decentralized trust.

The basic requirements here for the automatic reaction that we're looking for is that it has to arise in a decentralized p2p service, where the information that's being reacted to is visible to and checkable by literally everybody who can see the blockchain up to the point where the information matters.  Essentially the problem is that if it's an external source of information - if it reflects information not immediately visible to everyone looking at the blockchain - then people will not be able to check the blockchain to see that the response to it was correct at every point.   Being part of the blockchain, in turn, means it has to be a fully decentralized P2P application. 

I do not pretend to know all the precise implementation details. I was hoping to provide useful guidance on the econ side, but having overused the word "easy" I guess I ought to put my money where my mouth is and conjecture as to how this could be implemented. The version I present here is without any explicit trust mechanism, though perhaps using the Ripple trick for trust would further help. For clarity in the below I call the new currency repocoins.

1) The wallet software would sync both the repocoin block chain, and that of a third party currency (Bitcoin would be the obvious one given its dominance, so I'll call the third party currency bitcoin below).

2)a) You host repocoin-bitcoin exchange orders within the repocoin blockchain, so they're public and verifiable. Each exchange order consists of two quantities: a number of bitcoins, B (possibly negative) and a price in units of repocoins P. The order represents an offer to sell (buy if negative) B bitcoins at the end of the current block at a price of P repocoins per bitcoin.
2)b) At the end of the block, the intersection of the supply and demand schedules are calculated, and the market exchange rate is set at this point. We will call this P* in the below. Since this is a deterministic function of the orders, it may be calculated by all nodes and verified en mass. All sell orders below P* will be executed (to be described), as will all buy orders above P*.
2)c) The repocoins and bitcoins in the orders to be executed are transferred as prescribed, with the bitcoin transactions going through first, and the repocoin ones only happening once the bitcoin ones have been verified en mass. Since the network can enforce the removal of repocoins, but not the removal of bitcoins, this order is required.

3)a) You host repocoin-bitcoin repo orders within the repocoin blockchain, so they're public and verifiable. Each repo order consists of two quantities: a number of bitcoins, B (possibly negative), and a gross interest rate R (e.g. 1.02 representing 2% interest). The order represents an offer to sell (buy if negative) B bitcoins at the end of the current block for a price of P* repocoins per bitcoin and buy (sell) them back at the end of the next block for a price of P*R repocoins per bitcoin. Note: the seller has borrowed BP* repocoins and will pay back BP*R, i.e. R is the gross nominal interest rate on their loan.
3)b) As before, we calculate the market interest rate R* from the intersection of the supply and demand schedules.
3)c) We mark (R*-1)BP* repocoins in the wallet of each seller as locked and untrasferable. This is enforced by consensus.
3)d) At the end of the current block, as before, the repocoins and bitcoins in the orders to be executed are transferred as prescribed, with the bitcoin transactions going through first, and the repocoin one only happening once the bitcoin ones has been verified. If a seller's bitcoin sale transaction fails for some reason then their previously locked repocoins are unlocked.
3)e) At the end of the subsequent block, the reverse transaction has to take place. This only happens if the seller's wallet has the required BP*R* repocoins (including the locked ones). If the seller doesn't have this number of repocoins, then the previously locked repocoins are unlocked and sent to the buyer. This leaves the buyer a total of B bitcoins and (R*-1)BP* repocoins, which are worth BP** + (R*-1)BP* repocoins, where P** is the new exchange rate. Providing the exchange rate fluctuations have not been excessive, this should still represent a moderate gain for the buyer. If the seller does have the required number of repocoins, then, as before, the bitcoins are transferred back first, and then the seller's locked repocoin are unlocked and the required repocoin are sent the other way. If the bitcoin transaction fails (e.g. because they do not have enough), then the seller keeps their repocoins, and the previously locked ones are unlocked. This leaves the seller with BP*R* repocoins, which (given small exchange rate fluctuations) they ought to prefer to B repocoins.
3)f) So, given the locking mechanism, it is only following large exchange rate movements that people will have an incentive to default. At worst then, R* will be the market gross nominal interest rate plus a bit of a risk premium. But fluctuations in the risk premium should be small compared to the fluctuations in the value of e.g. bitcoin, so targeting R* will still result in a stable currency.

4) Once the market rate in the repo market is observable, it's then just a matter of applying sufficient PoS interest on the next block when the repo market rate is below target, and demurrage if its above target. For example, suppose the target is 4%. Then, if the market rate were to be 3%, sellers in the repo market would gain interest on the repocoins they borrowed during the block in which they'd borrowed them, and hence they'd be more inclined to borrow in the first place, pushing up the market interest rate.
legendary
Activity: 1316
Merit: 1014
ex uno plures

When you find a way of creating a crypto-currency without institutional backing (a central bank or other large guarantor of liquidity and value) whose value doesn't trend towards the cost of mining it, please publish your results Satoshi !

Use of malicious negative trust to suppress free speech discredits the bitcoin community

legendary
Activity: 905
Merit: 1012
ZeroNominal, I would argue that demurrage is more fair.i Maybe this is getting off-topic, but hey it's your thread. When you are using inflation, sticky prices mean that you end up favoring those close to the source of inflation, e.g. investment banks in the fiat economy, miners in the inflatacoin economy. Demurrage on the other hand is felt equally and instantaneously by everybody, pro-rata to their holdings.
legendary
Activity: 924
Merit: 1132
Oh... kay....  I'm game, but still struggling to see how to do it.

First explain carefully what a "repo market" as opposed to, say, a bond exchange or stock exchange or futures market is, or when one or more of the latter counts as a repo market. 

After some quick research; a repo market is a very specialized type of bond market.    Someone sells a bond (borrows money), then buys it back for slightly more money (or repays the bond plus interest) 24 hours later.  

In the conventional financial world, this is done with government bonds.  The people who need to borrow large amounts for very short periods are almost all banks and brokerages, looking at short-term imbalances in the flow of money among themselves.  

Obviously, there are no government bonds in a cryptocurrency blockchain, so we couldn't do it that way.    It is possible (though some hard work would be involved) to make a decentralized market part of a blockchain.  

However, in the absence of a way to verify and preapprove the identity of the counterparty, it would be completely insane to buy a debt instrument such as a bond on that market.   Picture the buyer, one day later, calling the police: "somebody owes me a million coins, but I don't know who.... " Even if you do have a pretty good idea who, there is still counterparty risk which is effectively absent from repo markets in which the government is the counterparty, and counterparty risk will raise the interest rates in an unpredictable way.

Legal identities are essentially the relationship between people (or businesses) and governments.  When we need to convince people that they can use the government to enforce our agreement on us, we need to give them the legal identity that links that government to us.  So the participants in the repo market must necessarily first publicly register a legal identity and bind it to a key.

And at that point we're no longer talking about a completely decentralized service, because governments are huge pits of information all of which is external to the blockchain.  


newbie
Activity: 29
Merit: 0
The question will become: how do you control the nominal interest rate without any econometric data whatsoever?

There's a reason Freicoin's demurrage rate is flat: it's not out of laziness or ignorance. It's the best you can do! The only other real option is to track by means of a synthetic asset or prediction market, but that leaves the entire economy vulnerable to collusion and manipulation. But having a fixed demurrage rate doesn't make Freicoin broken - instead of the real nominal interest rate varying between 4-6%, it'll vary between -1% and 1%. This is an improvement. And, sadly, the best that can be done without sacrificing user privacy and/or decentralized control.

Perhaps I was a bit hasty in my discussion of Freicoin previously. If you could get an interest rate of -1% to 1% then without demurrage that would be an unambiguous improvement, since it represents a lessening of the inflation tax on holding money. However, doing it via demurrage is just replacing the inflation tax on holding money with an explicit demurrage tax. The fact it's explicit makes it marginally preferable, but the economic distortion is still there. People have to hold money to perform transactions, but they're penalised in doing so by the presence of inflation/demurrage.

I started working on a paragraph describing a potential mechanism, but I see there have been several subsequent posts, so I will defer it till my next post.
legendary
Activity: 2940
Merit: 1090
Or at least maybe check whether something like bitshares or the like, which already claims to plan decentralised markets that do not rely upon outside "oracles", might be able to or would not suffice to provide the required information.

Nice to have an economist active around here again.

Or wait, does a macroeconomist count as an economist or are they rather distinct different disciplines?

-MarkM-
legendary
Activity: 905
Merit: 1012
Quote
All we need to observe is the interest rate in a repo market denominated in the cryptocurrency, and you'll get big gains in stability. This doesn't seem too hard to me.

Okay, if it's not too hard then please reduce this down to practice and show us a detailed design of how this would work.
legendary
Activity: 924
Merit: 1132
Oh... kay....  I'm game, but still struggling to see how to do it.

First explain carefully what a "repo market" as opposed to, say, a bond exchange or stock exchange or futures market is, or when one or more of the latter counts as a repo market.  Second, exactly how an interest rate relates to such a market.  The only one of those market types where interest rates are directly measurable seems to me to be some kind of futures market. 

If it's a service that we can figure out how to completely decentralize and build into the blockchain itself, then we're cooking with gas. If it's something that would be an external resource, or that would have to be centralized at a website somewhere, then it gets us nothing. 

The basic requirements here for the automatic reaction that we're looking for is that it has to arise in a decentralized p2p service, where the information that's being reacted to is visible to and checkable by literally everybody who can see the blockchain up to the point where the information matters.  Essentially the problem is that if it's an external source of information - if it reflects information not immediately visible to everyone looking at the blockchain - then people will not be able to check the blockchain to see that the response to it was correct at every point.   Being part of the blockchain, in turn, means it has to be a fully decentralized P2P application. 

Now, if it "still doesn't seem too hard" to you, then obviously you have a lot of experience designing fully decentralized P2P applications. 




newbie
Activity: 29
Merit: 0
Right.  Instead of looking for the stats we can't get, we should be looking at the stats we can get and figuring out how we can use them to make something that works better than if we ignored them.  

So, really, that's what I'm interested in too.  The stats we can get from the block chain aren't exactly the NGDP, or aren't exactly the velocity of money, or whatever,  But they are what we can get, and if we're to do any better than we've done they're what we have to start with.  

I'm no economist, and I don't know what to assume or do about them, but surely they are related to figures that economists have studied?  Maybe not perfectly, but enough for some broad empirical rules under reasonable assumptions about those relationships, about how to respond to them to make things better than they'd be if we simply ignored them?  

'Cause if we can't do better than ignoring them what's this conversation about in the first place?

Well, my point was that we don't need any of these statistics. We don't need to know velocity, or NGDP. All we need to observe is the interest rate in a repo market denominated in the cryptocurrency, and you'll get big gains in stability. This doesn't seem too hard to me.

On the other hand, it's really not clear what the results of targeting the total value of all transactions would be. It's not even clear to me that it's possible. For example, you might think that you could just increase the interest rate on the currency when you were above the desired trend, since with higher interest rates on the currency, people have an incentive to hold it rather than making transactions. But if some people in the crypto-economy are more patient than others, then an increase in interest rates will lead to the patient people buying the crypto-coins off the impatient ones, generating additional transactions. Without sitting down and doing the maths I'd find it very hard to say what would happen here, and if I find it hard to predict, the chances are other participants in the market would also find it hard to predict, and you'd get more instability not less.
legendary
Activity: 905
Merit: 1012
But there aren't any meaningful stats you can extract out of the block chain. The fact that the block chain exposes who paid how much to whom is a bug, not a feature, and that source of data will be eliminated in the near future. The question will become: how do you control the nominal interest rate without any econometric data whatsoever?

There's a reason Freicoin's demurrage rate is flat: it's not out of laziness or ignorance. It's the best you can do! The only other real option is to track by means of a synthetic asset or prediction market, but that leaves the entire economy vulnerable to collusion and manipulation. But having a fixed demurrage rate doesn't make Freicoin broken - instead of the real nominal interest rate varying between 4-6%, it'll vary between -1% and 1%. This is an improvement. And, sadly, the best that can be done without sacrificing user privacy and/or decentralized control.
legendary
Activity: 924
Merit: 1132

So, essentially, we can use these metrics that are easy to generate from the blockchain to determine the demand for the currency. We can control the increase in money supply through controlling the block reward for miners. Transaction fees could be used as a tax to take money out, or maybe there are other ways.

A good argument for targeting NGDP, or velocity (or whatever you want to call it) is that it's pretty simple to measure on a blockchain. Doing that with a traditional currency would be much more prone to error.

Just need the maths to do that. Should be a fairly simple formula to create a currency who's supply responds to demand to enable even more stable (or slightly inflating) prices than good fiat currencies.

Instead of measuring & targeting price inflation to promote growth, we can measure & target growth with the aim of low price inflation.

Right.  Instead of looking for the stats we can't get, we should be looking at the stats we can get and figuring out how we can use them to make something that works better than if we ignored them.  

So, really, that's what I'm interested in too.  The stats we can get from the block chain aren't exactly the NGDP, or aren't exactly the velocity of money, or whatever,  But they are what we can get, and if we're to do any better than we've done they're what we have to start with.  

I'm no economist, and I don't know what to assume or do about them, but surely they are related to figures that economists have studied?  Maybe not perfectly, but enough for some broad empirical rules under reasonable assumptions about those relationships, about how to respond to them to make things better than they'd be if we simply ignored them?  

'Cause if we can't do better than ignoring them what's this conversation about in the first place?

newbie
Activity: 29
Merit: 0
NGDP is essentially every unit of x currency spent in an economy.

No, it's not. It's the total dollar value of final (not intermediate) sales, equivalently, total dollar value added.

You may possibly be right that targeting the total nominal value of all transactions might be an improvement on existing crypto currencies. I really wouldn't like to say, since it depends on the relative variances of various unobserved factors. My hunch is that targeting something sub-optimal like this would not be worth the risk.
member
Activity: 62
Merit: 10
You can get a pretty accurate measure of gdp for the currency in real time from the block chain. Even easier if transaction fees are fixed at a percentage of the value. Can't you use that to give us a formula to fix supply for a stable currency, macro economist.

If possible, this might be a good idea. As far as I'm aware though, the block chain will tell you at most nominal GDP, not real GDP, but NGDP targeting can be close to optimal under certain circumstances. The strongest arguments for NGDP targeting are based on wage rather than price rigidity, but no one that I know of is currently paid a bitcoin wage, so this may be one for the long-run.

If you were to do this, you'd tie the interest/demurrage rate to the deviation between NGDP and an exponential trend (say 2%). So when NGDP was high you'd increase future interest payments more than 1 for 1, for Taylor-principle type reasons.

However, I'm a bit sceptical about the claim that you can get even NGDP from the block chain. In order to arrive at NGDP, you need to know which transactions are associated with the exchange of goods, and which of these exchanges are intermediates for the production of other goods. So, for example if I have two wallets, and I send bitcoins from one to the other, as far as I'm aware, that transaction will appear in the blockchain just the same as one in which I sent someone some bitcoins and they sent me some chocolate. The latter should be counted in NGDP, the former should not. Similarly, if Bob buys cocoa beans with bitcoins from Alice (who harvested them), then Bob uses them to make chocolate, which he sells to Charlie for bitcoins, then if we count both transactions towards NGDP (Alice to Bob, Bob to Charlie), then we are double counting the cocoa beans. True NGDP in this case is just the value of the second transaction.

Thus extracting NGDP from the blockchain seems like an impossible undertaking. But perhaps I'm missing something.

NGDP is essentially every unit of x currency spent in an economy. Official GDP figures are only an estimate & there are different ways of estimating that. We can get a very accurate measure for a certain type of NGDP, money supply (probably similar to M1 money supply) & velocity of money from the blockchain. They may be slightly different to typical government stats, but they should at least be more accurate & updated in real time.

So, essentially, we can use these metrics that are easy to generate from the blockchain to determine the demand for the currency. We can control the increase in money supply through controlling the block reward for miners. Transaction fees could be used as a tax to take money out, or maybe there are other ways.

A good argument for targeting NGDP, or velocity (or whatever you want to call it) is that it's pretty simple to measure on a blockchain. Doing that with a traditional currency would be much more prone to error.

Just need the maths to do that. Should be a fairly simple formula to create a currency who's supply responds to demand to enable even more stable (or slightly inflating) prices than good fiat currencies.

Instead of measuring & targeting price inflation to promote growth, we can measure & target growth with the aim of low price inflation.
Ix
full member
Activity: 218
Merit: 128
I'm not sure where any of this is coming from. Certainly not from anything I've written. Suffice to say it's ridiculous to describe what I'm putting forward as Keynesian (I cited Friedman in the first post for god sake) and it's even more ridiculous to ascribe any of the views mentioned in the above quotes to modern Keynesians, who I may not agree with, but who nonetheless manage far more sophistication than is on display from some of the commenters in this thread.

On bitcointalk.org, if you don't believe that the one true monetary system is bitcoin(-based), you are a keynesian. And the only austrians worth discussing are the ones that trumpeted deflation like Mises, or (lol) Lew Rockwell.
newbie
Activity: 29
Merit: 0
So everyone's financial details should be spied upon in deep detail by Big Brother so that Big Brother can manipulate the currency "properly" ?

-MarkM-


Yes. Their models require 100% accurate information :/

Keynesian economic models also assume that "everything else remains equal" (ceteris paribus). In the real world, however, this never happens.

I'm not sure where any of this is coming from. Certainly not from anything I've written. Suffice to say it's ridiculous to describe what I'm putting forward as Keynesian (I cited Friedman in the first post for god sake) and it's even more ridiculous to ascribe any of the views mentioned in the above quotes to modern Keynesians, who I may not agree with, but who nonetheless manage far more sophistication than is on display from some of the commenters in this thread.
full member
Activity: 140
Merit: 100
So everyone's financial details should be spied upon in deep detail by Big Brother so that Big Brother can manipulate the currency "properly" ?

-MarkM-


Yes. Their models require 100% accurate information :/

Keynesian economic models also assume that "everything else remains equal" (ceteris paribus). In the real world, however, this never happens.
legendary
Activity: 2940
Merit: 1090
So everyone's financial details should be spied upon in deep detail by Big Brother so that Big Brother can manipulate the currency "properly" ?

-MarkM-
newbie
Activity: 29
Merit: 0
In the presence of transaction fees, I think we can rule out many sources of 'noise' in measuring the velocity of money.  One can move coins to a different account within a wallet without incurring fees, and if wallets become sophisticated enough for accounting purposes, a natural desire to avoid incurring expenses ought to mean that money hardly ever moves between wallets unless it is genuinely being moved between actors. 

So we should be able to know, instantly, what the velocity of money is.  We can detect how much of the money supply is spent in every ten-minute block and we can react.

Not entirely convinced by this. Think of all of the transactions generated by a pool. Given even a tiny bit of concern about the continued existence of the pool, people are prepared to incur the transaction fee in order to remove the risk of the pool disappearing with all of their earnings. And in any case, it's not clear that the distortions generated by transaction fees aren't so high as to remove any benefits from e.g. NGDP targetting.

And in any case, even if we knew all transactions corresponded to an exchange of goods, we still wouldn't know which of these were intermediate transactions and which were final. Only the latter is relevant to the calculation of NGDP and/or velocity. We need to know the value added by each transaction, not the final sale price.
newbie
Activity: 29
Merit: 0
Zeronominal check this coin, it will use Proof of importance (POI). If you check it, could you shares your views about it. NEM tries to be next big thing in world of cryptos

There seem to be two proposals, neither of which seem like particularly good ideas:

1) Proposal for hybrid POS/PON: Non-linear proof of stake rewards. Rewards are effectively per account up to a threshold. Seems ripe for exploitation by botnets.
2) Proposal for POI: Seems to be the Google Page Rank algorithm (i.e. Principal Components) with transactions replacing links between webpages, and the sum of coin ages replacing the content quality measure (i.e. the prior distribution over nodes). Seems equally vulnerable to exploitation by botnets. (Suppose there are N legitimate nodes, all trading, N botnet nodes, not trading, and 1 master node for the botnet. The botnet nodes have arbitrarily old coins so receive substantial weight, despite their lack of any trading except with the master. All of this weight then flows to the 1 master node for the botnet, who must then get the highest "PageRank" in the network.) In any case, rewarding old coins is the opposite of what you want to do. The existence of old coins implies that the currency isn't actually being used! By rewarding old coins you're effectively taxing transactions, which imposes a large efficiency cost.

legendary
Activity: 905
Merit: 1012
Cryddit, except that (1) collusion with a miner nullifies those assumptions, (2) when you have the ability to make bets (options) based on the interest rate you've monetized manipulating it, (3) technologies being worked on now like committed transactions and Zerocash encrypt the value amounts so you don't even know how much currency is moving.

We've been looking at this problem since 2010, and I'm confident to say there is no decentralized solution Sad
Pages:
Jump to: