Coder Social home page Coder Social logo

2i2i-whitepaper's Introduction

2i2i ~ the provably fairest and most inclusive market model



Abstract

This whitepaper describes a novel, multi-dimensional, infinitely inclusive market model. The described model yields infinite types of new market dynamics and traditional markets as special cases, based on very few parameters. As the market allows any supply of arbitrarily small or large value to be traded in any currency, incl. subjective value currencies, any resulting liquid market must then find the fairest value of the supply.



I. Definitions



Market

Assume we have a seller with a finite supply $\mathcal{S}$ and there exists a demand $\mathcal{D}$ consisting of bids.

A market $\mathcal{M}$ is a function that determines the next bid to be serviced. Formally,

$$\mathcal{M}(\mathcal{S}, \mathcal{D}) = B$$

where $B \in \mathcal{D}$ is a bid.

More generally, we add a parameter to the market $\mathcal{M}$ to output the bid next after some given bid $B$.

$$\mathcal{M}(\mathcal{S}, \mathcal{D}, B) = B_\text{next}$$

$$B, B_\text{next} \in \mathcal{D} \cup \{∅\}$$

$∅$ represents an end, as follows. Simplifying $\mathcal{M}(\mathcal{S}, \mathcal{D}, B)$ to $\mathcal{M}(B)$,

$$\mathcal{M}(∅)=B_\text{first}$$

$$\mathcal{M}(B_\text{last})=∅$$

This then allows for an ordering of the bids

$$\mathcal{D} = [B_1, \ldots, B_N] = [\mathcal{M}^1(∅), \mathcal{M}^2(∅), \ldots, \mathcal{M}^N(∅)] = \{\mathcal{M}^\text{rank}(∅)\}_{\text{rank}=1}^N$$

In this paper, we will define a partial ordering and a total ordering that is fairest, most inclusive and accomodates all types of markets, as well as innovating new types of markets with a generic framework.



Parameters

The seller sets the following parameters $\mathcal{P}$:

$$\mathcal{P} = (\underline{M}, \mathcal{I})$$

$$\underline{M} \ge 0 \text{ minimum value of the supply}$$

$$\mathcal{I} = \text{importance}$$

The importance $\mathcal{I}$ will be explained later. It is a setting of the seller defining the importance of the different categories of bids.



Bid

Each bid $B$ looks as follows:

$$B = (T, A, \mathcal{P})$$

$$T = \text{time of creation}$$

$$A = \text{(q, ccy, FX)} \text{ is the amount of the bid}$$

$$\mathcal{P} = \text{ the sellers parameters at time } T$$

The amount $A$ contains a quantity $q$, a currency $\text{ccy}$ and an exchange rate to a base currency $\text{FX}$, all fixed at time $T$.



Currency and FX

Let $\mathcal{C}$ be the universe of all existing currencies.

Then

$$\mathcal{C} = \mathcal{C}\text{obj} \text{ } \dot{\cup} \text{ } \mathcal{C}\text{sub}$$

that is, any currency either has objective value xor subjective value.

We choose some

$$\text{ccy}\text{base} \in \mathcal{C}\text{obj}$$

as the base currency and we define

$$\text{FX}(\text{ccy}) = \text{FX}(\text{ccy}, T) = \text{FX}(\text{ccy}, \text{ccy}_\text{base}, T)$$

as the fair exchange rate between $\text{ccy}$ and $\text{ccy}_\text{base}$, i.e.

$$1 \text{ }\text{ }\text{ }\text{[ccy]} = \text{FX}(\text{ccy}) \text{ }\text{ }\text{ }\text{[ccy]}_\text{base}$$

and

$$\text{FX(ccy)} = ∅ \text{ if ccy}\in\mathcal{C}_\text{sub}$$



Before we categorize the bids, let's simplify them. First, we call a bid $B$ objective

$$B \text{ is objective} \Leftrightarrow \text{ccy} \in \mathcal{C}_\text{obj}$$

if it is of an objective value currency.

The amount $A$ of each objective bid can be transformed into the chosen base currency, as follows:

$$B(T, A = (q, \text{ccy}, \text{FX}), \mathcal{P}) \rightarrow B_\text{base}(T, A = (\text{FX}\cdot q , \text{ccy}_\text{base}, \text{FX}\equiv 1), \mathcal{P})$$

This means, without loss of generality, we can assume all objective bids to be denominated in the base currency.



Bid Categories

Assuming that the min value $\underline{M}$ is also in the base currency, we define the following 4 bid categories:

$$\text{chrony (\bf{C\bf{HR}})} \Leftrightarrow B \text{ is objective} \text{ and } q = \underline{M}$$

$$\text{highroller (\bf{HR})} \Leftrightarrow B \text{ is objective} \text{ and } q > \underline{M}$$

$$\text{lurker (\bf{LURK})} \Leftrightarrow B \text{ is objective} \text{ and } q < \underline{M}$$

$$\text{subjective (\bf{SUBJ})} \Leftrightarrow B \text{ is subjective}$$

We can denote a bid $B$'s category as $\text{BC}(B)$.



Importance

The seller defines the importance per bid category

$$\mathcal{I} = (\mathcal{I}\text{\bf{C\bf{HR}}}, \mathcal{I}\text{\bf{HR}}, \mathcal{I}\text{\bf{LURK}}, \mathcal{I}\text{\bf{SUBJ}})$$

where each importace is a natural number

$$\mathcal{I}\square\in\mathbb{N}{\ge 0}, \square\in\{\text{\bf{C\bf{HR}}}, \text{\bf{HR}}, \text{\bf{LURK}}, \text{\bf{SUBJ}}\}$$

the market is activated

$$0 < \sum_\square\mathcal{I}_\square = \sum\mathcal{I}$$

and the lurkers never get serviced

$$\mathcal{I}_\text{\bf{LURK}} = 0$$

Amongst every subsequence of the ordered bids $[B_n, \ldots, B_m]$ of length $\sum\mathcal{I}$, on average, we get $\mathcal{I}_\square$ many of bid category $\square$.

E.g. if

$$\mathcal{I} = (\mathcal{I}\text{\bf{C\bf{HR}}} = 2, \mathcal{I}\text{\bf{HR}} = 3, \mathcal{I}\text{\bf{LURK}} = 0, \mathcal{I}\text{\bf{SUBJ}} = 1)$$

then, on average, any subsequence of 6 bids serviced should contain 2 chrony, 3 highroller bids and 1 subjective bid.





II. The market $\mathcal{M}$



Characteristics

We want to create a market function such that:

  • importance is respected

  • order of objective bids is objectively deterministic

  • internal category order is maintained

  • worst case rank for chrony bids is finite

  • the seller can use it's own subjective value function to value subjective bids



Internal category order

Chrony bids are time ordered, highroller bids are value ordered, subjective bids are ordered by each seller subjectively and lurker bids live in the projective infinity, never serviced.



Traditional markets as special cases

Fixed price

$$\underline{M} = \text{fixed price}$$

$$\mathcal{I} = (\mathcal{I}\text{\bf{C\bf{HR}}} = 1, \mathcal{I}\text{\bf{HR}} = 0, \mathcal{I}\text{\bf{LURK}} = 0, \mathcal{I}\text{\bf{SUBJ}} = 0)$$

Auction

$$\underline{M} = \text{min price}$$

$$\mathcal{I} = (\mathcal{I}\text{\bf{C\bf{HR}}} = 0, \mathcal{I}\text{\bf{HR}} = 1, \mathcal{I}\text{\bf{LURK}} = 0, \mathcal{I}\text{\bf{SUBJ}} = 0)$$

Barter

$$\mathcal{I} = (\mathcal{I}\text{\bf{C\bf{HR}}} = 0, \mathcal{I}\text{\bf{HR}} = 0, \mathcal{I}\text{\bf{LURK}} = 0, \mathcal{I}\text{\bf{SUBJ}} = 1)$$

All other cases are mixed, innovative markets and can yield differing dynamics.



The algorithm



1. Sort the bids

We can almost surely assume

$$T_i \ne T_j \text{ if } i \ne j$$

that the bids can be sorted chronologically.

Given this chronological ordering, let's group the bids by creating subsequences of constant parameters:

$$\underbrace{B_1, \ldots, B_{i_1}}{\mathcal{P}1}, \underbrace{B{i_1+1}, \ldots, B{i_2}}{\mathcal{P}2}, \ldots, \underbrace{B{i{G_N}+1}, \ldots, B_N}{\mathcal{P}{G_N}}$$

that is, changing the parameters $\mathcal{P}$ fixes the current order.

We are left with the task of ordering the bids given constant parameters $\mathcal{P}$.



2. Decimal Importance

The importance $\mathcal{I}$ can be converted into decimals as follows:

$$\mathcal{I}\rightarrow\nu_\square = \frac{\mathcal{I}_\square}{\sum\mathcal{I}} \in [0;1]$$

$$\square\in\{\text{\bf{C\bf{HR}}}, \text{\bf{HR}}, \text{\bf{LURK}}, \text{\bf{SUBJ}}\}$$

We also know that

$$\nu_\text{\bf{LURK}} = 0$$

$$\sum_\square\nu_\square = 1$$

$$\implies\nu_\text{\bf{SUBJ}} = 1 - \nu_\text{\bf{C\bf{HR}}} - \nu_\text{\bf{HR}}$$

which means that $\mathcal{I}$ can be represented as a 2-dim vector:

$$\mathcal{I} = \begin{pmatrix} \nu_\text{\bf{C\bf{HR}}} \ \nu_\text{\bf{HR}} \end{pmatrix}$$



3. Define $\mathcal{M}$

Given the previous max $\sum\mathcal{I}-1$ number of bids $[B_n,\ldots,B_m]$, we want to choose the next bid $B_\text{next}$.

First, we choose the next bid category as the category that brings our realized importance closest ($\delta$) to the target importance as set by the seller.

To that end, calculate the realized importance $\hat{\mathcal{I}}$ including an assumed next bid category $\text{BC}(B_\text{next})$

$$\hat{\mathcal{I}}=\begin{pmatrix} \hat{\nu}\text{\bf{C\bf{HR}}} \ \hat{\nu}\text{\bf{HR}} \end{pmatrix}$$

$$\hat{\nu}\square = \frac{\#\{\text{BC}(B_i)==\square\}{i=n\ldots m+1}}{m-n+1}$$

and choose $\text{BC}(B_\text{next})$ as $\underset{\text{BC}(B_\text{next})}{\text{argmin }}\delta(\mathcal{I}, \hat{\mathcal{I}})$.

If the next category should be $\text{\bf{C\bf{HR}}}$, then $B_\text{next}$ is the chronogically next $\text{\bf{C\bf{HR}}}$ bid available.

If the next category should be $\text{\bf{HR}}$, then $B_\text{next}$ is the value ordered next $\text{\bf{HR}}$ bid available.

If the next category should be $\text{\bf{SUBJ}}$, then $B_\text{next}$ can be chosen in the two following ways:

  1. $B_\text{next}$ is the chronogically next $\text{\bf{SUBJ}}$ bid available. However, the seller can choose to decline the bid, using it's subjective value function.

  2. Let the seller choose one xor none from all the existing $\text{\bf{SUBJ}}$ bids.

Either case results in a total, deterministic and objective ordering of all the objective bids and a total subjective ordering of all the subjective bids, both interwoven according to the chosen importance $\mathcal{I}$.

A discussion of the choices is found here.

Note the next category can never be $\text{\bf{LURK}}$, as $\nu_\text{\bf{LURK}}=0$. The seller can convert $\text{\bf{LURK}}$ bids into $\text{\bf{C\bf{HR}}}$ or $\text{\bf{HR}}$ bids or vice-versa by changing the minimum $\underline{M}$.



Worst case rank

Any bid can always choose to cancel, thereby improving the rank of all bids behind it. Hence we only need to talk about the worst case.

Worst case rank is deterministic if we allow it to be $\infty$, which it is for HR, SUBJ, LURK.

CHR

The above algorithm keeps the worst case rank for CHR bids deterministic and finite.

This is mainly because each $\mathcal{I}$ is finite, the number of bids is finite, internal CHR order is total and deterministic and change of parameters locks all existing objective bids in a total order.





III. Infinite inclusivity



The case

We can assume that any possible supply $\mathcal{S}$ has positive value, even if miniscule. The old world did not allow the transfer of smaller values than some threshold.

Using a chain of CFS, defined below, we can transact arbitrarily small (or large) values.

Hence, every kind and quantity of any supply is supported. This market model is infinitely inclusive.



Smart contracts

Smart contracts are autonomous, decentralized apps. The described market model is implemented as a smart contract for the following reasons: infinite inclusivity, zero credit risk, perfect transparency, ability to use any kind of currency.



Fungability

A currency is called fungible if it is available in varying units.

We can define the fungability $\mathbb{F}$ of a currency as the ratio of it's base unit to it's minimal unit.

E.g.

$$\mathbb{F}(\text{USD})=10^2$$

$$\mathbb{F}(\text{BTC})=10^8$$

$$\mathbb{F}(\text{NFT})=10^0=1$$



Constant Factor Stablecoin (CFS)

A CFS is a simple, permissionless smart contract that exchanges the minimal unit of a currency $\text{ccy}_1$ for $\phi$ units of a new currency $\text{ccy}_2$ and vice-versa, as available.

$\text{ccy}_2$ is created by and initially fully owned by the CFS. For the current intents and purposes, we can refer to $\text{ccy}_2$ as the CFS

$$\text{ccy}_2 \approx \text{CFS}(\text{ccy}_1, \phi)$$

A CFS never rounds and only makes exact exchanges.

Using a CFS, we have increased the fungability of any currency $\text{ccy}$

$$\mathbb{F}(\text{CFS}(ccy, \phi)) = \phi \cdot \mathbb{F}(ccy)$$



Infinitely inclusive

Assume the value of the supply $\mathcal{S}$ is $\epsilon &gt; 0$. $\epsilon$ can be arbitrarily small.

By chaining CFS, we can keep increasing the fungability until $\epsilon$ can be represented exactly.

$$\mathbb{F}(\text{CFS}^N(ccy, \phi)) = \phi^N \cdot \mathbb{F}(ccy)$$

A chain of CFS can achieve arbitrary fungability.





IV. Conclusion



Provably fairest market

Consider:

  • We accomodate any supply of arbitrarily small or large value.
  • We allow any currency, whether those of objective value xor subjective value.
  • We define currency as an arbitrarily fungible bundle of arbitrary energy and information.
  • We accomodate the entire region of objective value currencies possible (below, at and above the min value).
  • We create the desired (according to importance) sequence of servicing the demand.
  • We allow for infinite types of dynamics incl. traditional markets as special cases, set via simple parameters.

All these superlatives make this market model the most open possible.

Assuming liquidity, this market model thus provides the fairest valuation of any supply.

By changing the parameters, minimum $\underline{M}$ and importance $\mathcal{I}$, the seller can run a multi-dim optimisation to find the type of market that maximises it's value.



Provably fairest economy

An economy is a set of trades. The event of a bid getting serviced is a trade. If this market model provides the fairest valuation and with it the fairest trade, then the resulting economy is fairest economy possible.

Micro-economics teaches us that (specilization and) fair trading improves the value of all parties.



Maximum value $\Leftrightarrow$ Supply = time

If this paper is correct in that the described market model results in the fairest valuation, then it should be used for all markets. Especially the most valuable market: time

  • Everyone has time
  • Everyone knows that time is most valuable.

When supply=time, all currencies are per $\Delta T$. Current technology already allows $\Delta T \le 1 \text{ sec}$.

2i2i-whitepaper's People

Contributors

1m1-github avatar

Stargazers

 avatar  avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.