{"componentChunkName":"component---src-pages-sips-sip-markdown-remark-frontmatter-sip-tsx","path":"/sips/sip-53/","result":{"data":{"markdownRemark":{"fileAbsolutePath":"/vercel/path0/content/sips/sip-53.md","frontmatter":{"sip":53,"sccp":null,"title":"Binary Options","network":"Ethereum","author":"Anton Jurisevic (@zyzek)","type":"Governance","proposal":null,"implementor":null,"release":null,"created":"2020-04-23T00:00:00.000Z","updated":null,"status":"Implemented"},"html":"<h2 id=\"simple-summary\" style=\"position:relative;\"><a href=\"#simple-summary\" aria-label=\"simple summary permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Simple Summary</h2>\n<p>This SIP proposes to allow the creation of new markets for trading binary options.</p>\n<h2 id=\"abstract\" style=\"position:relative;\"><a href=\"#abstract\" aria-label=\"abstract permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Abstract</h2>\n<p>A binary option is a type of option contract which provides a fixed return based on a binary outcome in the future.\nThese options pay out on a certain date if the price of a chosen asset is above (or below) a level specified at the\ncreation of the option. This allows users to take a position on the price of any asset known to the Synthetix system.\nThe proposed implementation uses a parimutuel-style initial bidding period to set the price per option, with one side of\nthe market paying out the other side at maturity. This structure removes the necessity of matching counterparties.</p>\n<hr>\n<h2 id=\"table-of-contents\" style=\"position:relative;\"><a href=\"#table-of-contents\" aria-label=\"table of contents permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Table of Contents</h2>\n<ul>\n<li><a href=\"#motivation\">Motivation</a>\n<ul>\n<li><a href=\"#summary\">Summary</a></li>\n<li><a href=\"#smart-contracts\">Smart Contracts</a></li>\n<li><a href=\"#basic-dynamics\">Basic Dynamics</a>\n<ul>\n<li><a href=\"#market-resolution\">Market Resolution</a></li>\n<li><a href=\"#fees\">Fees</a></li>\n<li><a href=\"#option-supply-and-prices\">Option Supply and Prices</a></li>\n<li><a href=\"#market-equilibria\">Market Equilibria</a></li>\n</ul>\n</li>\n<li><a href=\"#market-creation\">Market Creation</a>\n<ul>\n<li><a href=\"#initial-capital\">Initial Capital</a></li>\n<li><a href=\"#oracles\">Oracles</a></li>\n<li><a href=\"#further-incentives\">Further Incentives</a></li>\n</ul>\n</li>\n<li><a href=\"#bidding\">Bidding</a>\n<ul>\n<li><a href=\"#bids\">Bids</a></li>\n<li><a href=\"#refunds\">Refunds</a></li>\n</ul>\n</li>\n<li><a href=\"#trading\">Trading</a></li>\n<li><a href=\"#maturity\">Maturity</a>\n<ul>\n<li><a href=\"#oracle-snapshot\">Oracle Snapshot</a></li>\n<li><a href=\"#exercising-options\">Exercising Options</a></li>\n</ul>\n</li>\n<li><a href=\"#expiry\">Expiry</a></li>\n<li><a href=\"#future-extensions\">Future Extensions</a>\n<ul>\n<li><a href=\"#arbitrary-maturity-predicates\">Arbitrary Maturity Predicates</a></li>\n<li><a href=\"#multimodal-options-markets\">Multimodal Options Markets</a></li>\n<li><a href=\"#limit-bids\">Limit Bids</a></li>\n</ul>\n</li>\n<li><a href=\"#summary-of-definitions\">Summary of Definitions</a></li>\n</ul>\n</li>\n<li><a href=\"#rationale\">Rationale</a></li>\n<li><a href=\"#test-cases\">Test Cases</a></li>\n<li><a href=\"#implementation\">Implementation</a></li>\n<li><a href=\"#discussion-questions\">Discussion Questions</a></li>\n<li><a href=\"#configurable-values-via-sccp\">Configurable Values</a></li>\n</ul>\n<hr>\n<h2 id=\"motivation\" style=\"position:relative;\"><a href=\"#motivation\" aria-label=\"motivation permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Motivation</h2>\n<p>Synthetix enhances whatever markets are implemented on top of it, as users can frictionlessly enter and exit in any\ncurrency they wish. This effectively allows any instruments to be denominated in any currency – but it requires\nintegration with the Synthetix platform.</p>\n<p>When it comes to actually setting up a market, stakers take on some of the risk of capitalising these markets, and in\nproviding the infrastructure to allow them to operate: these responsibilities and the labour required to generate binary\noptions markets should be compensated. This requires fees to be remitted to the pool, and hence integration with the\nprotocol itself. These fees are effectively the price of accessing the network effect that Synthetix provides by listing\nthe market.</p>\n<p>Additionally, the maturity condition of a binary option requires integration with trustworthy price oracles, which\nSynthetix already provides.</p>\n<hr>\n<h2 id=\"specification\" style=\"position:relative;\"><a href=\"#specification\" aria-label=\"specification permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Specification</h2>\n<h3 id=\"summary\" style=\"position:relative;\"><a href=\"#summary\" aria-label=\"summary permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Summary</h3>\n<p>Binary option markets are created by a manager contract, which keeps track of all markets over their lifetime.</p>\n<p>At the time of creation, several market parameters are set by the creator, in particular the strike price,\nunderlying asset, and maturity date. The resulting market has two sides, corresponding to the events that the price of\nthe underlying asset is either higher or lower than the specified strike price at the maturity date.\nOwnership and transfer of options on either side of the market is managed by a pair of dedicated ERC20 token contracts.</p>\n<p>Note that in this document, all prices, bids, payoffs, and so on will be denominated in sUSD, but there is no reason\nfuture markets couldn't be denominated in other Synths.</p>\n<p>Over its life cycle, a binary options market transitions through the following states in order:</p>\n<h4 id=\"1-bidding\" style=\"position:relative;\"><a href=\"#1-bidding\" aria-label=\"1 bidding permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>1. Bidding</h4>\n<p>In the bidding period, the initial price and supply of options on each side of the market are determined.\nNo options exist at this point, as their price is indeterminate.</p>\n<p>In order to fix the option prices, users bid to receive options on one or the other side of the market.\nBids cannot be transferred between wallets, but they can be refunded for a fee.\nAt the termination of bidding the basic price of each option is fixed, according to the relative demand on each\nand no more bids or refunds are accepted.</p>\n<h4 id=\"2-trading\" style=\"position:relative;\"><a href=\"#2-trading\" aria-label=\"2 trading permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>2. Trading</h4>\n<p>From the start of the trading period users can claim the options they are owed based on\nthe size of their bid and the final option prices.\nOnce claimed, the options are free to be traded between wallets, for example on secondary markets.\nIn this way the market price of each option can still float freely before the maturity date.</p>\n<h4 id=\"3-maturity\" style=\"position:relative;\"><a href=\"#3-maturity\" aria-label=\"3 maturity permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>3. Maturity</h4>\n<p>After the maturity date is reached, the price of the underlying asset is recorded, and the market\nresolves either long (the underlying asset's price is higher than or equal to the strike price),\nor short (the underlying asset's price is lower than the strike price). At this time, any collected\nfees are sent to the market creator and the Synthetix fee pool.</p>\n<p>Subsequently, users may exercise the options they hold, which will destroy them.\nIf the market resolved long, each long option pays out 1 sUSD, and each short option pays out nothing.\nIf the market resolved short, each long option pays out nothing, and each short option pays out 1 sUSD.</p>\n<p>These returns are paid from the total bids made on both sides during the bidding period.</p>\n<h4 id=\"4-expiry\" style=\"position:relative;\"><a href=\"#4-expiry\" aria-label=\"4 expiry permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>4. Expiry</h4>\n<p>After a time period allowing users to exercise their options,\nthose markets expire, and the market can destroyed.</p>\n<p>Any fees collected are sent to the market creator\nand the Synthetix fee pool, and the market is removed from its parent manager's\nlist of active markets.</p>\n<hr>\n<h3 id=\"smart-contracts\" style=\"position:relative;\"><a href=\"#smart-contracts\" aria-label=\"smart contracts permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Smart Contracts</h3>\n<p><img src=\"/static/smart-contract-architecture-1f9f828a56dd5827115b96bdf895a226.svg\" alt=\"Architecture\"></p>\n<ul>\n<li><code>Manager</code>: Responsible for generating new markets, and maintaining a list of active markets.</li>\n<li><code>Market</code>: Each <code>Market</code> instance provides options for a particular asset to be at a certain price on a given date. Many of these could exist simultaneously for different assets, with different strike prices, maturity dates, and so on. All bid funds are held in this contract.</li>\n<li><code>Option</code>: This is an ERC20 token contract which tracks each user's bids and option balances. Two option tokens exist per market, one long and one short.</li>\n</ul>\n<hr>\n<h3 id=\"basic-dynamics\" style=\"position:relative;\"><a href=\"#basic-dynamics\" aria-label=\"basic dynamics permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Basic Dynamics</h3>\n<h4 id=\"market-resolution\" style=\"position:relative;\"><a href=\"#market-resolution\" aria-label=\"market resolution permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Market Resolution</h4>\n<p>If the price of an underlying asset \\(U\\) is queried from an oracle at the maturity date,\nits price at maturity \\(P_U\\) is either above or below the strike price \\(P_U^{*}\\).\nUsers bid on each outcome to receive options that pay out in case that event occurs,\nexchanging sUSD with the <code>Market</code> contract.</p>\n<p>At the maturity date the market resolves into exactly one of these events, which will be denoted \\(L\\) and \\(S\\):</p>\n<ul>\n<li>\\(L\\): The event that \\(P_U \\geq P_U^{*}\\), when long options pay out 1 sUSD each.</li>\n<li>\\(S\\): The event that \\(P_U &#x3C; P_U^{*}\\), when short options pay out 1 sUSD each.</li>\n</ul>\n<p>And further define the quantities of sUSD bid on each side:</p>\n<ul>\n<li>\\(Q_L\\): The value of sUSD bid on the long side of the market.</li>\n<li>\\(Q_S\\): The value of sUSD bid on the short side of the market.</li>\n</ul>\n<h4 id=\"fees\" style=\"position:relative;\"><a href=\"#fees\" aria-label=\"fees permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Fees</h4>\n<p>During the bidding phase, bids and refunds are made, and fees are charged on these transactions.</p>\n<p>There are two basic fee rates:</p>\n<ul>\n<li>\\(\\phi\\): The fee charged on bids, to be paid to the market creator and fee pool.</li>\n<li>\\(\\phi_{R}\\): The fee rate charged on refunds, which stays in the market, compensating the remaining bidders.</li>\n</ul>\n<p>The market collects fees as bids are refunded, hence:</p>\n<ul>\n<li>\\(Q_R\\): The total value of sUSD accrued as refund fees.</li>\n</ul>\n<p>After the bidding period has concluded, the total funds held in the contract is the sum of bids on both sides,\nplus any accrued refund fees; a value of (\\(Q_L + Q_S + Q_R\\)) sUSD.\nAt maturity, the bidding fee is charged on the total deposits, and these fees are remitted to the market creator and\nfee pool. The remaining funds are paid out to winning option-holders.</p>\n<p>The specific quantities sent to the market creator vs the fee pool are determined by distinct fee rates for the fee pool\n(\\(\\phi*{pool}\\)) and for the market creator (\\(\\phi*{creator}\\)), and the overall fee rate is their sum:</p>\n<p>\\[\n\\phi := \\phi_{pool} + \\phi_{creator}\n\\]</p>\n<p>These fees are transferred to the pool and the creator at the resolution of the market.</p>\n<p>The refund fee is intended to dampen price volatility caused by users exiting their positions too readily, and also to\ndisincentivise malicious players from sending toxic price signals to the market, taking a position to affect the price\nintending only to exit part of the position before the close of bidding. It also compensates the remaining market\nparticipants in case any of these things occurs.</p>\n<h4 id=\"option-supply-and-prices\" style=\"position:relative;\"><a href=\"#option-supply-and-prices\" aria-label=\"option supply and prices permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Option Supply and Prices</h4>\n<p>At the maturity date, a quantity \\((Q_L + Q_S + Q_R\\)) sUSD is deposited in the market, of which\n\\(\\phi (Q_L + Q_S + Q_R)\\) sUSD is deducted as fees. The remaining quantity \\(Q\\) is paid to option holders on the\nwinning side of the market, with:</p>\n<p>\\[\nQ := (1 - \\phi) (Q_L + Q_S + Q_R)\n\\]</p>\n<p>Since each option pays 1 sUSD, and L and S are mutually exclusive events, each side of the market\nmust also be awarded \\(Q\\) options. So the total quantity of options minted is \\(2Q\\),\nbut only \\(Q\\) mature in the money.</p>\n<p>The market spent quantities \\(Q_L\\) and \\(Q_S\\) of sUSD to exchange into \\(Q\\) options per side, so the\nfinal option prices are easily computed:</p>\n<p>\\[\nP_L := \\frac{Q_L}{Q} \\approx \\frac{Q_L}{Q_L + Q_S}\n\\]</p>\n<p>\\[\nP_S := \\frac{Q_S}{Q} \\approx \\frac{Q_S}{Q_L + Q_S}\n\\]</p>\n<p>Where the rightmost formulae are approximations obtained by neglecting fees, assuming \\(\\phi\\) and \\(Q_R\\) are\nclose to zero.</p>\n<p>For example, if \\(Q_L = Q_S = 100\\) sUSD, then \\(P_L = P_S \\approx 0.5\\) sUSD per option.\nBut if an additional \\(50\\) sUSD is bid on \\(L\\), then \\(P_L \\approx 0.6\\), while \\(P_S \\approx 0.4\\). Thus\nincreased demand for options on one side of the market increases the price on that side and reduces it on the other.\nLarger bids will shift the prices to a correspondingly greater degree.</p>\n<p>It is only at the end of the bidding period that the price is finalised, and users can claim their bids.\nThe prices are designed such that each bidder will receive a pro-rated quantity of options according to the size of\ntheir bid. If a user had bid \\(b\\) sUSD on \\(L\\), they would receive \\(\\frac{b}{P_L}\\) long options.\nIf they had bid instead on \\(S\\), they would receive \\(\\frac{b}{P_S}\\) short options.</p>\n<h4 id=\"market-equilibria\" style=\"position:relative;\"><a href=\"#market-equilibria\" aria-label=\"market equilibria permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Market Equilibria</h4>\n<p>If the true probability of \\(L\\) occurring is \\(p\\), then long options yield an expected profit of\n\\(p - P_L\\) each, which is positive whenever the price is lower than the probability that L occurs.\nSo, as bidding on an option drives its price up, its price should approach what the market believes\nthe probability of its corresponding event is, although a player with an edge may not wish to\nbid the price all the way up to the true probability so as not to communicate their belief to the market.</p>\n<p>Since the option prices are effectively estimated probabilities, it should feel natural that\n\\(P_L + P_S \\approx 1\\) sUSD per option, as this reflects the fact that \\(L\\) and \\(S\\) are complementary events.\nAs \\(S\\) occurs whenever \\(L\\) does not, its probability is \\(1 - p\\), so the expected short profit is\n\\((1 - p) - P_S \\approx (1 - p) - (1 - P_L) = P_L - p\\), which is the negative of the long profit. That is, a binary\noption market is a zero-sum game, and the incentive exists to refund a position whose price is too high as much as one\nexists to bid on an option whose price is too low.</p>\n<p>So, modulo fees, each option price can be read off directly as the approximately odds of its event occurring.</p>\n<h5 id=\"the-effect-of-fees\" style=\"position:relative;\"><a href=\"#the-effect-of-fees\" aria-label=\"the effect of fees permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>The Effect of Fees</h5>\n<p>The presence of fees has a small impact on prices, and thus the odds that the market predicts.</p>\n<p>Let us assume that the sum of all refunds is currently proportional with the size of the market by some volatility\nconstant \\(v\\), then we can describe the accrued refund fees as follows:</p>\n<p>\\[\nQ_R = v \\cdot \\phi_{R} \\cdot (Q_L + Q_S)\n\\]</p>\n<p>Then we have:</p>\n<p>\\[\nP_L + P_S = \\frac{1}{(1 + v \\cdot \\phi_{R})(1 - \\phi)}\n\\]</p>\n<p>So as the bidding fee increases, prices increase. Assuming no refunds have been made, then the sum of prices\nis greater than 1; it will only be rational for market participants to purchase options if they believe the\noptions are mispriced by a margin larger than the bidding fee rate. Given that the fee rates are close to zero, however,\nand there is high uncertainty before the maturity date, most of the time this will not be a major influence.</p>\n<p>On the other hand, if refunds are made, the volatility term increases, and prices decrease.\nAssuming \\(\\phi = 0\\), the sum of prices is less than 1; both sides have been discounted, and there should be extra\ndemand attracted, decreasing the volatility term enough to bring the sum of prices back down close to 1.</p>\n<hr>\n<h3 id=\"market-creation\" style=\"position:relative;\"><a href=\"#market-creation\" aria-label=\"market creation permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Market Creation</h3>\n<p>A new options market is generated by the <code>Manager</code> contract; the contract creator must choose fixed values for:</p>\n<ul>\n<li>\\(O\\): The price oracle for the underlying asset \\(U\\), which implicitly sets \\(U\\) as well;</li>\n<li>\\(t_b\\): The end of the bidding period;</li>\n<li>\\(t_m\\): The maturity date;</li>\n<li>\\(P_U^{*}\\): the strike price of \\(U\\);</li>\n<li>\\(Q_L\\) / \\(Q_S\\): the initial bid on each side of the market;</li>\n</ul>\n<p>A new <code>Market</code> contract is instantiated with the specified parameters, and two child <code>Option</code> instances.</p>\n<p>For discoverability purposes, the address of each new <code>Market</code> instance will be tracked in a\nlist on the <code>Manager</code> contract until that market is destroyed at the end of its life. In addition, the total\nvalue deposited across all markets is tracked in the <code>Manager</code>.</p>\n<h4 id=\"initial-capital\" style=\"position:relative;\"><a href=\"#initial-capital\" aria-label=\"initial capital permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Initial Capital</h4>\n<p>The market creation functionality of the <code>Manager</code> contract will be public; anyone at all will be able to create a\nmarket, provided they can meet the capital requirement \\(C\\). The capital requirement dissuades users from creating\nlow-liquidity markets flippantly.</p>\n<p>The capital requirement also ensures that the market has initial prices: without positive values for \\(Q_L\\) and\n\\(Q_S\\), \\(P_L\\) and \\(P_S\\) are undefined. No constraints are placed upon the initial division of funds between\n\\(Q_L\\) and \\(Q_S\\), except that they must both be positive, and the sum \\(Q_L + Q_S\\) must be worth more than\n\\(C\\).</p>\n<p>The particular division of funds between long and short sides of the market determines the initial prices, and reflects\nthe market creator's initial belief about the odds. Just like any other bidder, the market creator will be awarded\noptions in return for this initial capital.</p>\n<p>A third reason it is necessary to provide this initial liquidity is to ensure that when bids come into a new market,\nthe market is liquid enough that the prices don't swing too aggressively.\nIn a very thin market, small bids can cause drastic and undesirable shifts in price, and the market's size needs to be\nstep-laddered up to achieve a reasonable size.</p>\n<p>The market creator may refund part of their initial capital if they provided more than the capital requirement,\nbut until the end of bidding, their total bids in the market must be greater than \\(C\\). After the bidding phase,\nthe creator may trade or exercise their options, or simply reclaim the capital at market destruction.\nThus it is important for the author of a given market to carefully select its initial parameters.\nBy selecting a combination of asset, timing, and strike price that attracts demand, and by choosing initial prices that\nare reasonably fair, the market creator minimises their own risk by maximising the market's health.</p>\n<h4 id=\"oracles\" style=\"position:relative;\"><a href=\"#oracles\" aria-label=\"oracles permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Oracles</h4>\n<p>The price oracle must be selected from the approved set of data sources available on the\nSynthetix <a href=\"https://docs.synthetix.io/contracts/exchangerates/\"><code>ExchangeRates</code></a> contract, which includes a number of\n<a href=\"https://github.com/smartcontractkit/chainlink/blob/5ab3cd2777590701007cc02941cb94179e79f3ba/evm/contracts/Aggregator.sol\">Chainlink Aggregators</a>.</p>\n<p>Oracles are initially constrained to a trusted set, otherwise there is the strong potential for malicious actors to\nsupply manipulated data feeds, but this could be democratised in the future.</p>\n<h4 id=\"further-incentives\" style=\"position:relative;\"><a href=\"#further-incentives\" aria-label=\"further incentives permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Further Incentives</h4>\n<p>Without a profit motive there is no reason to expect anyone to risk funds in the creation of these markets,\nand therefore a portion of the overall payout (\\(\\phi_{creator}\\)) will go to the market creator at the maturity date.\nIn the initial stages it may be necessary to subsidise the creation of these markets by means of inflationary rewards or\nother bounties. The implementation of such subsidies is an open question for the community to answer.</p>\n<hr>\n<h3 id=\"bidding\" style=\"position:relative;\"><a href=\"#bidding\" aria-label=\"bidding permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Bidding</h3>\n<p>The bidding period commences immediately after the contract is created, terminating at time \\(t_b\\), when the trading\nperiod begins. During the bidding period, users may add or remove funds on either side of the market, allowing it to\nequilibrate, ultimately fixing the option prices from time \\(t_b\\) onward.</p>\n<p>The following addresses the long side \\(L\\); the short \\(S\\) case is symmetric.</p>\n<h4 id=\"bids\" style=\"position:relative;\"><a href=\"#bids\" aria-label=\"bids permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Bids</h4>\n<p>Users may bid to receive options that will pay out if outcome \\(L\\) occurs.\nIn order to do this, wallet \\(w\\) deposits \\(b\\) sUSD with the <code>Market</code> contract. \\(Q_L\\) and the associated\nlong <code>Option</code> contract's balance for wallet \\(w\\) are both incremented by \\(b\\).</p>\n<h4 id=\"refunds\" style=\"position:relative;\"><a href=\"#refunds\" aria-label=\"refunds permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Refunds</h4>\n<p>If a user has already taken a position, they may refund it. A fee is charged for this to counteract toxic order flow\nand other manipulations available to actors with private information.</p>\n<p>If the user with wallet \\(w\\) has already bid \\(b\\) sUSD long, then they may refund any quantity \\(q \\leq b\\),\nand will receive \\(q (1 - \\phi*{R})\\) sUSD. \\(Q_L\\) and the associated long <code>Option</code> contract's balance\nfor wallet \\(w\\) are decremented by \\(b\\). The remaining \\(q \\cdot \\phi*{R}\\) sUSD remains in the common pot,\nbut not allocated to the total bids on either side, and so discounts the prices for both sides, incentivising further\ndemand to make up for that which was withdrawn by the refund.</p>\n<p>A bidder may wish to refund their position because they have gained new information,\nor the underlying market conditions have changed. However, recall that placing a bid shifts prices for all existing\nbidders, so they may also wish to refund their position because the option price has shifted too much or they\nbelieve the options are now mispriced.</p>\n<p>When a bidder exits the market, the part of their bid that they leave behind compensates the market for the incorrect\nsignal they previously transmitted, increasing the payoff for other users who stuck with their position.\nBe aware, however, that although this fee disincentivises churn and market toxicity, it also slightly distorts the\nmarket, creating a friction that stands in the way of the most rapid possible price discovery.</p>\n<hr>\n<h3 id=\"trading\" style=\"position:relative;\"><a href=\"#trading\" aria-label=\"trading permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Trading</h3>\n<p>At the commencement of the trading period, bidding is disabled and ERC20 token transfer is enabled. As the individual\ntoken prices have stabilised, the quantity of options each wallet is owed can be computed, so it is at this point that\nusers can claim the options they are owed.</p>\n<p>An account that bid \\(b\\) sUSD on each of the long and short sides will be able to claim option balances of\n\\(\\frac{b}{P_L}\\) and \\(\\frac{b}{P_S}\\) options, respectively.</p>\n<p>The same computation produces the total supply of options, which at all times will evaluate to\n\\(\\frac{Q_L}{P_L} + \\frac{Q_S}{P_S} = 2Q\\).</p>\n<p>During the trading period, each <code>Option</code> contract offers full ERC20 functionality, including <code>transfer</code>, <code>approve</code>, and\n<code>transferFrom</code>, supporting trading options on secondary markets.</p>\n<hr>\n<h3 id=\"maturity\" style=\"position:relative;\"><a href=\"#maturity\" aria-label=\"maturity permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Maturity</h3>\n<p>Once the maturity date is reached, the oracle must be consulted and the outstanding options resolved to pay out 1 sUSD\neach, or nothing. At their discretion, any user with a positive balance of options can then exercise them to\nobtain whatever payout they are owed. At the maturity date, any collected fees are paid out to the fee pool and the\nmarket creator.</p>\n<h4 id=\"oracle-snapshot\" style=\"position:relative;\"><a href=\"#oracle-snapshot\" aria-label=\"oracle snapshot permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Oracle Snapshot</h4>\n<p>After the maturity date passes, any user can instruct the options market contract to query the oracle for the\nlatest price of the underlying asset. Taking this snapshot will resolve the market.\nThe price snapshot should generally occur in a timely fashion as whichever side is in the money at maturity has a\nstrong incentive to resolve the market as rapidly as possible. The options market, having been resolved, will remember\nthe result, allowing users to exercise their options in the future, even if the price has changed.</p>\n<p>The price queried from the oracle can have been last updated before the maturity date, to prevent users from having\nto wait before resolving the market, but the price must not be too old. The maximum oracle price age will be\nconfigurable by SCCP.</p>\n<h4 id=\"exercising-options\" style=\"position:relative;\"><a href=\"#exercising-options\" aria-label=\"exercising options permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Exercising Options</h4>\n<p>At maturity, users may exercise the options they hold. The required funds will then be transferred from the\n<code>Market</code> contract to the user, and their balances in the underlying <code>Option</code> token contracts set to zero,\ndestroying those options so that they cannot be exercised again.\nIf a user has unclaimed options at the time they call the exercise function, the options they are owed will be\nautomatically claimed and exercised.</p>\n<h3 id=\"expiry\" style=\"position:relative;\"><a href=\"#expiry\" aria-label=\"expiry permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Expiry</h3>\n<p>In order to combat the proliferation of defunct options contracts, <code>Market</code> instances implement a\nself-destruct function which can be invoked a period of time after the maturity date. Once this function is\ninvoked, the contract and its two subsidiary <code>Option</code> instances will self destruct, and the corresponding entry deleted\nfrom the list of active markets on the <code>Manager</code> contract.\nUpon destruction, any the value of any unexercised options is remitted to the account invoking the expiry function.</p>\n<hr>\n<h3 id=\"future-extensions\" style=\"position:relative;\"><a href=\"#future-extensions\" aria-label=\"future extensions permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Future Extensions</h3>\n<h4 id=\"arbitrary-maturity-predicates\" style=\"position:relative;\"><a href=\"#arbitrary-maturity-predicates\" aria-label=\"arbitrary maturity predicates permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Arbitrary Maturity Predicates</h4>\n<p>At present these options are defined on a particular maturity condition, but the system could readily be augmented with\na range of richer conditions.</p>\n<p>If the inputs are restricted to only to a single price, there are many useful predicates that can be defined on\nthat price beyond the over-under condition proposed in this document. For example, the options could pay out depending\non whether the underlying price at maturity is within a percentage of its initial value.\nIf inputs are not restricted to a single price, comparisons can be made between several different oracle outputs.\nFor example, options could pay out based on whether the Nikkei 225 grew by more than the FTSE 100.</p>\n<p>In fact any predicate accepting inputs from Synthetix oracles could be used as a maturity condition for options.</p>\n<h4 id=\"multimodal-options-markets\" style=\"position:relative;\"><a href=\"#multimodal-options-markets\" aria-label=\"multimodal options markets permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Multimodal Options Markets</h4>\n<p>Although this structure has been defined for a binary outcome, it extends easily to any number of outcomes.\nIn particular, if there are \\(n\\) possible outcomes, then \\(n\\) <code>Option</code> token contract instances are instantiated,\none for each outcome.</p>\n<p>If \\(\\Omega\\) is an exhaustive set of mutually exclusive outcomes,\nand \\(Q<em>o\\) is the quantity bid towards outcome \\(o \\in \\Omega\\),\nthen \\(Q := (1 - \\phi) \\sum</em>{o \\in \\Omega}{Q_o}\\) is the number of options awarded to each outcome; \\(n \\cdot Q\\)\noptions are issued altogether, of which \\(Q\\) will pay out. Then the price for outcome\n\\(o\\) is \\(P_o := \\frac{Q_o}{Q}\\).</p>\n<p>The binary version is just a special case of this more general structure; notice for example that it possesses the same\nproperty that, neglecting fees, the sum of all prices is 1. Further, it still holds that it is expected to be profitable\nto buy a particular option whenever its price is less than the probability of its associated event occurring.\nAs a result the prices can still be interpreted as the market's estimate of the event odds.</p>\n<p>These events could be any discrete set of outcomes, such as the results of political elections.\nThus the multimodal parimutuel structure can function as a general prediction market, provided that good oracle sources\nfor events of interest can be obtained.</p>\n<p>With multimodal markets understood, continuous quantities are also handled by discretising their ranges into buckets.\nFor example, it would be possible for users to participate in a market focusing on the Ethereum price,\nwhere the possible outcomes were \\($140\\) or less, \\($140 - $150\\), and \\($150\\) or more. In principle any degree\nof granularity for these buckets is possible.</p>\n<h4 id=\"limit-bids\" style=\"position:relative;\"><a href=\"#limit-bids\" aria-label=\"limit bids permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Limit Bids</h4>\n<p>A slight issue with the system described is that it assumes an elasticity curve which may not reflect the true\nunderlying demand on one or both sides of the market. The liquidity at any given price point is infinitesimal,\nso participants need to wait for the size of the market to step-ladder up to a desired level.</p>\n<p>In order to serve demand at given prices without this step ladder effect, one could allow users to place limit orders on\neither side of the market. Then bids on the long and short sides of the market can be 'matched', i.e. they could both be\nfilled so that the demand is satisfied only under the conditions that there is sufficient depth to allow the price not\nto shift too much.\nOn the other hand, participants may also want to take stop loss positions which would refund their bid if the market\nshifts too far underneath them for their preference.</p>\n<p>In combination these mechanisms would provide users with the confidence to participate freely in these markets,\nenhancing the depth and liquidity of the binary options markets.</p>\n<p>These systems could be implemented as a smart contract or as a front-end overlay on synthetix.exchange.\nA related proposal for triggered order contracts is discussed in <a href=\"https://sips.synthetix.io/sips/sip-54\">SIP 54</a> and\n<a href=\"https://github.com/Synthetixio/synthetix/issues/195\">here</a>.</p>\n<hr>\n<h3 id=\"summary-of-definitions\" style=\"position:relative;\"><a href=\"#summary-of-definitions\" aria-label=\"summary of definitions permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Summary of Definitions</h3>\n<table>\n<thead>\n<tr>\n<th>Symbol</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>\\(U\\)</td>\n<td>The underlying asset of this market. It is assumed we have a reliable oracle \\(O\\) supplying its instantaneous price.</td>\n</tr>\n<tr>\n<td>\\(t_b\\), \\(t_m\\)</td>\n<td>The timestamps for the end of bidding and maturity, respectively, of a given contract. \\(t_b\\) must be later than the contract creation time, and \\(t_m\\) must be later than \\(t_b\\).</td>\n</tr>\n<tr>\n<td>\\(P_U\\), \\(P_U^{*}\\)</td>\n<td>\\(P_U\\) is the price of \\(U\\) queried from the oracle \\(O\\) at the maturity date \\(t_m\\). \\(P_U^{*}\\) is the strike price of \\(U\\), against which \\(P_U\\) is compared at maturity to resolve the market.</td>\n</tr>\n<tr>\n<td>\\(\\phi*{pool}\\), \\(\\phi*{creator}\\)</td>\n<td>The platform fee rate paid to the fee pool and to the market creator respectively. These fees are paid at the market destruction.</td>\n</tr>\n<tr>\n<td>\\(\\phi\\)</td>\n<td>The overall market fee, which is equal to \\(\\phi*{pool} + \\phi*{creator}\\). \\(\\phi\\) must in the range \\([0, 1]\\).</td>\n</tr>\n<tr>\n<td>\\(\\phi_{R}\\)</td>\n<td>The fee rate to refund a bid. Its value must be in the range \\([0, 1]\\).</td>\n</tr>\n<tr>\n<td>\\(Q_R\\)</td>\n<td>The accrued refund fees in a market.</td>\n</tr>\n<tr>\n<td>\\(L\\), \\(S\\)</td>\n<td>The possible outcomes at maturity. \\(L\\) is the event that \\(P_U \\geq P_U^{*} \\); when the \"long\" side of the market pays out. \\(S\\) is the event that \\(P_U &#x3C; P_U^{*}\\); when the \"short\" side of the market pays out.</td>\n</tr>\n<tr>\n<td>\\(Q_L\\), \\(Q_S\\)</td>\n<td>The total funds on the long and short sides of the market respectively.</td>\n</tr>\n<tr>\n<td>\\(Q\\)</td>\n<td>The quantity of options awarded to each side of the market; this is equal to \\((1 - \\phi) (Q_L + Q_S + Q_R)\\).</td>\n</tr>\n<tr>\n<td>\\(P_L\\), \\(P_S\\)</td>\n<td>The price of long and short options respectively. Defined as \\(P_L := \\frac{Q_L}{Q}\\) and \\(P_S := \\frac{Q_S}{Q}\\).</td>\n</tr>\n<tr>\n<td>\\(C\\)</td>\n<td>The minimum initial capitalisation of a new market.</td>\n</tr>\n</tbody>\n</table>\n<hr>\n<h2 id=\"rationale\" style=\"position:relative;\"><a href=\"#rationale\" aria-label=\"rationale permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Rationale</h2>\n<p>Binary options themselves represent an unsatisfied latent demand in the crypto/DeFi space; but their necessity\nultimately can only be proven by success or failure of an actual implementation. Successfully implemented, however, a\nfully-integrated binary options market ecosystem would increase the demand for Synths and increase the diversity of\ninstruments available to the market for hedging and other purposes.</p>\n<p>The parimutuel structure in particular was selected for its simplicity, efficiency, and desirable risk characteristics.\nAs the aggregated participants in one side of the market pay out the aggregated participants on the other side, this\nstructure is relatively computationally efficient.\nIn particular, there is no need for the complexity associated with traditional binary options, which require\ncounterparties to be matched.</p>\n<p>Since all parties only interact with a central pool of funds residing in a smart contract, and the prices behave in\na simple and rational way, the mechanism is completely transparent and trustworthy to all.\nThere is no questionable mathematical apparatus which implicitly attempts to predict actual supply and demand.\nFrom the perspective of the staking pool, the risk incurred in creating these markets is minimised, since the actual\nmarket position the pool has to take is zero, outside of initial capitalisation. Yet these markets could represent a\nreal driver of demand and fee generation, which will contribute to the overall health of the Synthetix ecosystem.</p>\n<p>The design proposed also leverages the existing structures Synthetix has built, as it can use as its inputs any\nprice feed already available, while being enhanced for free whenever new prices are introduced. Similarly, the mechanism\nitself can be extended to a much broader catalogue of financial instruments, prediction markets, and so on.</p>\n<hr>\n<h2 id=\"test-cases\" style=\"position:relative;\"><a href=\"#test-cases\" aria-label=\"test cases permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Test Cases</h2>\n<p>Test cases are included with <a href=\"#implementation\">the implementation</a>.</p>\n<hr>\n<h2 id=\"implementation\" style=\"position:relative;\"><a href=\"#implementation\" aria-label=\"implementation permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Implementation</h2>\n<p>A full implementation of the above specification is provided by the following smart contracts:</p>\n<ul>\n<li><a href=\"https://github.com/Synthetixio/synthetix/blob/0e78911f20bf24b9ed37e79f94a7cd3ebe7a51f9/contracts/BinaryOptionMarketManager.sol\"><code>BinaryOptionMarketManager</code></a>.</li>\n<li><a href=\"https://github.com/Synthetixio/synthetix/blob/0e78911f20bf24b9ed37e79f94a7cd3ebe7a51f9/contracts/BinaryOptionMarketFactory.sol\"><code>BinaryOptionMarketFactory</code></a>.</li>\n<li><a href=\"https://github.com/Synthetixio/synthetix/blob/0e78911f20bf24b9ed37e79f94a7cd3ebe7a51f9/contracts/BinaryOptionMarket.sol\"><code>BinaryOptionMarket</code></a>.</li>\n<li><a href=\"https://github.com/Synthetixio/synthetix/blob/0e78911f20bf24b9ed37e79f94a7cd3ebe7a51f9/contracts/BinaryOption.sol\"><code>BinaryOption</code></a>.</li>\n</ul>\n<p>There is also an <a href=\"https://github.com/Synthetixio/synthetix-docs/pull/16\">accompanying pull request</a> for documentation.</p>\n<hr>\n<h2 id=\"discussion-questions\" style=\"position:relative;\"><a href=\"#discussion-questions\" aria-label=\"discussion questions permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Discussion Questions</h2>\n<p>There are a number of details which the community will need to decide on for the proposed markets to flourish.\nFor example:</p>\n<h3 id=\"alternative-price-discovery-mechanism\" style=\"position:relative;\"><a href=\"#alternative-price-discovery-mechanism\" aria-label=\"alternative price discovery mechanism permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Alternative Price Discovery Mechanism</h3>\n<p>There exist a number of potential alternative models for finding the price of each option.\nOne such alternative would remove the bidding period. In this design, options would be generated by a simple exchange of\na $1 for a pair of options. Any binary option market would generate one long option and one short option in exchange for\n$1 plus a fee. This works because although the specific prices of each option are not known, it is known that\ntogether they will pay out a single token. Refunds would proceed similarly: a user would have to purchase one of each\noption to exchange back to other Synths.</p>\n<p>Then price discovery would proceed by the user who just exchanged into an option pair selling the undesired\noption on market.</p>\n<p>Under this proposal, exchange and transfer functionality could happen at all times, and there would also be no\nconstraint on the growth of the market, right up to the maturity date.</p>\n<h3 id=\"which-markets-to-create\" style=\"position:relative;\"><a href=\"#which-markets-to-create\" aria-label=\"which markets to create permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Which Markets to Create</h3>\n<p>The community will drive which markets should actually be opened.\nSome experimentation will be needed to settle questions such as which assets to focus on,\nthe appropriate relative lengths of bidding and trading periods, the overall time to maturity, initial odds and\nstrike prices.</p>\n<h3 id=\"market-lifecycle\" style=\"position:relative;\"><a href=\"#market-lifecycle\" aria-label=\"market lifecycle permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Market Lifecycle</h3>\n<p>It is not clear a priori what level of incentivisation is appropriate for the opening and cleanup of markets.\nDetermining these levels, and what form the incentives take is particularly relevant if inflationary SNX rewards are to\nbe used to subsidise market creation.</p>\n<p>It may be the case that the transition between bidding and trading periods needs to be smoothed out,\nand observation of market dynamics close to the close of bidding will be needed.</p>\n<h3 id=\"oracle-selection\" style=\"position:relative;\"><a href=\"#oracle-selection\" aria-label=\"oracle selection permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Oracle Selection</h3>\n<p>In the future, it may be desirable to extend the set of prices available to binary options.\nIt needs to be decided asset prices are appropriate to allow users to build binary options markets upon,\nand which are not. Further to this, it may be the case that oracle system needs to be extended beyond the existing\nSynthetix data feeds; which feeds (if it is a restricted set), and how to perform the extension are still open\nquestions.</p>\n<h3 id=\"external-integrations\" style=\"position:relative;\"><a href=\"#external-integrations\" aria-label=\"external integrations permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>External Integrations</h3>\n<p>It will be necessary to decide how to filter and display markets on dApps and other interfaces; whether integration with\nexternal platforms would be valuable, and which platforms, is another avenue that may be fruitful to investigate.</p>\n<p>One such example would be the ability to instantiate a Uniswap pool automatically when entering the trading phase, to\nprovide immediate liquidity to the new binary options.</p>\n<h3 id=\"forced-option-exercise\" style=\"position:relative;\"><a href=\"#forced-option-exercise\" aria-label=\"forced option exercise permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Forced Option Exercise</h3>\n<p>In the current design, at the expiry of a market, the value of any unexercised options is\ngiven to the account that cleans up the market. However, in the future it may be useful to allow these options\nto be force-exercised after the maturity period by external parties, who would receive a portion\nof the value owed to these wallets.</p>\n<hr>\n<h2 id=\"configurable-values-via-sccp\" style=\"position:relative;\"><a href=\"#configurable-values-via-sccp\" aria-label=\"configurable values via sccp permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Configurable Values (Via SCCP)</h2>\n<table>\n<thead>\n<tr>\n<th>Symbol</th>\n<th>Initial Value</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>\\(C\\)</td>\n<td>1000 sUSD</td>\n<td>The minimum value of the initial capitalisation of a new binary option market. This is a value of USD.</td>\n</tr>\n<tr>\n<td>\\(\\phi_{pool}\\)</td>\n<td>0.8%</td>\n<td>The platform fee rate paid to the fee pool. This is a decimal number in the range \\([0, 1]\\).</td>\n</tr>\n<tr>\n<td>\\(\\phi_{creator}\\)</td>\n<td>0.2%</td>\n<td>The fee rate paid to the creator of a market. This is a decimal number in the range \\([0, 1]\\).</td>\n</tr>\n<tr>\n<td>\\(\\phi_{R}\\)</td>\n<td>5%</td>\n<td>The fee rate to refund a bid. This is a decimal number in the range \\([0, 1]\\).</td>\n</tr>\n<tr>\n<td>max oracle price age</td>\n<td>2 hours</td>\n<td>The oldest a price update can be to be considered acceptable for resolving a market.</td>\n</tr>\n<tr>\n<td>expiry duration</td>\n<td>26 weeks</td>\n<td>How long options can be exercised before their market is eligible to be destroyed.</td>\n</tr>\n<tr>\n<td>max time to maturity</td>\n<td>2 years</td>\n<td>A safety constraint that limits how far in the future a maturity date can be set at market creation.</td>\n</tr>\n</tbody>\n</table>\n<hr>\n<h2 id=\"copyright\" style=\"position:relative;\"><a href=\"#copyright\" aria-label=\"copyright permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Copyright</h2>\n<p>Copyright and related rights waived via <a href=\"https://creativecommons.org/publicdomain/zero/1.0/\">CC0</a>.</p>"}},"pageContext":{"id":"44424de3-69f2-5bdd-aee5-370a0c9feca6","frontmatter__sip":53,"__params":{"frontmatter__sip":"53"}}},"staticQueryHashes":[]}