Tinyman AMM V2.0 プロトコル

Nov 25 2022
昨日、2023 年 1 月に登場する Tinyman AMM プロトコルの新しいバージョンを発表しました。このブログ投稿では、新しいプロトコルの概要と次のステップについて説明したいと思います。
Tinyman AMM v2.0 プロトコル

昨日、2023 年 1 月に登場する Tinyman AMM プロトコルの新しいバージョンを発表しました。このブログ投稿では、新しいプロトコルの概要と次のステップについて説明したいと思います。これらの詳細は、ユーザーとエコシステム プロジェクトが新しいプロトコルに慣れ、移行の準備をするための十分な時間を与えるために、ローンチの早い段階で提供しています。

2021 年 10 月に Tinyman AMM が発売されて以来、アルゴランド プロトコルには多くの改善が行われ、アプリケーションがより複雑で興味深いことを実行できるようになると同時に、安全性が向上し、いくつかの摩擦点が取り除かれました。過去 6 か月間、これらの改善を利用した Tinyman AMM の新しい実装の設計、構築、およびテストに取り組んできました。

この新しいプロトコルのハイライトは次のとおりです。

  • 償還の必要性を排除するための出力の動的計算
  • 柔軟な流動性の追加と削除
  • フラッシュローンとフラッシュスワップ
  • 動的料金設定
  • 完全な構成可能性と相互運用性
  • 追加の安全チェック
  • 契約書の読みやすさの向上

Tinyman AMM V2 はパーミッションレスです

Tinyman AMM V2 は不変 (アップグレード不可)

Tinyman AMM V2 には、アクティビティを一時停止したり、プールをドレインしたりするための管理者キーがありません

Tinyman AMM V2 は透過的でオープンソースです

Tinyman AMM V2 は監査済みです

Tinyman AMM V2 は依然として途方もなく高速で安価に使用できます

もう償還しない

過去 1 年間のアルゴランド プロトコルの最も重要な改善点の 1 つは、内部トランザクションの導入です。これらにより、コントラクトはプログラムでトランザクションを作成できます。これにより、Tinyman はスワップアウトプットを動的に計算し、完全なアウトプット量のトランザクションを発行できます。契約は、最低期待額が受け取られることを安全に保証します。

これにより、摩擦や混乱の主な原因が取り除かれ、すぐにユーザー エクスペリエンスが向上します。

アプリのオプトインはもう必要ありません

引き換えをサポートする必要がなくなったので、チェーン上にユーザーごとの状態を保存する必要もありません。これにより、Tinyman コントラクト アプリにオプトインする必要がなくなります。これにより、Tinyman ユーザーの最小バランス要件が解放され、別の摩擦の原因が取り除かれます。

アセットのオプトインは引き続き必要ですが、ユーザーが個別に署名する必要がないように、スワップやその他の操作でそれらをグループ化できるようになりました。これにより、プロセスが高速化され、スワップに必要な手順が削減されます。

より柔軟な流動性管理

プーラーになりたいユーザーの間で非常に一般的なパターンは、ある資産を別の資産に交換し、両方をプールに同額預けることであることに気付きました。このステップをプロトコル レベルで自動化する機能を追加したので、ユーザーは 1 回の操作で 1 つのプール資産のみを使用してプールに流動性を追加できます。また、柔軟であるため、ユーザーは各アセットで利用可能なものを追加でき、プールはバランスを取り、合計値に対して正しい量のプール トークンを発行します。

Tinyman v2 での柔軟な流動性管理

この手法を使用する場合、ユーザーはまだ両方の資産にさらされていることを理解することが重要です。暗黙的な内部スワップは、ユーザーの便宜のための機能です。この機能が小規模なプーラーに最適であることを理解することも重要です。そもそもバランスの取れたプールを作成するには、両方の資産にかなりの流動性を持つプーラーが必要です。

この機能により、LP トークン内のユーザーのすべての流動性が、誤った比率で流動性を供給したとしても、正しく計上されるようになります。これにより、ボラティリティが高い期間中の新しいプーラーの安全性が向上します。

このプロトコルは、1 つの資産のみで流動性を削除することもサポートするようになりました。これは上記のケースの逆で、選択された資産としてユーザーに資金を返す前に暗黙の内部スワップが発生します。

これら 2 つの機能により、一般的なフローが簡素化され、ユーザー エクスペリエンスが向上します。しかし、それらはまた、はるかに複雑な契約から契約への相互作用の基礎を築きます。

構成可能性と相互運用性

ここでも、最新のアルゴランド プロトコルの改善を利用して、完全に構成可能で相互運用可能な V2 プロトコルを設計しました。これは、Tinyman V2 トランザクションを他のトランザクションと同じアトミック グループ内に配置でき、Tinyman V2 を他のコントラクトから呼び出すことができることを意味します。

これにより、アトミック マルチホップ スワップ、指値注文、メタプールなどのプロトコル上に機能を構築することができます。これらの機能は、スワッパーのユーザー エクスペリエンスを向上させると同時に、Tinyman プールへのボリュームを増やし、プーラーにより多くの手数料を生み出すのに役立ちます。

フラッシュローンとスワップ

この構成可能性を利用する機能の 1 つがフラッシュ ローンです。これがプロトコルに組み込まれているため、ユーザーは同じトランザクション グループ内で返済する限り、プールから無担保ローンを取得できます。これは役に立たない機能のように思えるかもしれませんが、プロトコルの相互運用性と開発中のアルゴランド DeFi スペースのおかげで、1 つのブロック内で利益を得る機会がたくさんあります。これは複雑な機能であり、DeFi プロトコルと戦略の詳細な知識を持つユーザーのみが使用することを意図しているため、Web UI には含まれません。この機能を含めることは、富に関係なくすべての人に金融ツールを提供するという私たちのコア哲学によって推進されています。

フラッシュ スワップとローンは、プロトコルにとって (金銭的な意味で) リスクがなく、プーラーに追加の収入源を提供します。

調整可能な手数料

Tinyman AMM V1 には 30 ベーシス ポイントの固定スワップ料金があり、プーラーとプロトコルの間で 5:1 に分割されます。これはこれまでのところユーザーに十分なサービスを提供してきましたが、他の料金オプションの方が適している場合もあります。ペッグされた/安定した資産の場合、価格への影響が少ない低料金は、スワッパーに利益をもたらします。手数料の低下によるボリュームの増加も、プーラーに利益をもたらすはずです。V2 プロトコルでは、同じ資産ペアのさまざまな手数料レベルで複数のプールに流動性を断片化するのではなく、プールの手数料を時間の経過とともに調整できます。すべてのプールはデフォルト (V1 と同じ) で開始されますが、手数料率は、許可された範囲内で手数料設定者アカウントによって変更できます。

Tinyman v2 の調整可能な料金

ここでの意図は、手数料設定者が最初は Tinyman コア チームによって管理されるアカウントであり、手数料は安定した/固定されたペアに対してのみ調整されることです。後で、プーラーがプールの料金をまとめて決定できるようにする機能を導入する予定です。最終的には、Tinyman DAO が存在する場合は、すべての料金をそれによって管理できるようにする予定です。プロトコルはこの点で柔軟に設計されているため、料金の設定と徴収の責任をスマート コントラクトまたは外部アカウントに委任し、必要に応じて取り消すことができます。これにより、プロトコルの他の側面に影響を与えることなく、料金に関するルールとメカニズムを時間の経過とともに変更できます。手数料の変更に関するポリシーの詳細については、発売前にお知らせします。

より安全で透明なプロトコル

どのプロトコルにも、設計上の前提と固有の技術的制限があります。以前に V1 についてこれらを文書化し、ユーザーが予期しない方法でプロトコルを使用しないようにするためのセーフガードを UI に配置しました。Tinyman V2 では、さらに一歩進んで、これらのいくつかをプロトコル レベルで実施することができました。

Tinyman コミック Ch#1

プロトコルで保持する必要がある数学的/論理的不変条件が多数あります。Tinyman V2 では、これらはすべての操作の後に明示的にチェックされ、非常に予期しない動作が発生してもプールの値が失われないようにします。

