マーケットメイクに関する前回の記事従来の金融市場におけるマーケットメイクの仕組みと戦略について考察しました。これらの洞察に基づいて、この記事では、Uniswap V3 のコンテキストでインテリジェントな流動性プロビジョニングのための革新的なフレームワークを紹介します。以前の調査で述べたように、私たちの目標は、特にインテリジェント流動性プロビジョニング フレームワークの開発を通じて、分散型金融 ( DeFi)における市場力学と流動性管理についての理解を広げることでした。
州:州は、資産価格、取引量、その他の関連変数を含む現在の市場状況を表します。
アクション:アクションは、流動性配分の調整、ポートフォリオのリバランスなど、流動性プロバイダーによる決定に対応します。
報酬: 報酬は、流動性プロバイダーの目的関数、好み、制約に基づいて結果の望ましさを定量化します。報酬は、望ましい結果 (例: 高収益) の場合はプラスになり、望ましくない結果 (例: 高リスクまたはパフォーマンスの低下) の場合はマイナスになります。
目的関数:目的関数は、流動性プロバイダーの望ましい結果を表します。これは、収益の最大化、リスクの最小化、または 2 つの間の特定のトレードオフの達成などの要素の組み合わせです。制約には、流動性の割り当て、資本の利用、リスク許容レベル、または流動性プロバイダーによって定義されたその他の制限に関する制限が含まれる場合があります。
ABM にはさまざまなエージェント タイプが含まれており、それぞれが Uniswap V3 エコシステム内の特定の役割を表します。 2 つの主要なエージェントは流動性プロバイダー エージェントとスワッパー エージェントで、Uniswap プールと対話してそれぞれ流動性を提供し、トークン スワップを実行します。これらのエージェントの動作は、 agents_policies.py
ファイルで定義されたポリシーによって決定され、エージェントの動作が現実世界の戦略や市場状況と確実に一致するようにします。
流動性プロバイダー エージェント:このエージェントは、Uniswap プールに流動性を追加および削除します。市場の現在の状態とエージェントの好みに基づいて行動を指示する一連のポリシーに従います。
スワッパー エージェント:スワッパー エージェントは、価格の不一致と裁定取引の機会を利用して、Uniswap プール内でトークン スワップを実行します。その行動は、取引手数料とスリッページを考慮して、取引の潜在的な収益性を評価するポリシーによって導かれます。
netlist.py
ファイルは ABM の中心であり、エージェントが相互に対話する方法、および Uniswap プールと対話する方法を構成します。これは、エージェント、ポリシー、シミュレーション環境の間の関係を定義します。
SimEngine.py
、 SimStateBase.py
、およびSimStrategyBase.py
モジュールは、シミュレーションを実行するための基本要素を提供します。 SimEngine はシミュレーションを調整し、時間の流れとエージェントのアクションの実行を管理します。 SimStateBase はシミュレーションの現在の状態を維持し、エージェントの保有状況、プールの状態、その他の関連変数に関するデータを保存します。 SimStrategyBase は、シミュレーション全体を通じてエージェントの動作をガイドする包括的な戦略を定義します。
RL エージェントはカスタム環境DiscreteSimpleEnv
で動作し、Uniswap モデルおよびエージェントベースのモデルと連携して DeFi 市場をシミュレートします。この環境により、エージェントと Uniswap プールとの対話が容易になり、流動性を追加および削除したり、アクションの結果を観察したりできるようになります。 RL エージェントは Uniswap モデルおよび ABM と対話して、Uniswap V3 での現実世界の流動性プロビジョニングをシミュレートします。 ABM で定義されたポリシーとシミュレーション構成を使用して、流動性の追加または削除をもたらすアクションを選択し、現実的な相互作用を保証します。
状態空間:環境の状態空間には、現在の価格、流動性、手数料の伸びなどのさまざまな市場指標が含まれます。これらのパラメーターは正規化され、各タイムステップでエージェントに提供されます。
アクション スペース:エージェントのアクション スペースは、Uniswap プールに流動性を追加するための価格境界を表す連続値で構成されます。これらのアクションは Uniswap プールとの対話に変換され、環境の状態に影響を与えます。
報酬関数:報酬関数は、RL エージェントをトレーニングするために重要です。手数料収入、一時的な損失、ポートフォリオの価値、潜在的なペナルティが考慮され、エージェントの学習プロセスを導くためのスカラー報酬信号が提供されます。
RL エージェントは、Uniswap モデルとエージェントベースのモデルを活用して、Uniswap V3 での現実世界の流動性プロビジョニングをシミュレートします。これは、 DiscreteSimpleEnv
を通じて Uniswap プールと対話し、流動性の追加または削除をもたらすアクションを実行します。エージェントのポリシーとシミュレーション構成は ABM コンポーネントで定義され、現実的で一貫した動的環境が保証されます。
エージェントのトレーニングと評価:エージェントは、それぞれが異なる市場シナリオ (異なるプール) を表す一連のエピソードにわたってトレーニングされます。エージェントのパフォーマンスは、流動性プロビジョニングに関連するリスクを最小限に抑えながら収益を最大化する能力に基づいて評価されます。 Intelligent Liquidity Provisioning Framework の有効性は、強化学習 (RL) エージェントのパフォーマンスの評価を通じて評価されます。
環境セットアップ: RL エージェントを評価するために、基本環境DiscreteSimpleEnvEval
を拡張する特殊な評価環境DiscreteSimpleEnv
をセットアップしました。この環境は、エージェント ポリシーの評価用に調整されています。
ベースライン エージェント:評価設定では、RL エージェントのパフォーマンスをベースライン エージェントのパフォーマンスと比較します。ベースライン エージェントのアクションは、流動性プールの現在の状態に依存するベースライン ポリシーによって決定されます。このエージェントは、RL エージェントのパフォーマンスを評価するための基準点を提供することを目的としています。
トレーニング
評価
プールの同期:現在、フレームワークはプールのリアルタイム同期を完全にキャプチャしていないため、実際の Uniswap V3 ダイナミクスのモデリングに不一致が生じる可能性があります。今後の作業は、プール同期を改善するためのメカニズムを組み込むことに焦点を当て、場合によってはティック/位置データやイベントを利用して現実性を高める必要があります。
単純なエージェント ポリシー:現在のフレームワークで採用されているエージェント ポリシーは、比較的単純で単純です。より正確なシミュレーションを実現するには、今後の反復では、より包括的なエージェント ポリシーを定義することを目指す必要があります。これらのポリシーは、ノイズトレーダー、情報に基づいたトレーダー、個人流動性プロバイダー、機関流動性プロバイダーなど、さまざまなタイプの Uniswap エージェントをモデル化できます。あるいは、履歴プール データに基づいてトレーニングされた統計モデルを使用して、より現実的な動作をエージェント ポリシーに通知することもできます。
希薄な観察スペース:エージェントに提供される観察スペースには、プールの状態に関する包括的な情報が不足しています。意思決定機能を向上させるために、将来の機能強化には、エージェントがプールのステータスをより包括的に理解できるように設計された機能とともに、ティックと位置のデータが含まれる必要があります。
制限されたアクションスペース:エージェントのアクションスペースは現在制限されており、流動性の量が固定され、価格範囲の制限が制限されています。アクションスペースを拡大して流動性供給の柔軟性を高め、ステップごとに複数のポジションを考慮することで、シミュレーションの忠実度を高めることができます。
同期プール:ティック/位置データまたはイベントを使用してプールを同期するメカニズムを実装し、Uniswap V3 環境でより現実的なダイナミクスを作成します。
ハイパーパラメータ調整:アクター/クリティック ネットワーク アーキテクチャ、アルファ、ベータ、タウ、バッチ サイズ、ステップ、エピソード、スケーリング パラメーター (報酬、アクション、観察空間)
包括的なエージェント ポリシー:さまざまな Uniswap エージェントを正確にモデル化する、または履歴プール データでトレーニングされた統計モデルを利用してエージェントの動作を通知する、より高度な分析ポリシーを定義します。
有益な観察スペース:ティックと位置のデータを含めることで観察スペースを強化し、エージェントにプールの状態の包括的なビューを提供する機能を設計します。
改善された報酬関数:より効果的なエージェント トレーニングにつながる、より広範囲の要因を考慮した改善された報酬関数を開発します。
複数のポジション:各タイムステップで固定予算を持つ 1 つのポジションの代わりに、エージェントがシミュレーションの開始時に一度予算を割り当てられ、後続のステップでこの予算を最適に使用する方法を学習する、より包括的なメカニズムを実装します。
ベースライン ポリシー: RL エージェントのパフォーマンスを評価するための、より包括的なベースライン ポリシーを定義します。
ハイパーパラメータ調整:トレーニング パフォーマンスを向上させるために、強化学習エージェントのハイパーパラメータをさらに調整および最適化します。
他の RL エージェントの実験: Proximal Policy Optimization (PPO) や Soft Actor-Critic (SAC) などの代替 RL エージェント モデルを調査し、特定のシナリオで利点があるかどうかを判断します。
マルチエージェント RL (MARL):マルチエージェント強化学習技術の応用を調査します。これは、複数の流動性プロバイダーとスワッパー間の相互作用をモデル化するのに有益です。
オンライン学習:エージェントが変化する市場状況にリアルタイムで適応できるようにするオンライン学習戦略を実装し、より動的で適応性のある流動性プロビジョニング ソリューションを提供します。