Author

Topic: [GLBSE] - MINING_B.HEADS.FUT / MINING_B.TAILS.FUT - Bet against the mining bonds (Read 2370 times)

legendary
Activity: 1106
Merit: 1006
Lead Blockchain Developer
Looks like it's up and live!  Thanks a bunch to the guys at GLBSE for helping me get it going!


edit: 7/31/12: And I've taken it back down again, not much interest.  I think in a couple of ways it was fundamentally flawed.  I'll rethink it and maybe come back later.
legendary
Activity: 1106
Merit: 1006
Lead Blockchain Developer
In short: Prediction markets should come in the form of an asset that has a fixed payout conditioned on the underlying event, but not on any meta factors. Betsobitco.in don't offer traded assets, and your payout is affected but what other betters do in the future; your proposal is a traded asset, but its payout depends on the number of assets sold (if this number is fixed in advance the problem isn't as bad).

The classic asset is "pays out 1 BTC if X happens". If this asset is traded at p BTC but I think the probability of it happening is q, I can buy it and profit on average if q>p, or buy the complementary asset if q

That makes a lot more sense to me, thank you.

I do still feel like a traditional short is (at arm's length) not much different from a short this future.  (edited, sorry)  I guess the main difference is that the swing in a traditional short isn't quite so pronounced, and scales based on the actual value of the asset.  In my case I am not scaling the return based on how far the INDEX swings, so if you fall on the wrong side of things, you can definitely lose a bit.  The formula may have to be adjusted for that, but if I do adjust it, it comes at the expense of the gains for the other future.

I suspect that when it becomes easier to find someone from which to borrow shares, then the market for this future will almost certainly vanish.  Something along the lines of a brokerage organization or something would be necessary I think.

I absolutely agree that for this future to function, someone has to buy into both sides.  After a few months operating it I may be able to build up a pool of BTC with which I'd be able to guarantee a certain return even if no one else buys in.  For example, I could always buy in 100 shares myself on both sides.  I will also likely shift the formula such that the gains are a little higher, and the losses a little lower.  I need a pool of operational funds for that to happen though, so I'm hoping we do get some buyers in the next few months so that I can make improvements on that in future months.
donator
Activity: 2058
Merit: 1054
you in this case have more of a "meta" asset where you don't sell parts of a debt or company but a bet that benefits nobody but the investors that bet on the right side + you as you probably take a cut. You don't create new value, you just offer a way of redistributing it, based on some set parameters.
A proper prediction market certainly creates value. It gives people with knowledge about an event, or the ability to obtain it, an incentive to obtain knowledge and share it with the world, which can then act upon it. Concepts such as Futarchy take this idea several steps further, just to give a hint on the usefulness.

I don't think you understand what I'm talking about.
That is entirely possible.  Smiley

I'm very much open to alternate explanations if I didn't catch the first one correctly.
In short: Prediction markets should come in the form of an asset that has a fixed payout conditioned on the underlying event, but not on any meta factors. Betsobitco.in don't offer traded assets, and your payout is affected by what other betters do in the future; your proposal is a traded asset, but its payout depends on the number of assets sold (if this number is fixed in advance the problem isn't as bad).

The classic asset is "pays out 1 BTC if X happens". If this asset is traded at p BTC but I think the probability of X happening is q, I can buy it and profit on average if q>p, or buy the complementary asset if q
legendary
Activity: 1106
Merit: 1006
Lead Blockchain Developer
I don't think you understand what I'm talking about.

That is entirely possible.  Smiley

I'm very much open to alternate explanations if I didn't catch the first one correctly.
donator
Activity: 2058
Merit: 1054
Now that you mention it, thinking about your proposed contract terms, it's not really a prediction market at all, it's more like a bet of the kind you find at betsofbitco.in, where funds are distributed in a somewhat arbitrary way from losers to winners.
I'm pretty sure this is what most markets do?  Transfer cash from investor to investor?
Yes, but not in an arbitrary way, in a way that guarantees that someone with more knowledge about an event than the market at a given time can profit on average (and thus is incentivized to share his knowledge with the world by investing accordingly). On betsofbitco.in I can have exact knowledge of the probability of the event, and still lose averaging on its instantiation.

I realize that's how it's supposed to be.  But that's not how it really is.  Everyone, and I mean everyone games the system to the best of their ability.