プロトコルは、複数の独立した人々が簡単に読み、理解し、レビューできる場合にのみ安全です。その点を支援するために、私たちは多くの分野に取り組みました。

  • 読みやすいコントラクト ソース コード — 私たちは Algorand 用の新しい言語 Tealish を開発しました。これにより、読みやすい低レベルの Teal にコンパイルしながら、ロジックと意図を高レベルで明確に表現できます。Fergal Walsh (Tinyman CTO) は、 Decipher 2022で Tealish とそれが V2 でどのように使用されたかについて話します。
  • タイニーマンがティーリッシュを発明
  • 監査可能な監査 — プロトコルの仕様と契約は、さまざまな種類の問題を特定するために、複数のレベルで分析および監査されています。これには、仕様、Tealish ソース コード、および最終的に AVM で実行される生成された Teal コードの分析とモデリングが含まれます。私たちは、監査プロセスを通常よりも透明にするために、監査人と協力してきました。今後数週間以内に、レポートとすべてのサポート資料への参照とともに、これに関する別のブログ投稿を公開します。
  • Bug Bounty — Algorand Foundation および Immunefi と協力して、重大な問題に対して最大 250,000 米ドルの報奨金を提供するバグ報奨金プログラムを作成しました。このプログラムはすぐに有効になり、メインネットのローンチ後も引き続き有効です。
  • オープン ソースのパブリック コントラクトと仕様 — ソース コントラクト、生成された Teal、および最終的なバイトコードを、プロトコルの設計ドキュメントと仕様と共に公開しました。これにより、誰でもプロトコルの詳細を確認して、実装が期待どおりであることを確認できます。

何か問題が発生した場合に Tinyman が契約を一時停止するための大きな赤いボタンがない理由を定期的に尋ねられます。この問題は、1 月の不幸な事件の後、さらに提起されました。V2 を設計している間、私たちはこの質問について多くのことを考えました。一時停止機能を実装できますか? それはどのように機能しますか?誰がそれを制御できますか? それを呼び出す責任は誰にありますか?一時停止の後はどうなりますか?これについては、セキュリティの問題に関する今後の投稿でさらに詳しく説明しますが、最終的には V1 を設計したときと同じ結論に達しました。Tinyman と DeFi の基本的な価値を損なうことのない、安全で便利な一時停止メカニズムはありません。アップグレード可能な契約のない一時停止メカニズムはあまり役に立ちません。アップグレード可能なコントラクトにより、Tinyman チーム (または攻撃者) がプロトコルのルールを変更し、流動性を管理できる可能性があります。DeFi の主な目的は、そのような可能性を回避することです。

あなたの資金、あなたの決定

私たちはチームとして新しいプロトコルに興奮しており、その周りに新しい改善された UI を構築することに忙しくしています。ユーザーは新しいプロトコルで全体的にはるかに優れたエクスペリエンスを得ることができると信じていますが、最終的にはプロトコルのユーザーとしてのあなたの決定です. V1 に資金を投入したとき、V1 コントラクトのルールとロジックに拘束されることに同意したことになります。設計上、流動性を V2 に移植するためにこれらのルールを変更することはできません。それはあなたの決定でなければなりません。V1 のすべてのプーラーは、プロトコルの詳細と独立した監査レポートを読み、流動性を V2 に移行するかどうかを自分で決定することをお勧めします。V1 プロトコルはアルゴランド メインネット上で永遠に存続し、当面の間、Web UI で既存のプールをサポートし続けます。

Tinyman が AMM v2 プロトコルを発表

次のステップ

V2 について私たちと同じくらい興奮していることを願っています。ただし、これはほんの始まりにすぎません。また、V2 プロトコルでリリースされる多くの UI 改善があります。これらについては、今後数週間にわたってブログ投稿で詳しく説明します。リリース後、V2 プロトコルが提供する基盤に基づいて、追加の改善と機能が構築されます。

また、ローンチ前に移行計画に関する追加の投稿を行う予定です。

それまでの間、プロトコルの詳細をよく理解し、コミュニティ スペースで質問することをお勧めします。

参考文献

V2 プロトコルのドキュメントと仕様

V2 コントラクト リポジトリ

V2 契約監査レポート

ティーリッシュ レポ

Immunefi Bug Bounty Program (リンク追加予定)