Pages:
Author

Topic: Mastercoin suggestion: Contracts for Difference (Read 5565 times)

legendary
Activity: 1358
Merit: 1003
Ron Gross
ELI5:

You an me enter into a contract.
We both deposit 100 MSC.
Let's say 1 MSC = 15 USD.

The contract states that either of us can liquidate the contract at any time (other liquidation conditions are also available, this is just an example).
When liquidation happens, I get $1500 worth of MSC, and you get the rest.

Example 1:
1 MSC is worth 10 USD when liquidation occurs.
I get 150 MSC.
You get 50 MSC.

Example 2:
1 MSC is worth 30 USD when liquidation occus.
I get 75 MSC.
You get 125 MSC.

Example 3:
1 MSC is worth 150 USD
I get 10 MSC
You get 190 MSC

Example 4:
The price of MSC gets to 8 USD. The contract is automatically liquidated by the protocol, to ensure it has enough funds.

I get 187.5 MSC
You get 12.5 MSC

Example 5:
The price of MSC quickly drops to 7 USD without a prior price point at 8 USD.

I get 200 MSC = 1400 USD (100 USD less than I should)
You get 0.

The contract can include margins to protect against this - you can set it to auto-liquidate at 9-10 USD or require a larger security from the other party.
member
Activity: 96
Merit: 10
Eli5 or you lost me completely
legendary
Activity: 1358
Merit: 1003
Ron Gross
Following an interesting discussion last night, I flushed out some of our joint thoughts about this into a wiki article about CFDs. Everyone, please feel free to contribute and correct any foolish assumptions or mistakes I made there Smiley
legendary
Activity: 1358
Merit: 1003
Ron Gross
I would love to do it, thanks for the recommendation.
Don't see myself manufacturing the time to do this in the near future however.
legendary
Activity: 1834
Merit: 1019
To develop some basic literacy on exchange rate issues and managed currencies, I suggest that everyone go through this series of web lectures on "Foreign Exchange Markets and the Balance of Payments." When he says Euro, you say MastercoinEuro and when he says swiss franc, you should say mastercoin.

http://www.youtube.com/playlist?list=PL9178E8F59734DA26

I know it sounds a little pedantic to recommend this, but seriously you 100% need to know this stuff.

I, for one, appreciate it Smiley Ever learning
legendary
Activity: 1050
Merit: 1003
To develop some basic literacy on exchange rate issues and managed currencies, I suggest that everyone in the thread go through this series of web lectures on "Foreign Exchange Markets and the Balance of Payments." When he says Euro, you say MastercoinEuro and when he says swiss franc, you should say mastercoin.

http://www.youtube.com/playlist?list=PL9178E8F59734DA26

I know it sounds pedantic to recommend this, but seriously you 100% need to know this stuff.

Also, just because you have understand things from an investing point of view doesn't mean you understand it completely. Here, we are really thinking about things from the point of view of government (designing an algorithmic policy that stabilizes the currency).
legendary
Activity: 1050
Merit: 1003
You absolutely do need a price feed, centralized or decentralized somehow (eg. proof of stake voting), in order to do any of this.

If people think this is a concern I could write a spec for proof of stake voting on price feeds to require larger collusions to significantly manipulate prices.


Agree about the above. Vitalik, you might want to look at this thread from September. You seem to be thinking a long similar lines.

https://bitcointalksearch.org/topic/hop-whitepaper-altcoin-solution-for-trustless-decentralized-btc-usd-exchange-297147

I discuss a proof-of-stake based price feed that is extremely resistant to gaming/collusion.
The goal in this case is cryptoUSD rather than contracts for difference.

I use floating interest rates (possibly negative) to make sure a) there is always demand for cryptoUSD holdings AND b) there is a limitation on cryptoUSD issuance so the system can't get overleveraged. Essentially the value of cryptoUSD issued is approximately a fixed single digit  percentage of the backing coins market cap. Rather than using escrows, the entire outstanding coin stock is used as backing. This is much more stable.

Been to busy to work on it for the last couple months, but I'm still hoping to get back to it with a more comprehensible exposition and some refinements. 

sr. member
Activity: 330
Merit: 397
I think that back when we discussed longcoins and shortcoins ideas it turned out that it is possible to not need a data feed.

Basically at any moment when either party saw a price somewhere that made them prefer that price, they could escape the longcoin/shortcoin position to cash in wherever it was that they thought would for them be a better deal.

It thus needed no oracles aka data feeds, since it is no one else's business but your own why it is that you exercised, or even whether you were in fact going to actually be able to get the better deal that had lured you into exercising