It's most certainly not arbitrary though.  More like a game of chess.
I don't think you understand what I'm talking about.
legendary
Activity: 1106
Merit: 1006
Lead Blockchain Developer
And it's one of the biggest criticisms of the financial sector. There's a german proverb that could be translated like this: "Millions and millions of flies can't be wrong - eat more shit!".
I guess it's inevitable anyways, but still

LOL, that's an awesome quote!  Sadly, so very true.

But... could you keep it down for 5 days on average?

And, if you could, doesn't that benefit the people that want to buy the bond?

The average is as far as I know only a weighed (hopefully by shares traded, not BTC volume) average over all trades happening in the last 5 days. If I manage to do an insane amount of trades, the few trades that happen afterwards are negligible.

The easiest victim currently is PUREMINING:
200 shares are enough to trade to myself at 0.00010001 - fees would be ~50 Satoshis each share so I can do a LOT of trades. This would eb done by a script of course and during a time where there's very few trades in general. It would be interesting to have a test asset + account to try out such an attack by the way and see how many trades you can actually do per minute... probably a lot. The couple dozen trades later on wouldn't matter much.

All in all I'd need:
~60 BTC to buy the 200 shares, out of these I'd loose ~8-10 BTC to existing bids and maybe a BTC or so to GLBSE fees.

For under 100 USD cost and under 1000 USD in cash currently I could crash PUREMINING. It might also be useful to do this right now, so your ticker starts too low and might gain more than these 5% over the month easily just by reverting to normal market prices for the other bet.

I predict for your asset though, that you will simply have noone/too few ppl. buying it. Tongue Just look at HEDGE...

If a third party put in buy orders at rock bottom prices, or set a bot up to watch the market, wouldn't they snag your manipulatory shares for a song?

You are right that there may not be many people buying it.  It's very much experimental.  I'd be a little sad if no one is interested, but life goes on.  Wink

legendary
Activity: 2618
Merit: 1007
... asset where you don't sell parts of a debt or company but a bet that benefits nobody but the investors that bet on the right side + you as you probably take a cut. You don't create new value, you just offer a way of redistributing it, based on some set parameters.

Sounds like 90% of what wall street does every day.  Wink
And it's one of the biggest criticisms of the financial sector. There's a german proverb that could be translated like this: "Millions and millions of flies can't be wrong - eat more shit!".
I guess it's inevitable anyways, but still

As your bet (every asset is a bet!) is based on some other assets though, you offer earnings/losses by manipulating these. So far one could only try to bet on timely dividend payments of some bigger players out there (so you only had the incentive of DDOSing GLBSE for a weekend or so - too expensive for the potential gains), in your case I can bet on stock prices though. As bids are always shallow on GLBSE, bets like this one (especially if they offer high returns) give quite some incentives to severely disrupt trading.
I can with just 100 shares move the most traded asset on GLBSE currently (GIGAMINING) for more than 10% down. Currently there are a lot of open bids, as the prices are quite cheap and some people panic-sold - a few weeks ago I could have nearly crashed that asset with 100 shares.

But... could you keep it down for 5 days on average?

And, if you could, doesn't that benefit the people that want to buy the bond?
The average is as far as I know only a weighed (hopefully by shares traded, not BTC volume) average over all trades happening in the last 5 days. If I manage to do an insane amount of trades, the few trades that happen afterwards are negligible.

The easiest victim currently is PUREMINING:
200 shares are enough to trade to myself at 0.00010001 - fees would be ~50 Satoshis each share so I can do a LOT of trades. This would eb done by a script of course and during a time where there's very few trades in general. It would be interesting to have a test asset + account to try out such an attack by the way and see how many trades you can actually do per minute... probably a lot. The couple dozen trades later on wouldn't matter much.

All in all I'd need:
~60 BTC to buy the 200 shares, out of these I'd loose ~8-10 BTC to existing bids and maybe a BTC or so to GLBSE fees.

For under 100 USD cost and under 1000 USD in cash currently I could crash PUREMINING. It might also be useful to do this right now, so your ticker starts too low and might gain more than these 5% over the month easily just by reverting to normal market prices for the other bet.

I predict for your asset though, that you will simply have noone/too few ppl. buying it. Tongue Just look at HEDGE...
legendary
Activity: 1106
Merit: 1006
Lead Blockchain Developer
Now that you mention it, thinking about your proposed contract terms, it's not really a prediction market at all, it's more like a bet of the kind you find at betsofbitco.in, where funds are distributed in a somewhat arbitrary way from losers to winners.
I'm pretty sure this is what most markets do?  Transfer cash from investor to investor?
Yes, but not in an arbitrary way, in a way that guarantees that someone with more knowledge about an event than the market at a given time can profit on average (and thus is incentivized to share his knowledge with the world by investing accordingly). On betsofbitco.in I can have exact knowledge of the probability of the event, and still lose averaging on its instantiation.

I realize that's how it's supposed to be.  But that's not how it really is.  Everyone, and I mean everyone games the system to the best of their ability.

It's most certainly not arbitrary though.  More like a game of chess.
legendary
Activity: 1106
Merit: 1006
Lead Blockchain Developer
... asset where you don't sell parts of a debt or company but a bet that benefits nobody but the investors that bet on the right side + you as you probably take a cut. You don't create new value, you just offer a way of redistributing it, based on some set parameters.

Sounds like 90% of what wall street does every day.  Wink

As your bet (every asset is a bet!) is based on some other assets though, you offer earnings/losses by manipulating these. So far one could only try to bet on timely dividend payments of some bigger players out there (so you only had the incentive of DDOSing GLBSE for a weekend or so - too expensive for the potential gains), in your case I can bet on stock prices though. As bids are always shallow on GLBSE, bets like this one (especially if they offer high returns) give quite some incentives to severely disrupt trading.
I can with just 100 shares move the most traded asset on GLBSE currently (GIGAMINING) for more than 10% down. Currently there are a lot of open bids, as the prices are quite cheap and some people panic-sold - a few weeks ago I could have nearly crashed that asset with 100 shares.

But... could you keep it down for 5 days on average?

And, if you could, doesn't that benefit the people that want to buy the bond?  Seems like you selling your bonds at a loss to make a profit on my future would get fed back into the market as a benefit to the buyers of the bonds you're dumping.  If investors are smart, they'll catch on to your game fairly quickly and they'll just buy every time you try to dump your bonds, thus you lose.  The average doesn't go down enough to help you, and you've suffered a loss on the bonds you dumped.

I think a 5 day average is relatively safe and I wouldn't be surprised if people try to manipulate it but I'm not so sure they'll come out as well off as you might think.  The only easy manipulation I see is when the index is right at a 5.00% difference and they sell something off to push it to 5.0001%.

I'm excited to see how it actually pans out though.  If people actually do start panic selling, I might have to start buying.

donator
Activity: 2058
Merit: 1054
Now that you mention it, thinking about your proposed contract terms, it's not really a prediction market at all, it's more like a bet of the kind you find at betsofbitco.in, where funds are distributed in a somewhat arbitrary way from losers to winners.
I'm pretty sure this is what most markets do?  Transfer cash from investor to investor?
Yes, but not in an arbitrary way, in a way that guarantees that someone with more knowledge about an event than the market at a given time can profit on average (and thus is incentivized to share his knowledge with the world by investing accordingly). On betsofbitco.in I can have exact knowledge of the probability of the event, and still lose averaging on its instantiation.
legendary
Activity: 2618
Merit: 1007
Yes, but usually you create only one asset per assumption (that you can then go long or short) if you IPO a company (it wouldn't be very inspiring if you offer shares that earn money if your company dies from the beginning...) - you in this case have more of a "meta" asset where you don't sell parts of a debt or company but a bet that benefits nobody but the investors that bet on the right side + you as you probably take a cut. You don't create new value, you just offer a way of redistributing it, based on some set parameters.

As your bet (every asset is a bet!) is based on some other assets though, you offer earnings/losses by manipulating these. So far one could only try to bet on timely dividend payments of some bigger players out there (so you only had the incentive of DDOSing GLBSE for a weekend or so - too expensive for the potential gains), in your case I can bet on stock prices though. As bids are always shallow on GLBSE, bets like this one (especially if they offer high returns) give quite some incentives to severely disrupt trading.
I can with just 100 shares move the most traded asset on GLBSE currently (GIGAMINING) for more than 10% down. Currently there are a lot of open bids, as the prices are quite cheap and some people panic-sold - a few weeks ago I could have nearly crashed that asset with 100 shares.
legendary
Activity: 1106
Merit: 1006
Lead Blockchain Developer
Now that you mention it, thinking about your proposed contract terms, it's not really a prediction market at all, it's more like a bet of the kind you find at betsofbitco.in, where funds are distributed in a somewhat arbitrary way from losers to winners.

I'm pretty sure this is what most markets do?  Transfer cash from investor to investor?  Markets themselves certainly do not create cash out of thin air?

The assets behind the securities being traded may generate cash, but the trading on the market itself is mostly a battle of wits, is it not?
donator
Activity: 2058
Merit: 1054
In general, when the underlying event can be affected, prediction assets are at risk of manipulation. They are best suited for situations when the underlying cannot be feasibly affected, otherwise you want to directly entangle your instrument with the underlying and its negative.
What is an example of situations in which the underlying would not be feasibly affected?  I can think of natural disasters and climate change.  What else?
I'd tell you about the prediction assets I intend to issue, but why spoil the mystery?

You could try the following: Issue two bonds/futures, a short and a long, for a price roughly equal to the current index A. At the end of the month, where the index is now B, pay 2A-B for the short bond and B for the long bond. If you sell equal amounts of both bonds, your own position is neutral (you always pay 2A for a pair of bonds) and buying a short bond is equivalent to selling short the basket on margin.
Problem with that model is what happens when it's obvious to everyone that the market is going to tank?  Noone buys heads, everyone buys tails and I lose my shirt.  Wink
There are multiple ways you can handle it. But as a general rule, for someone to take a short position someone else must take a long position, there's no way around that.

Now that you mention it, thinking about your proposed contract terms, it's not really a prediction market at all, it's more like a bet of the kind you find at betsofbitco.in, where funds are distributed in a somewhat arbitrary way from losers to winners.
legendary
Activity: 1106
Merit: 1006
Lead Blockchain Developer
MINING_B INDEX chart (and adjustments based on MH/s per bond) is up at:

http://www.everydayjim.com/mining_index.php

legendary
Activity: 1106
Merit: 1006
Lead Blockchain Developer
In general, when the underlying event can be affected, prediction assets are at risk of manipulation. They are best suited for situations when the underlying cannot be feasibly affected, otherwise you want to directly entangle your instrument with the underlying and its negative.

What is an example of situations in which the underlying would not be feasibly affected?  I can think of natural disasters and climate change.  What else?

You could try the following: Issue two bonds/futures, a short and a long, for a price roughly equal to the current index A. At the end of the month, where the index is now B, pay 2A-B for the short bond and B for the long bond. If you sell equal amounts of both bonds, your own position is neutral (you always pay 2A for a pair of bonds) and buying a short bond is equivalent to selling short the basket on margin.

Problem with that model is what happens when it's obvious to everyone that the market is going to tank?  Noone buys heads, everyone buys tails and I lose my shirt.  Wink
donator
Activity: 2058
Merit: 1054
"If I hold 100 of each of these securities this month, do I win or lose at the end of the month?"
But "100 bonds of each" is on an arbitrary scale.

Let's take this to the extreme. Suppose someone issued a 1 GH/s bond. Each bond would be traded for 200 BTC. Someone holding "100 bonds of each" would have 20,000 BTC worth of this bond, and a few dozen BTC of other bonds. Almost his entire portfolio will be this particular bond, and only the price of this bond would affect whether he wins or loses, without any weight given to the other bonds.

If instead you say "100 BTC worth of each bond" or "100 MH/s of each bond", you'll have a true average with each of the bonds having an effect on the index price.

It sounds like what you're looking for is for the index to be sum(Bond 24h Avg / Bond MH/s) to reduce the impact a single large MH/s bond might have on the index?
Right, that's what I said.

Sounds work-able.  Within the framework of the contract, what action would you take when a bond issuer changes the MH/s their bonds represent?
This can be tricky, but dividing by what the hashrate was at the beginning of the month would work in most cases. Or you can just go by the geometric mean of the prices, then scale is irrelevant.

There's an API for outstanding shares now, so it's easy to find out.

The easiest thing to do currently would be to just gather a lot of shares (depending on the averagin/weighing used from Gigamining or else whoever has the most shallow bids), buy up all "more than 5% loss" shares and dump the price down to 1 Satoshi or whatever is needed to trigger the strike price. You could maybe even sell to yourself(?) so all you loose are 0.5% GLBSE fees and a few shares to some lucky bidders.

If you short these shares, you could even manage to make more profits out of such a dump action.
That's a great idea!  I'll flesh it out on paper after work tonight, see if I can wrap my brain around it.
I think (not sure, correct me if I'm wrong) that Sukrim was suggesting your bond design is manipulable. That's not a good thing.

Hah, that's what I get for responding in the AM before I'd had any coffee.  Given the volume and depth on GLBSE, it's really hard to make it so that you can't manipulate it given sufficient resources.  The approach I took to this was:

- Use the 5 highest volume bonds.
- Use the 24hr Avg

Can you think of any other reasonably straightforward ways to reduce manipulation?  For instance, it would be possible to use the 5 day average I suppose?
In general, when the underlying event can be affected, prediction assets are at risk of manipulation. They are best suited for situations when the underlying cannot be feasibly affected, otherwise you want to directly entangle your instrument with the underlying and its negative.

You could try the following: Issue two bonds/futures, a short and a long, for a price roughly equal to the current index A. At the end of the month, where the index is now B, pay 2A-B for the short bond and B for the long bond. If you sell equal amounts of both bonds, your own position is neutral (you always pay 2A for a pair of bonds) and buying a short bond is equivalent to selling short the basket on margin.
legendary
Activity: 1106
Merit: 1006
Lead Blockchain Developer
Depending on the payout and the following panic, it might even be worthwile to manipulate 5 day averages. However, you miht have a tough time competing with pirate rates in that case.

I suppose it gets harder too as GLBSE grows and we're (possibly) able to add more decent volume securities to the index.

legendary
Activity: 1106
Merit: 1006
Lead Blockchain Developer
Howto:
Buy all "tails" shares you can afford.
In the end of the month, borrow shares of one of the index bonds (the one with the least bids ideally).
Sell bonds right before the last time the index is calculated, mostly to yourself (bid a lot of shares for 100 Satoshis or so, to keep fees low) and a dozen or so to some lucky ppl. You can even sell multiple times, for more shares traded (I REALLY have to test this out on some trash shares with the API! Might be interesting to have a few thousand shares traded + no fees(?), if you sell for 1 Satoshi...)
It might be the case that you manage to crash the bond even after that for some time, so you can cheaply buy back the missing shares and return them to your lender.

Congratulations, you crashed the index (shares trading for a few satoshis should have some impact on it, no matter how you calculate the average) and win the jackpot!

...

Counter tactics would include allowing open orders that are not 100% backed or simply building sniper bots that detect rapid down movements and that jump in the middle, bidding themselves and getting a few cheap shares. The difficulty is then to make sure these are really just cheap shares, not already worthless shares that someone else wanted to get rid of.

I don't think we could prevent this really, but this issue isn't unique to this future either.  It sounds like you could do that and come out ahead with just regular shorting as well.  Would using the 5 day average mitigate that somewhat?


legendary
Activity: 2618
Merit: 1007
Depending on the payout and the following panic, it might even be worthwile to manipulate 5 day averages. However, you miht have a tough time competing with pirate rates in that case.
legendary
Activity: 1106
Merit: 1006
Lead Blockchain Developer
"If I hold 100 of each of these securities this month, do I win or lose at the end of the month?"
But "100 bonds of each" is on an arbitrary scale.

Let's take this to the extreme. Suppose someone issued a 1 GH/s bond. Each bond would be traded for 200 BTC. Someone holding "100 bonds of each" would have 20,000 BTC worth of this bond, and a few dozen BTC of other bonds. Almost his entire portfolio will be this particular bond, and only the price of this bond would affect whether he wins or loses, without any weight given to the other bonds.

If instead you say "100 BTC worth of each bond" or "100 MH/s of each bond", you'll have a true average with each of the bonds having an effect on the index price.

It sounds like what you're looking for is for the index to be sum(Bond 24h Avg / Bond MH/s) to reduce the impact a single large MH/s bond might have on the index?

Sounds work-able.  Within the framework of the contract, what action would you take when a bond issuer changes the MH/s their bonds represent?


There's an API for outstanding shares now, so it's easy to find out.

The easiest thing to do currently would be to just gather a lot of shares (depending on the averagin/weighing used from Gigamining or else whoever has the most shallow bids), buy up all "more than 5% loss" shares and dump the price down to 1 Satoshi or whatever is needed to trigger the strike price. You could maybe even sell to yourself(?) so all you loose are 0.5% GLBSE fees and a few shares to some lucky bidders.

If you short these shares, you could even manage to make more profits out of such a dump action.
That's a great idea!  I'll flesh it out on paper after work tonight, see if I can wrap my brain around it.
I think (not sure, correct me if I'm wrong) that Sukrim was suggesting your bond design is manipulable. That's not a good thing.

Hah, that's what I get for responding in the AM before I'd had any coffee.  Given the volume and depth on GLBSE, it's really hard to make it so that you can't manipulate it given sufficient resources.  The approach I took to this was:

- Use the 5 highest volume bonds.
- Use the 24hr Avg

Can you think of any other reasonably straightforward ways to reduce manipulation?  For instance, it would be possible to use the 5 day average I suppose?

legendary
Activity: 2618
Merit: 1007
I think (not sure, correct me if I'm wrong) that Sukrim was suggesting your bond design is manipulable. That's not a good thing.
Yes, I'm saying that depending on how the index is built (and you will have to give out the algorithm how to do that publicly of course, otherwise nobody will trust you) it might be very easy to manipulate in the "-5%" area, since bids are generally shallow on GLBSE, so it is easy once you hold some shares to do a flash crash.

You offer bets with quite good returns (depending on the amount these shares are priced) and I think I can sell to myself on GLBSE, so all in all you offer quite some incentives to crash some mining bonds and earn money with it.

Howto:
Buy all "tails" shares you can afford.
In the end of the month, borrow shares of one of the index bonds (the one with the least bids ideally).
Sell bonds right before the last time the index is calculated, mostly to yourself (bid a lot of shares for 100 Satoshis or so, to keep fees low) and a dozen or so to some lucky ppl. You can even sell multiple times, for more shares traded (I REALLY have to test this out on some trash shares with the API! Might be interesting to have a few thousand shares traded + no fees(?), if you sell for 1 Satoshi...)
It might be the case that you manage to crash the bond even after that for some time, so you can cheaply buy back the missing shares and return them to your lender.

Congratulations, you crashed the index (shares trading for a few satoshis should have some impact on it, no matter how you calculate the average) and win the jackpot!


Your bets can only work if it is as easy to manipulate the price up (or to just buy through the walls) - as there is no real incentive to keep up lots of empty bids but it is completely free to put up ask orders just in case someone really wants an asset I hold so badly that he'll pay a huge premium (I recently sold 1 share of TEEK.B for 1.2...) as I get dividends in the mean time anyways, it is always VERY easy to dump share prices with tiny amounts of shares.

Counter tactics would include allowing open orders that are not 100% backed or simply building sniper bots that detect rapid down movements and that jump in the middle, bidding themselves and getting a few cheap shares. The difficulty is then to make sure these are really just cheap shares, not already worthless shares that someone else wanted to get rid of.
donator
Activity: 2058
Merit: 1054
"If I hold 100 of each of these securities this month, do I win or lose at the end of the month?"
But "100 bonds of each" is on an arbitrary scale.

Let's take this to the extreme. Suppose someone issued a 1 GH/s bond. Each bond would be traded for 200 BTC. Someone holding "100 bonds of each" would have 20,000 BTC worth of this bond, and a few dozen BTC of other bonds. Almost his entire portfolio will be this particular bond, and only the price of this bond would affect whether he wins or loses, without any weight given to the other bonds.

If instead you say "100 BTC worth of each bond" or "100 MH/s of each bond", you'll have a true average with each of the bonds having an effect on the index price.

I don't think that adjusting the index for outstanding shares or adjusting it for volume really helps out that index.
Adjusting for volume isn't required, especially since you've included only the largest bonds, but consider this - if you included some bond where only 1 MH/s total were issued, its price could go up and down like crazy because there is no liquidity or depth, and this insignificant bond will be the major factor in the index trend. If you weight by volume you make sure only bonds that have a meaningful price will affect the index.

There's an API for outstanding shares now, so it's easy to find out.

The easiest thing to do currently would be to just gather a lot of shares (depending on the averagin/weighing used from Gigamining or else whoever has the most shallow bids), buy up all "more than 5% loss" shares and dump the price down to 1 Satoshi or whatever is needed to trigger the strike price. You could maybe even sell to yourself(?) so all you loose are 0.5% GLBSE fees and a few shares to some lucky bidders.

If you short these shares, you could even manage to make more profits out of such a dump action.
That's a great idea!  I'll flesh it out on paper after work tonight, see if I can wrap my brain around it.
I think (not sure, correct me if I'm wrong) that Sukrim was suggesting your bond design is manipulable. That's not a good thing.
legendary
Activity: 1106
Merit: 1006
Lead Blockchain Developer
There's an API for outstanding shares now, so it's easy to find out.

The easiest thing to do currently would be to just gather a lot of shares (depending on the averagin/weighing used from Gigamining or else whoever has the most shallow bids), buy up all "more than 5% loss" shares and dump the price down to 1 Satoshi or whatever is needed to trigger the strike price. You could maybe even sell to yourself(?) so all you loose are 0.5% GLBSE fees and a few shares to some lucky bidders.

If you short these shares, you could even manage to make more profits out of such a dump action.

That's a great idea!  I'll flesh it out on paper after work tonight, see if I can wrap my brain around it.

In the meantime, in the API docs I couldn't see where you can pull the outstanding shares.  Do you have a link or can you post some of the docs?
legendary
Activity: 1106
Merit: 1006
Lead Blockchain Developer
It's not trivial to find out how many bonds are outstanding. Going by volume is more meaningful, but you have to normalize.

As an alternative to normalizing each bond, multiply the bond values (or take the geometric mean) rather than adding them, that's scale-invariant.

The more I think about it, the more I think doing anything by volume (which, if I'm understanding this correctly, simply represents numbers of shares changing hands?) would be irrelevant to the metric I'm trying to portray.

The metric I'm after is this; from a bond holders perspective:

"If I hold 100 of each of these securities this month, do I win or lose at the end of the month?"

I don't think that adjusting the index for outstanding shares or adjusting it for volume really helps out that index.

Though, there may be a use case for creating other indexes.  Wink  And I'm certainly not opposed to that if it would be of use to the community.

legendary
Activity: 2618
Merit: 1007
There's an API for outstanding shares now, so it's easy to find out.

The easiest thing to do currently would be to just gather a lot of shares (depending on the averagin/weighing used from Gigamining or else whoever has the most shallow bids), buy up all "more than 5% loss" shares and dump the price down to 1 Satoshi or whatever is needed to trigger the strike price. You could maybe even sell to yourself(?) so all you loose are 0.5% GLBSE fees and a few shares to some lucky bidders.

If you short these shares, you could even manage to make more profits out of such a dump action.
donator
Activity: 2058
Merit: 1054
The MINING_B INDEX consists of the sum total value of the 24h Avg for the following 5 perpetual mining bonds:

GIGAMINING
PUREMINING
YABMC
BITBOND
ZETA-MINING
By simply summing the prices, you are giving bonds disproportionate weight.

Some of the bonds represent an amount different than 1 MH/s. The price per MH/s of a 5 MH/s will arbitrarily have 5 times as much weight in affecting the index. So you need to normalize each bond by the hashrate represented.

In addition, you can also consider weighting bonds by their volume.
I'm more interested in the actual value of the bonds and how it shifts up and down than I am in what each bond represents.
But you're weighting them arbitrarily. Instead of a mix of all bonds, it basically is just the price of Gigamining.

Weighting by volume is interesting.  I wonder if it would instead be possible to weight by total share counts.
It's not trivial to find out how many bonds are outstanding. Going by volume is more meaningful, but you have to normalize.

As an alternative to normalizing each bond, multiply the bond values (or take the geometric mean) rather than adding them, that's scale-invariant.
legendary
Activity: 1106
Merit: 1006
Lead Blockchain Developer
The MINING_B INDEX consists of the sum total value of the 24h Avg for the following 5 perpetual mining bonds:

GIGAMINING
PUREMINING
YABMC
BITBOND
ZETA-MINING
By simply summing the prices, you are giving bonds disproportionate weight.

Some of the bonds represent an amount different than 1 MH/s. The price per MH/s of a 5 MH/s will arbitrarily have 5 times as much weight in affecting the index. So you need to normalize each bond by the hashrate represented.

In addition, you can also consider weighting bonds by their volume.

I'm more interested in the actual value of the bonds and how it shifts up and down than I am in what each bond represents.

Weighting by volume is interesting.  I wonder if it would instead be possible to weight by total share counts.

Trick is keeping this as foolproof as possible.  I don't want to get too complex if I can help it.
donator
Activity: 2058
Merit: 1054
The MINING_B INDEX consists of the sum total value of the 24h Avg for the following 5 perpetual mining bonds:

GIGAMINING
PUREMINING
YABMC
BITBOND
ZETA-MINING
By simply summing the prices, you are giving bonds disproportionate weight.

Some of the bonds represent an amount different than 1 MH/s. The price per MH/s of a 5 MH/s will arbitrarily have 5 times as much weight in affecting the index. So you need to normalize each bond by the hashrate represented.

In addition, you can also consider weighting bonds by their volume.
hero member
Activity: 686
Merit: 500
Wat
legendary
Activity: 1106
Merit: 1006
Lead Blockchain Developer
hero member
Activity: 518
Merit: 500
GLBSE asks for a thread url when setting up a security... thus here is where my future security will reside.  Wink
Unlike the contract text, you can edit the details of the thread link (and website, twitter etc.) after you have registered the security.
legendary
Activity: 1106
Merit: 1006
Lead Blockchain Developer
A quick case study!

If you buy 100 shares of MINING_B.HEADS during the month of July for 100 BTC and...
  - on July 1 the MINING_B INDEX is 109.53 and ...
  - 200 total shares of MINING_B.TAILS were sold and ...
  - 300 total shares of MINING_B.HEADS were sold and ...
  - at the end of July the MINING_B INDEX is 115.21 ...

  - on Aug 1 we would calculate the percent change as: ((115.21 - 109.53) / 109.53) * 100 = 5.186% increase.

  You would thus receive as a strike price: 1 + ((200 * 0.6) / 300) = 1.4 BTC
    Thus your total shares would be purchased back for a total of 140 BTC, giving you a 40% return!

Another example, this time you think the market will go down.

If you buy 150 shares of MINING_B.TAILS during the month of July for 150 BTC and...
  - on July 1 the MINING_B INDEX is 109.53 and ...
  - 400 total shares of MINING_B.TAILS were sold and ...
  - 350 total shares of MINING_B.HEADS were sold and ...
  - at the end of July the MINING_B INDEX is 102.21 ...

  - on Aug 1 we would calculate the percent change as: ((109.53 - 102.21) / 109.53) * 100 = 6.683% decrease.

  You would thus receive as a strike price: 1 + ((350 * 0.6) / 400) = 1.525 BTC
    Thus your total shares would be purchased back for a total of 228.75 BTC, giving you a 52.5% return!


* It will not always come out rosy.  You must plan ahead and correctly anticipate what will happen with the top perpetual mining bonds.  If you predict correctly, you gain.  If you do not predict correctly, you will see losses.  Do not risk anything you cannot afford to lose!

legendary
Activity: 1106
Merit: 1006
Lead Blockchain Developer
Currently Discontinued... Sorry.  I need to work out the flaws and come back with a new contract.










You can now buy MINING_B INDEX futures on GLBSE!

Experimental Mining Futures Trading
  - The MINING_B.HEADS Future is for investors that believe the MINING_B INDEX will go UP more than 5% by the end of the month.
  - The MINING_B.TAILS Future is for investors that believe the MINING_B INDEX will go DOWN more than 5% by the end of the month.


The MINING_B.TAILS.FUT future and the MINING_B.HEADS.FUT future are a paired offering, betting against each other.

MINING_B.HEADS.FUT

The future is offered starting on the first of the month around 12 NOON EST.  At the end of the month, the future will be purchased back from the bearer for the strike price.

The strike price will be based on the rise and/or fall of the MINING_B INDEX.

If the MINING_B INDEX has risen in excess of 5% over the course of the month, the strike price will consist of:

  1 BTC + ((The total quantity of all MINING_B.TAILS futures x 0.6) / The quantity of MINING_B.HEADS futures) BTC

If the MINING_B INDEX has not risen in excess of 5% or fallen in excess of 5% over the course of the month, the strike price will consist of:

  0.8 BTC

If the MINING_B INDEX has fallen in excess of 5% over the course of the month, the strike price will consist of:

  0.0001 BTC


MINING_B.TAILS.FUT

The future is offered starting on the first of the month around 12 NOON EST.  At the end of the month, the future will be purchased back from the bearer for the strike price.

The strike price will be based on the rise and/or fall of the MINING_B INDEX.

If the MINING_B INDEX has fallen in excess of 5% over the course of the month, the strike price will consist of:

  1 BTC + ((The total quantity of all MINING_B.HEADS futures x 0.6) / The quantity of MINING_B.TAILS futures) BTC

If the MINING_B INDEX has not risen in excess of 5% or fallen in excess of 5% over the course of the month, the strike price will consist of:

  0.8 BTC

If the MINING_B INDEX has risen in excess of 5% over the course of the month, the strike price will consist of:

  0.0001 BTC


The MINING_B INDEX is created by polling the GLBSE's top volume mining bonds.  For a complete explanation and graphing, please visit:

  http://www.everydayjim.com/mining_index.php

For the purposes of calculating the strike price, the FIRST polled value within the month will be used and the LAST polled value within the month will be used.  Thus, if there is a server outage or other interruption that prevents polling, there will be no question as to what values will be used in determining the strike price.

Jump to: