Bancor Protocol はトークンエコノミーを支える大発明となるか?(前編)

今年の6月に実施された Bancor の ICO は、わずか3時間で150万ドルを集めて話題となりました。しかし、肝心のプロジェクト内容が正しく理解されていることはまだ少なく、誤解も多いように思います。

この記事では、数学的な難しさを含む Bancor Protocol についてなるべく平易に解説し、その革新的な流動化メカニズム、BNT との関係性、および DEX や ETF としての可能性について理解を深めます。

トークンエコノミーとは何か

Bitcoin (BTC) や Litecoin (LTC) などの暗号通貨、あるいは Ethereum 上で発行された Golem の GNT や Augur の REP まで、これらは全てデジタルのトークンです。トークン (token) とは価値の証票であり媒体であり、その流通によってトークン毎に独自の経済圏を生み出します。

更に、種類の異なるトークン同士の交換(BTC ⇔ LTC の為替取引など)を通して、トークンの経済圏は相互に影響を与えるようになります。このようにして、様々なトークンが織り成す価値ネットワーク全体のことを、“Token Economy” や “Internet of Value” などと呼ぶのです。

過熱する ICO、乱立するトークン

ICO は、プロジェクトが独自トークンを売り出すことで資金を募る新しい資金調達手法ですが、現在、ベンチャーキャピタルからの資金調達額を上回る勢いで拡大しています。その熱狂ぶりは凄まじく、今や一週間に数十もの新規 ICO プロジェクトが実施されています。

急激に拡大する ICO

乱立に伴って課題や懸念も発生します。代表的な問題は投資詐欺やバブル化のような話ですが、この記事ではそれらの問題は扱いません。ここで考えたいのは、トークンが乱立することによって訪れる「流動性リスク」の問題です。

トークンの流動性リスク

流動性 (liquidity) とは、モノの換金のしやすさを意味する経済用語です。ある保有資産が「売りたい時に売れるかどうか」を表します。例えば、東証一部の人気銘柄の株式であれば、売り注文はすぐに約定するはずです。こういった状態を「流動性が高い」と表現します。

逆に、マイナーな会社の株式は取引量が少ないために、売りたい時に売れない(買い手が見つからない)リスクが生じます。これが流動性リスク (liquidity risk) です。そして、これは株式のような従来の証券に限らず、Ether (ETH) のようなデジタルトークンに対しても同じことがいえます。

「欲求の二重の一致」問題

モノの流動性について突き詰めて考えていくと、物々交換と貨幣の歴史に行き着きます。経済学を学んだことがある方は馴染みがあるかと思いますが、そこでは「欲求の二重の一致」というキーワードが出てきます。

欲求の二重の一致 (double coincidence of wants) とは、物々交換の難しさを表した言葉です。例えば、モノ A を持つ Alice とモノ B を持つ Bob が A と B を交換することを考えてみましょう。この取引が成立するためには、

  1. A を持つ Alice が、B を手に入れたいという欲求を持っている(そのために A を失ってもいいと思っている)
  2. B を持つ Bob が、A を手に入れたいという欲求を持っている(そのために B を失ってもいいと思っている)

という2つの特殊な欲求 (wants) が同時発生 (coincidence) しなければなりません。物々交換の根源的な難しさは、この「欲求の二重の一致」の状況が満たされる確率の低さにあります。

貨幣が解決すること/しないこと

歴史的には、貨幣は「欲求の二重の一致」問題を解くものとして生まれました。誰もが共通に価値を認め、あらゆる交換の媒体として使える基軸通貨さえあれば、取引の際に欲求が二重に一致する必要はなくなります。

つまり、A を売りたいと思ったら、A を欲しがっている人を探しさえすればいいのです。そのとき、自分がどんなモノを持っているか、相手がどんなモノを持っているかを考える必要はありません。貨幣が媒介します。

しかし当然ながら、少なくとも一重には欲求は一致しなければなりません。つまり、A を売りたいという Alice の欲求と、A を買いたいという Bob の欲求は、依然として同時に発生しなければならないのです。これが流動性リスクを生み出します。

トークンの流動性を維持するためには

価値の媒体であるトークンの種類が増えていくということは、上記の「欲求の一致」が困難になっていくということです。個人毎にトークンを発行するようなサービス(VALU など)では既に顕在化していますが、人間の数だけ存在するようなトークンは、流動性が明らかに低くなります。

例えば、上位一部の有名人のトークンは別ですが、誰も知らないような私の VALU なんかを買ってしまうと、いざ売ろうと思ったときに買い手が見つからずに売れないリスク(流動性リスク)が非常に高いわけです。

今後、ICO の盛り上がりによってトークンが 乱立していくと、この現象がトークンエコノミー全体に訪れることになります。「買ったはいいが売れないじゃないか!」と皆が一斉に思えば、全体が暴落してしまうかもしれません。Bancor Protocol は、まさにその課題を解決するために考案されたプロトコルです。

Bancor Protocol とは

Bancor(バンコール)という言葉の由来は、第二次大戦後にケインズが構想した幻の世界通貨 Bancor です。Bancor Protocol は、ケインズの Bancor とは別物ですが、思想的な影響を受けています。

Bancor Protocol はプロトコル、つまりルールに過ぎません。Bancor Protocol という名前のトークンが存在する訳ではなく、あるトークンが準拠し得る1つのルールセットです(ERC20 のようなもの)。

公式ページでは、Bancor Protocol について次のように説明されています。

The Bancor protocol enables built-in price discovery and a liquidity mechanism for tokens on smart contract blockchains. These “smart tokens” hold one or more other tokens in reserve and enable any party to instantly purchase or liquidate the smart token in exchange for any of its reserve tokens, directly through the smart token’s contract, at a continuously calculated price, according to a formula which balances buy and sell volumes.
Bancorプロトコルはスマートコントラクトブロックチェーン上のトークンに対し組み込み型の価格発見および流動性メカニズムをもたらします。これらの「スマートトークン」には1つまたは複数の他のトークンが準備されており、売買量のバランスを取る方程式により継続的に計算された価格で、直接スマートトークンの契約を通して、任意の当事者がその準備済みトークンのいずれかと引き換えにスマートトークンを即座に購入または清算することを可能にします。

これだけ読んでピンとくることは少ないと思います。順を追って考えていきましょう。

Bancor Protocol の流動化メカニズム

通常のトークンには「流動性リスク」があるという話をしました。Bancor Protocol は、トークンから流動性リスクを取り除く画期的なアイデアです。なぜそんなことが実現できるのでしょうか。

あなたがマイナーなトークン “MNR” を持っていたとして、これを売りたいと思ったとしましょう。売りたい(= 流動化させたい)ということは、つまり流動性の高い別のトークンと交換したいということです。ここでは、MNR を ETH に交換することを「売る」ことだとしましょう。

MNR を ETH に交換するためには、「ETH を持っていて MNR が欲しいと思っている人」を探さなければいけません。しかし、MNR はマイナーなトークンであるため、なかなか見つかりません。また、買い手が少ないが故に、安い値段で売るように吹っ掛けられてしまうかもしれません。

では、MNR を市場で売るのではなく、MNR の発行主体に引き取ってもらうのはどうでしょうか。通常の貨幣でいえば発行主体は中央銀行になります。例えば、日本では日本銀行が日本円を発行しているわけですが、これを米ドルに交換する必要に備えるために、日本銀行は一定の外貨準備金 (foreign reserve) 、つまり米ドルを保有しています。

MNR というトークンであれば、発行主体は銀行ではなく ICO を行ったプロジェクトになります。同じように、トークンを発行するプロジェクト側で一定量の ETH を準備 (reserve) しておけばいいのではないでしょうか。実は Bancor Protocol の基本的な考え方はまさにこの準備金なのですが、それだけでは問題が残ります。詳しく見ていきましょう。

Bancor Protocol の価格決定メカニズム

Bancor Protocol の画期的なところは、準備金 (reserve token) の考え方による流動化メカニズムだけでなく、その時点での価格を動的に計算する価格決定メカニズムが組み込まれている点にあります。

準備金の考え方だけで MNR の売りニーズに応えていくと、急激な売りが入った時に、用意していた準備金 (ETH) が枯渇する可能性があります。そうなるとその信頼性は暴落してしまいます。貨幣の世界でいえば、アメリカがドルから金への交換を停止したニクソンショックに当たります。

全ての ICO プロジェクトが、中央銀行が行っているような流通量の調整機能を担うことはとてもできません。そこで Bancor Protocol は、「トークン価格」と「総発行量」および「準備金の割合」が、常に適切にバランスするように動的に価格と供給量を調整するという考え方を取ります。

価格・発行量・準備高の関係式

Bancor Protocol のホワイトペーパーの中に、次の関係式が出てきます。

英語だと分かりづらいので日本語訳してみましょう。

つまり、ある瞬間のトークン価格 (Price) は、その時点でトークン発行者が保管している準備金の残高 (Balance) を、トークン総発行量 (Supply) と固定準備率 (CRR) で割ったものである、という定義式です。

このうち、Price, Balance, Supply は変数であり、CRR のみが定数になります。トークン総発行量 (Supply) が定数でなく変数である所がミソです。

CRR (Constant Reserve Ratio; 固定準備率) とは、トークンの時価総額の何%分の準備金を用意しておくかを表す数値で、0.0 ~ 1.0 の間の値として、トークン発行者が最初に設定して固定します。

例えば CRR = 0.2 だとすると、発行するトークンの時価総額 (Price × Supply) の 20% 分の価値を持つ準備金(例えば ETH)を、常に保管されている状態にするということです。

上の式を、

のように変換すると、その関係性が分かりやすいと思います。

トークンの売買によって総発行量が増減する

上で、「総発行量が変数である所がミソ」と書きました。通常の貨幣であれば、総発行量は基本的に一定です。しかし Bancor Protocol で発行されるスマートトークンでは、なんと売買される度に総発行量が変化するのです。以下、CRR = 0.2(準備率 20%)として考えてみましょう。

あなたがあるスマートトークンを買ったとすると、その際に支払った金額は、そのまま発行者の準備金残高に追加されます。そして、その分増えた準備金残高がトークン時価総額の 20% になるように、価格と総発行量が増加します。つまり購入はトークンの新規発行(鋳造)を意味します。

スマートトークンの購入

逆に売られた場合には、準備金残高からその対価が支払われ、準備金が減少します。そして同じく、新たな準備金残高が時価総額の 20% になるように、価格と総発行量が減少するのです。つまり売却は、その分のトークンを焼却処分 (Burn) をすることに他なりません。

スマートトークンの売却

スマートトークンの価格決定方程式

上述した価格・発行量・準備高の関係性が、売買数量に依らずに常に成り立つ、という条件から導かれる価格決定方程式が、ホワイトペーパーの後半に記載されている以下の式です。

S: トークン総発行量、R: 準備金残高、F: 固定準備率

上に出た関係式はシンプルだったのに、なぜこんな複雑な数式が出てきたのでしょうか。それは、準備金の変化に従って価格は連続的に変化するため、まとまった数量のトークンを売買したときの実効的な価格は、瞬間瞬間の価格を積分して求める必要があるからです。

この式の導出過程は、ホワイトペーパーのリンク先にあるので、興味がある人は計算してみてください。基本的な微積分の知識があれば追うことができると思います。

スマートトークンに取引所は不要

上述の価格方程式によって、ある瞬間のトークン価格は一意に定まります。そして為替取引はトークン発行者と直接行えます。つまり売りたい時に買い手を探す必要はなくなり、流動性リスクが取り除かれる訳です。

ここで勘の良い方は、スマートトークンには取引所は不要だということに気付いたかと思います。Bancor Protocol で発行されたスマートトークンは Ethereum 上に存在し、準備金 (reserve token) もスマートコントラクトのアドレスに保持されます。そして売買注文の度に、Solidity で記述された価格決定方程式に従って取引が自動で執行されます。

一方で、スマートトークンは取引所と相容れない訳でもありません。後述する BNT は Bancor Protocol に準拠した初めてのスマートトークンですが、従来の取引所にも上場しています。取引所では従来通り市場の力で価格が決定される訳ですが、Bancor Protocol 側で決定される価格と開きが発生すれば、裁定取引者がその価格差を埋めていきます。

BNT (Bancor Network Token) とは何か

BNT (Bancor Network Token) は、Bancor プロジェクトが公式に発行した Bancor Protocol に準拠する最初のスマートトークンです。Bancor は BNT によって ICO する形でプロジェクト資金を調達しました。

BNT は ETH を準備金 (reserve token) とし、CRR = 0.1(準備率 10%)で発行されたスマートトークンです。つまり、BNT の時価総額 (Market Cap) の 10% に当たる価値の ETH が、常に BNT のコントラクトアドレスに保持(リザーブ)されていることになります。

BNT は、今後発行されるスマートトークンの標準的な準備通貨として使われることを想定して作られましたが、Bancor Protocol に準拠したトークンを発行するために BNT が必須なわけではありません。BNT と同じように、ETH を準備金として独自のスマートトークンを発行してもいいのです。実際、BNT の存在意義に疑問を投げかける声も存在しますが、重要なのは、Bancor Protocol と BNT は切り離して考えられるということです。

準備金は早い者勝ちで枯渇する?

BNT の ICO 時に広がった誤解の1つに「準備金分の売りが入ればすぐに ETH が枯渇してしまうのではないか?」というものがありました。上で説明した通り、常に時価総額に CRR をかけた分の準備金が保持されるように調整されるので、枯渇することは(全ての BNT が売られない限り)ありません。売り圧力が買い圧力に勝れば、BNT の価格が下がるだけです。

「いや、実際に Bancor が保持していた ETH が枯渇したっていう話を聞いたけど?」と思った方は、おそらく Price Floor の話と混同されているかと思います。これは、Bancor の ICO において、当初予定していた 250,000 ETH よりも集めすぎてしまったため、余剰分の ETH を使って、初期レート (1 BNT = 0.01 ETH) での払い戻しに応じたというだけです。つまり Bancor Protocol 上の準備金 (reserve token) とは関係のない別の話です。

Bancor Protocol の可能性は未知数

ここまで、流動性リスクという課題を解決する Bancor Protocol について解説してきました。この新しいアイデアがトークンエコノミーを支え、経済学上の大発明となるのか、あるいは根本的な欠陥が見つかってしまうのかどうかは、まだ分かりません。

Bancor Protocol を採用して既に市場に流通しているトークンとしては BNT や STX がありますが、今のところ値動きに破綻があるようには見えません。果たしてスマートトークンの値動きと通常のトークンの値動きには、原理的な違いは発生し得るでしょうか。

Bancor の価格決定式に従うトークン価格の時間発展を、コンピューターシミュレーションしてみるなど、Bancor Protocol は学術的な研究対象としても面白いと思います。


長くなってしまったので、DEX(分散型取引所)および ETF(バスケット通貨)としての Bancor Protocol については、後編として次回に解説したいと思います。

Bancor Protocol において、2種類のトークンを CRR 0.5 ずつでリザーブすると DEX になり、複数のトークンの CRR を合計 1.0 になるようにリザーブすると ETF になります。お楽しみに。


追記

  1. 上記「スマートトークンの価格決定方程式」の式に誤りがあったため修正しました
  2. 「CRR → Weight」など、Bancor Protocol の Terminology(用語)が変更されました(→ 公式アナウンス)。呼び方が変わっただけであるため、本記事の内容は現在でもそのまま成立します