Author Topic: Simple Binary Prediction Market Discussion  (Read 24853 times)

0 Members and 1 Guest are viewing this topic.

Offline jsidhu

  • Hero Member
  • *****
  • Posts: 1335
    • View Profile
Hard part will be deciding how to integrate pms with the core of bitshares.. Not just another tab next to market
Hired by blockchain | Developer
delegate: dev.sidhujag

Offline arhag

  • Hero Member
  • *****
  • Posts: 1214
    • View Profile
    • My posts on Steem
  • BitShares: arhag
  • GitHub: arhag

Paper on LMSR at http://hanson.gmu.edu/mktscore.pdf

Wow, this is good stuff.

Wow.. trying to wrap my head around all of this.

I also found these two resources which were quite interesting to read:
http://blog.oddhead.com/2006/10/30/implementing-hansons-market-maker/
http://blog.oddhead.com/2008/12/22/what-is-and-what-good-is-a-combinatorial-prediction-market/

One thing I worry about regarding using a market maker is market manipulation. If everyone knows exactly how the market maker works, and they should because it is open source and deterministic, then if there are periods where there is a lone trader in a PM can't they exploit the market maker to make guaranteed free money?

Now apparently, the way LMSR works, the potential losses are bounded by some fixed amount set ahead of time. That brings up other questions. How do we decide how much to set this bound to, which would of course affect market making operations (meaning affect liquidity)? Where is that fixed amount of starting money going to come from if we want to implement it on the blockchain (meaning who is going to carry that risk of loss)? How does Truthcoin deal with this?

Anyway, this stuff has gotten me excited. Forget Bingo, imagine the demand we can generate by letting people make bets on various outcomes of March Madness! (For 2016 of course :P, there is no way something of that complexity, combinatorial prediction markets, is going to be built for BitShares in less than a year.) LMSR with two-outcome prediction markets seems achievable in this year however.
« Last Edit: February 07, 2015, 05:02:11 am by arhag »

Offline fluxer555

  • Hero Member
  • *****
  • Posts: 749
    • View Profile
If I can't change his mind I will make a fork to include it.

Isn't this a prime use-case for DevShares?

Offline theoretical

BTS- theoretical / PTS- PZxpdC8RqWsdU3pVJeobZY7JFKVPfNpy5z / BTC- 1NfGejohzoVGffAD1CnCRgo9vApjCU2viY / the delegate formerly known as drltc / Nothing said on these forums is intended to be legally binding / All opinions are my own unless otherwise noted / Take action due to my posts at your own risk

Offline toast

  • Hero Member
  • *****
  • Posts: 4001
    • View Profile
  • BitShares: nikolai
I think a super majority of a slate of judges would do the trick.
I agree.  How many judges would we need?

Would they be delegates, or something new?

Any set of accounts defined in advance.  Any number up to 110.


Going with a judge slate, I imagine your looking for something that is just good enough for now.  Would you be against implementing this pm using lmsr?  It was originally proposed by Robert hanson and eliminates the need for a bid ask table (the beauty is a trader won't have to wait for another person to take the other side of the trade), thus a simplifying and reducing the amount of work you have to do.  Additionally it will allow you to do non-binomial pm's of any degree.  Instead of having a yes or no question of will republicans win greater than 65 seats in the house, it instead could be phrased how many seats will republicans win in the next election. 

Take a look at the excel.

https://github.com/psztorc/Truthcoin/blob/master/docs/LogMSR_Demo.xlsx






Sent from my iPhone using Tapatalk

I keep trying to push this but BM is against this because it's "too complicated". If I can't change his mind I will make a fork to include it. I think it is much simpler because it is a well-defined state machine with a single transition function.


(start of lsmr in current develop: https://github.com/BitShares/bitshares/blob/6d42fcab803983ec16f9ec094a71fa2078febad3/libraries/blockchain/include/bts/blockchain/lsmr_record.hpp

we can also copy the working lsmr impelmentation from TC's repo)
Do not use this post as information for making any important decisions. The only agreements I ever make are informal and non-binding. Take the same precautions as when dealing with a compromised account, scammer, sockpuppet, etc.

Offline Bitcoinfan

  • Sr. Member
  • ****
  • Posts: 240
    • View Profile
I think it is a very big deal if you are considering pm's using only bitusd and bitcny. 


Sent from my iPhone using Tapatalk

Offline Bitcoinfan

  • Sr. Member
  • ****
  • Posts: 240
    • View Profile
I think a super majority of a slate of judges would do the trick.
I agree.  How many judges would we need?

Would they be delegates, or something new?

Any set of accounts defined in advance.  Any number up to 110.


Going with a judge slate, I imagine your looking for something that is just good enough for now.  Would you be against implementing this pm using lmsr?  It was originally proposed by Robert hanson and eliminates the need for a bid ask table (the beauty is a trader won't have to wait for another person to take the other side of the trade), thus a simplifying and reducing the amount of work you have to do.  Additionally it will allow you to do non-binomial pm's of any degree.  Instead of having a yes or no question of will republicans win greater than 65 seats in the house, it instead could be phrased how many seats will republicans win in the next election. 

Take a look at the excel.

https://github.com/psztorc/Truthcoin/blob/master/docs/LogMSR_Demo.xlsx






Sent from my iPhone using Tapatalk
« Last Edit: February 05, 2015, 12:04:35 am by Bitcoinfan »

Offline bytemaster

Why limit yourself to binary prediction markets?

All you'd need is a UIA pair (asset.X, asset.Y) that can be created / redeemed in equal numbers by anyone at parity, e.g. anyone can freely turn $Z into Z shares of asset.X and asset.Y, or turn Z shares of asset.X and asset.Y into $Z.

Then a multisig settlement authority, once a quorum of the settlement authority has specified the settlement price p where 0 <= p <= 1, every X becomes redeemable for $p and every Y becomes redeemable for $1-p.

The free market will do the rest.

That requires 2 assets and 2 markets and will split liquidity and be far more complex and is ultimately still binary. 
For the latest updates checkout my blog: http://bytemaster.bitshares.org
Anything said on these forums does not constitute an intent to create a legal obligation or contract between myself and anyone else.   These are merely my opinions and I reserve the right to change them at any time.

Offline theoretical

Why limit yourself to binary prediction markets?

All you'd need is a UIA pair (asset.X, asset.Y) that can be created / redeemed in equal numbers by anyone at parity, e.g. anyone can freely turn $Z into Z shares of asset.X and asset.Y, or turn Z shares of asset.X and asset.Y into $Z.

Then a multisig settlement authority, once a quorum of the settlement authority has specified the settlement price p where 0 <= p <= 1, every X becomes redeemable for $p and every Y becomes redeemable for $1-p.

The free market will do the rest.
BTS- theoretical / PTS- PZxpdC8RqWsdU3pVJeobZY7JFKVPfNpy5z / BTC- 1NfGejohzoVGffAD1CnCRgo9vApjCU2viY / the delegate formerly known as drltc / Nothing said on these forums is intended to be legally binding / All opinions are my own unless otherwise noted / Take action due to my posts at your own risk

Offline Ander

  • Hero Member
  • *****
  • Posts: 3506
    • View Profile
  • BitShares: Ander
People would never touch this if there is this weird settling fee/waiting game.

I don't even think there is a Nash equilibrium.  It really is just a waiting game.. there are no underlying rules, it is all subjective opinions on your expectation of how your opponent will settle.

Actually I guess the nash equilibrium would be .5, it is just that it isn't tied to the objective of what the game should be?

Yeah I think with that system either:
* The nash equilibrium is .5
or
* The only winning move is not to play. :)
https://metaexchange.info | Bitcoin<->Altcoin exchange | Instant | Safe | Low spreads

Offline gamey

  • Hero Member
  • *****
  • Posts: 2253
    • View Profile
People would never touch this if there is this weird settling fee/waiting game.

I don't even think there is a Nash equilibrium.  It really is just a waiting game.. there are no underlying rules, it is all subjective opinions on your expectation of how your opponent will settle.

Actually I guess the nash equilibrium would be .5, it is just that it isn't tied to the objective of what the game should be? 
« Last Edit: February 04, 2015, 08:23:39 pm by gamey »
I speak for myself and only myself.

Offline arhag

  • Hero Member
  • *****
  • Posts: 1214
    • View Profile
    • My posts on Steem
  • BitShares: arhag
  • GitHub: arhag
Any set of accounts defined in advance.  Any number up to 110.

This simpler judging mechanism is nicer for getting a working implementation out sooner rather than later. But please make sure that the PM has trading fees defined (similar to the custom defined percent trading fees that UIA issuers will be able to set), and use that collected pool of BitAssets to reward the judges. This provides the incentive for the judges to bother submitting an outcome ballot for a PM.

The PM should not become active for trading until a quorum Q1 of the defined slate agree to be judges for that PM by signing a transaction stating that fact and providing a security deposit. Anytime before the PM becomes active they can take back their agreement and their security deposit, but after the quorum is reached, the security deposits become locked, the PM becomes open for trading, and the judges who submitted a security deposit become active judges for that PM. The remaining judges in the defined slate have 24 hours (or until the active judges reach a quorum that the outcome of the PM is known, whichever happens sooner) to add their security deposit (perhaps at a premium to make it fair to the existing judges since the new judges will have an information advantage: they might have gotten a glimpse at the trading volume of the PM over the first 24 hours which helps them estimate potential returns) to also be included as an active judge.

Later, when a quorum Q2 of the active judges (the ones with security deposits) of the PM decide that the outcome of the PM is known (and make this known to the blockchain through a vote transaction), it would initiate a 24 hour period for the judges to submit a concealed commitment for their ballot. After the 24 hour period they would have another 24 hour period to reveal their ballot. If a quorum Q3 (<= Q2) of the active judges reaches a particular decision (yes or no), they get their security deposit back and also share the BitAssets collected in the pool for that PM as well as the security deposits of the judges who voted the other way and the judges who did not submit a ballot at all (either by not submitting the commitment in the first 24 hour period or the reveal in the second 24 hour period). I think Q1, Q2, and Q3 should be chosen so that they are all super majorities of some degree.

Also, the PM creator can optionally specify a date before which the active judges cannot claim the outcome of the PM is known even if they all unanimously agree that it is. This is to prevent the active judges from coordinating to all vote either yes/no to just get back their security deposit and the BitAsset rewards in the pool rather than having to wait (and incur opportunity cost) until the outcome of the PM is known.
« Last Edit: February 04, 2015, 08:29:27 pm by arhag »

Offline bytemaster

I think a super majority of a slate of judges would do the trick.
I agree.  How many judges would we need?

Would they be delegates, or something new?

Any set of accounts defined in advance.  Any number up to 110.
For the latest updates checkout my blog: http://bytemaster.bitshares.org
Anything said on these forums does not constitute an intent to create a legal obligation or contract between myself and anyone else.   These are merely my opinions and I reserve the right to change them at any time.

Offline Ander

  • Hero Member
  • *****
  • Posts: 3506
    • View Profile
  • BitShares: Ander
I think a super majority of a slate of judges would do the trick.
I agree.  How many judges would we need?

Would they be delegates, or something new?
https://metaexchange.info | Bitcoin<->Altcoin exchange | Instant | Safe | Low spreads

Offline bytemaster

I think a super majority of a slate of judges would do the trick.
For the latest updates checkout my blog: http://bytemaster.bitshares.org
Anything said on these forums does not constitute an intent to create a legal obligation or contract between myself and anyone else.   These are merely my opinions and I reserve the right to change them at any time.