You absolutely do need a price feed, centralized or decentralized somehow (eg. proof of stake voting), in order to do any of this. The problem is that the network has no way of "knowing" about the real world; there is no term in cryptographic functions to represent physical US dollars. Thus, we have the following problem. Suppose that you had some kind of instrument that reflected the price of USD without relying on any kind of price feed. Now, suppose that due to a market fluctuation the price of this instrument drops to 0.99 USD. Presumably, people would buy up this instrument seeing it as undervalued, and thus raise the price back up to 1 USD - that's the self-fulfilling prophecy for which the designers hope. However, the problem with self-fulfilling prophecies is that they go both ways. What if the price of this instrument drops to 0.96 USD, and some investors get a different idea: that the price drop is a sign that the link between the instrument and the USD is broken, and it will only drop further? Then, they sell, and the price of the instrument might drop to 0.93 USD, then 0.9 USD, then more and more people will realize this fact, and the price of the instrument will drop further. Unlike Bitcoin, however, it will likely never recover. Bitcoin can restabilize at a lower price target, and many times did. The USD instrument cannot stabilize at anything but 1 USD, so if it's not at 1 USD it goes to zero.

So these "magic"-based price targeting mechanisms will undoubtedly be stable for a while, but the first black swan event will wipe half of them out in an instant. This is why you need external, hard data on prices.

Quote
LIBOR-style manipulation

If people think this is a concern I could write a spec for proof of stake voting on price feeds to require larger collusions to significantly manipulate prices.

Quote
Also I do not believe what is described in the OP meets the formal definition of a CFD - at least not the one used in the finance industry.   I only interned at an ibank and decided it wasn't for me so I am certainly no expert.

How is it not a CFD? It seems to follow the examples here pretty closely. In any case, it may be different in some technicality, but precise definitions aren't important; what is important is what it lets you easily have an arbitrary position in a market with an arbitrary margin if you can find a counterparty.

Quote
BTW you could even have meta features based on it: I could basically entrust a certain amount of mastercoins to "any CFD that meets certain criterias". This way, even if the duration of the contract runs out, and my counterparty can withdraw their funds ... my CFD will automatically pop up to find the next counterparty, and I won't have to manually find another one.

This is interesting; we could definitely do it.
legendary
Activity: 1358
Merit: 1003
Ron Gross
I want to add a $500 bounty for someone qualified in Economics to research and document this properly.

Added a ticket, verifying the amount with the board.

https://trello.com/c/EAWWSd1n/40-economic-research-why-does-msc-have-value

Quote
How much would be a suitable bounty for this feature? $500?

We need someone with a solid economics background (Peter Surda caliber) to research and explain why MSC has value.

A good feature to investigate is the CFD feature. CFDs and backed currencies "need" MSC to have value, and thus I believe their adoption will _cause_ MSC to have value.
legendary
Activity: 1358
Merit: 1003
Ron Gross
wouldnt such a proposition require more a larger amount of mastercoin to stabilize your position than said position is worth?

The size of assets the Mastercoin economy can support is of course tied to the value of MSC.
If MSC drops then the contract would be liquidated.
Nobody would be "cheated", they would just get a shorter term contract than what they would have hoped for.

Even if mastercoins were worth 1 trillion dollars (I see your smile Ron), people would not tie up wealth in order to secure wealth, If speculators choose to use this instrument than fine, I am sure its a nice feature, but I do not see how it makes economic sense to use such a proposition in order to reduce volatility in MSC. If you want to reduce volatility in another currency just hold it, and if you want to reduce volatility in a derived currency we already have the escrow proposition?

I'll ping Peter Surda again, maybe he explain my thoughts better (or prove me wrong).
sr. member
Activity: 787
Merit: 250
★Bitvest.io★ Play Plinko or Invest!
wouldnt such a proposition require more a larger amount of mastercoin to stabilize your position than said position is worth?

The size of assets the Mastercoin economy can support is of course tied to the value of MSC.
If MSC drops then the contract would be liquidated.
Nobody would be "cheated", they would just get a shorter term contract than what they would have hoped for.

Even if mastercoins were worth 1 trillion dollars (I see your smile Ron), people would not tie up wealth in order to secure wealth, If speculators choose to use this instrument than fine, I am sure its a nice feature, but I do not see how it makes economic sense to use such a proposition in order to reduce volatility in MSC. If you want to reduce volatility in another currency just hold it, and if you want to reduce volatility in a derived currency we already have the escrow proposition?
legendary
Activity: 1358
Merit: 1003
Ron Gross
wouldnt such a proposition require more a larger amount of mastercoin to stabilize your position than said position is worth?

The size of assets the Mastercoin economy can support is of course tied to the value of MSC.
If MSC drops then the contract would be liquidated.
Nobody would be "cheated", they would just get a shorter term contract than what they would have hoped for.
sr. member
Activity: 787
Merit: 250
★Bitvest.io★ Play Plinko or Invest!
wouldnt such a proposition require more a larger amount of mastercoin to stabilize your position than said position is worth?
legendary
Activity: 1358
Merit: 1003
Ron Gross
FYI I asked Peter Surda to look at the project ages ago (which means 3 days ago in "real time").
He hasn't replied yet, I'll ping him in a few days.
legendary
Activity: 1666
Merit: 1010
he who has the gold makes the rules
I agree with the third party dependency issue.  It exposes the system to manipulation like with LIBOR. 

Also I do not believe what is described in the OP meets the formal definition of a CFD - at least not the one used in the finance industry.   I only interned at an ibank and decided it wasn't for me so I am certainly no expert.

But I think what the OP (kind of) and Markm is describing here is this:

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

These things get really complex and there are people out there who have spent decades building trading systems and various financial derivatives. 

It would be good to involve people with this experience and get their input before a spec is written since they ultimately would be the users of this.

Perhaps they will want to invest in the development...
legendary
Activity: 2940
Merit: 1090
I think that back when we discussed longcoins and shortcoins ideas it turned out that it is possible to not need a data feed.

Basically at any moment when either party saw a price somewhere that made them prefer that price, they could escape the longcoin/shortcoin position to cash in wherever it was that they thought would for them be a better deal.

It thus needed no oracles aka data feeds, since it is no one else's business but your own why it is that you exercised, or even whether you were in fact going to actually be able to get the better deal that had lured you into exercising.

Why should anyone but you need to know how much you are going to go sell something for elsewhere? If in fact you do know of some obscure marketplace where you can get a better price than others who only know of some well known markets not the lucrative markets you know of isn't it in your best interest not to reveal what price the asset is worth on some market somewhere but simply to close your position and go make your sale without telling everyone "oh by the way, right now gold is going for $XXXX.XX over at such and such a place" ?

I do not recall offhand the details of the setup that allowed people this freedom from third party claims about what things are worth, but isn't it in general better in a supposedly free market to be able to decide for yourself whether exercising or not is profitable for you, taking into account what prices you with your possibly extraordinary contacts and knowledge of markets can get, than to let some third party dictate how much your stuff is worth based on some oracle or market or feed that they themselves happen to prefer to use for making their own decisions as to what the current value of things is to them?

In the context of whether something is worth a meatspace dollar or not for example, if you yourself happen to find a buyer who is willing to pay a meatspace dollar for something shouldn't that be sufficient, shouldn't you be able to just sell the thing to that buyer for a dollar without having to reveal to the people you are doing long and short stuff with that you do know of an opportunity to get a dollar and maybe even reveal to them who what where you (or maybe anyone in general who knew of the opportunity) could go get a dollar at this particular moment?

Basically such a system even allows both the long position person and the short position person to totally dis-agree about the current value of a thing, while allowing both of them the freedom to go cash in at the value they believe they can get for it, whether or not the other party could get that same amount for it or not.

This could even go to totally personal opportunities, "oh my uncle will give me a hundred bucks for this first dollar I ever earned by trading, so I don't care that you believe it is only worth a dollar I am going to sell it for a hundred dollars too bad for you your uncle isn't so generous" type situations. When you want out of the position you get out, no one need know how much you got or hoped to get for the stuff you backed out of / withdrew from  the long/short situation. No need for an oracle or feed telling everyone "by the way so and so's uncle will buy one for a hundred right now" etc.

The end result though was like a contract for difference except both parties got what they could get for a thing without any need to know what the other party or a third party arbiter/oracle/feed claimed a thing was worth.

(You sell your stuff where you think best for you, other chap sells his where he thinks best for him.)

It thus seemed like a pretty good setup, but I think the reason it never got pursued was that it had no leverage into it, and back when we were discussign it everyone was all about leverage, they wanted basically what the teenager's site that had died with everyone's funds was providing, an ability to bet small to win huge on changes in prices e.g. of bitcoins compared to dollars or dollars compared to bitcoins etc.

The longcoin/shortcoin approach I think basically needed collateral, so in those days with that audience all of whom wanted something for nothing without collateral it was anathema.

-MarkM-
legendary
Activity: 1050
Merit: 1003
I advise everyone to take a look at this comparison I just drew up between BitShares and Mastercoin CFDs.
The two features sound terribly similar.
Here in lie three key differences distinguishing master CFDs from BitPonzi:

1) With CFDs, you are forced to settle the position at an expiration period. This prevents unsustainable accumulation of debt which is central to BitPonzi.
2) With CFDs, there is no magical shower of interest payment. This removes the incentive for unsustainable accumulation of debt which is central to BitPonzi.
3) With CFDs, (I believe) there is an external data stream reporting prices. This means that prices aren't selected by magic. (again failure to employ magical thinking in your algorithm is a distinguishing feature from BitPonzi.) [You do face a challenge in dealing with potential data feed manipulation, however. ]


Again, I'm glad to see this new development. Capacity for change is essential to long-term success. This is why I have never let loose the rabid rabbit on Mastercoin and hope I never feel the need to.
legendary
Activity: 1050
Merit: 1003
Since this is for a short-term contract I agree that the proposed CFD scheme is feasible. With CFD, you are forced to settle the position at an expiration period.

This is very different from a pegged MastercoinUSD. With USD I can keep them in my wallet as long as I feel like.
I would also argue that this makes CFD much less useful to the average person.

But it's still a great idea. Nice to see this making progress instead of languishing because of misguided commitment to a flawed implementation.  
sr. member
Activity: 297
Merit: 250
subbed
legendary
Activity: 2478
Merit: 1362
following...
Pages:
Jump to: