You can currently define a market to resolve based on other market(s), including logical operations such as "and" or "or" or more complex conditionals. Other derivatives in use include resolving to the share price before a market resolves, amplified markets, and multiple markets on the same question with different "event happens by" dates.
However, those markets need to be resolved, either by a human or a bot operating external to Manifold itself. And the relationship between those markets must be maintained either by human traders or arbitrage bots, rather than by the automated market maker and market subsidies.
Before 2025, will Manifold support the creation of any logically-defined derivative markets? Such markets would need to enforce the resolution logic directly within manifold, and also support some mechanism for market making, such as interconverting shares or cross-liquidity to support bets on only one of the markets.
Examples of how this might work include:
https://cdetr.io/smart-markets/
https://www.lesswrong.com/posts/uDXRxF9tGqGX5bGT4/logical-share-splitting
@fornever I guess you are saying that this makes it take exponential time to optimally arbitrage the markets? I don’t think that general inference is equivalent to this problem - we can use convex optimization here.
Ah, love this! I've been thinking along similar lines: Betting based on boolean combinations of markets. Let humans express relationships between markets and have a bot arbitrage them out.
A common case is identical markets. If you have two markets/propositions A & B that are in fact the same proposition (like, sadly, in American politics, "will the republicans win" and "will the democrats lose") you'd arbitrage it by expressing that the probability of them both resolving to YES or both resolving to NO is 1. Namely:
Pr(A && B || !A && !B) = 1
or just Pr(A) = Pr(B)
.
But this is very general. Maybe one of three things -- A, B, or C -- is definitely going to happen:
Pr(A || B || C) = 1
or, if it's exactly one of three, then Pr(A && !B && !C || !A & B & !C || !A & !B & C) = 1
.
Or maybe one event happening implies another also happening, like how Biden winning implies the democrats win:
Pr(biden) < Pr(dem)
.
Name ideas: combobot, combot, arrrbot (with a pirate theme?), boolabot
I initially took a NO position because I had just read the "logical share splitting" post and was thinking of something relatively sophisticated, and didn't realize that the market was more general.
My opinion is that the chance of very specific derivatives (e.g. the current multiple choice implementation, which AFAIK should make this question resolve YES today, because it's isomorphic to having logically linked binary markets) is high, and the chance of anything resembling "logical shares" that can be moved between logically linked markets in a graph is ~zero. That would require a lot of implementation work and is extremely pie-in-the-sky compared to anything I see the Manifold team implement.
the current multiple choice implementation, which AFAIK should make this question resolve YES today, because it's isomorphic to having logically linked binary markets
Hence my request for help with wording :)
Some long and slightly rambling thoughts. Apologies in advance for not writing a shorter comment.
I don't want that to cause it to resolve YES. Things that Manifold doesn't do currently that I would like to cause a YES resolution:
Provide a way to write a market that, for other markets A, B, resolves as (A and B) or some other operation (for example, A -> B aka B or ~A).
Provide a way to write a question that resolves True if A resolves true before a specific date, false if it does not.
In either case, I'd want the resolution of the dependent question to happen automatically, without human (or external bot) judge action required, so that traders do not need to worry about weird risks from judging. (Much like how existing multiple-choice markets guarantee that the sum of the resolutions will be 1.)
These can both currently be replicated partially with multiple choice markets, provided the market is written that way initially. What can't be done right now:
Transform a binary market into such a market after the fact, while maintaining traders / liquidity / etc.
Combine two pre-existing markets with a logical connection, such that people betting on the connection means that liquidity from both underlying markets is used when filling an order.
Allow chaining of multiple markets. Yes, you could write a 4-option multiple choice market on A x B, but it gets unwieldy to have A x B, and also B x C, and C x D, and so on.
Bet on "A xor B" as a single atomic bet, rather than two separate bets in quick succession with slippage happening in between.
Place a limit order on "A xor B" rather than individual limit orders on the underlying two pieces of the quadrant. (Note the nonlinearity here; I can't do this now even if the market exists as a multiple choice market.)
The "Smart Markets for Stable Coins" paper should provide some other ideas of things Manifold currently doesn't do that I would count as new and interesting enough to resolve this market.
IMO the most important things are:
Linking existing markets after they've been created, while using the existing liquidity pool.
Linking liquidity pools such that a market order on market A might match against the AMM for A, a limit order for A, a limit order (and optionally AMM pool) for A xor B, and another limit order on B. (Where the three limit orders might come from three users.)
I initially took a NO position because I had just read the "logical share splitting" post and was thinking of something relatively sophisticated, and didn't realize that the market was more general.
My apologies. I realized as I was thinking that a market for "will Manifold fully implement that post, with all details" was so unlikely as to make a boring market, so I wrote a post on a related-but-maybe-possible question. My intent was that the title wouldn't reference that post and hopefully therefore be a clue that this was a different thing, even as I linked it from that discord thread.
Hmm.. one idea I thought of that I’m not quite sure about is that for a market that is conditional on multiple markets, if one of the markets it depends on has a contentious and early resolution (and worsened by if there are markets with different creators) this might affect the value of shares in the other markets that the conditional market depend on (sensitive to the conditional logic of the market and implementation of how the shares are allocated)
@parhizj I'm not sure if it's a "con" or just a cost, but I think making this work and making it clear properly requires adding liquidity to an AMM specific to each new market, just like it does now, including new markets that are just logical combinations of existing markets.
I think a real con is that if you create a bunch of pairwise-linked markets, then the computational complexity of resolving individual trades on the underlying markets might grown in unfriendly ways. I'm not sure what the computational complexity is there. I think if you impose a (small) fee on trades that cross markets then that allows related markets to not be impacted until the market in question moves more than a certain amount (for tiny trades it's cheaper to use the local liquidity pool and not pay the fee). That puts a horizon on the impact of any given trade. (There are probably more clever approaches available.)
@parhizj Presumably you start with pairwise relations (and build complex derivatives from them). And if you create a logically-defined market for, say, A -> B, and then B resolves (contentiously) false, holders of the A -> B YES shares are now holding ~A shares. And if A is still trading >> 0, that's a risk they took when they made that bet.