nahrek/polyledger
Resumable Polymarket indexer: CLOB market metadata plus on-chain trades from Polygon, in one DuckDB file you can query with SQL
解決する課題
PolyLedgerは、Polymarketの市場メタデータとオンチェーン取引データを収集および整理するために設計された、再開可能なインデクサーです。Polymarket CLOBやGamma API、および生のPolygonブロックチェーンログから断片化されたデータを手動で集約する問題を解決し、履歴分析のための統一されたクエリ可能なデータベースを提供します。
仕組み
このツールは、Envio HyperSyncを介してPolygonネットワークからOrderFilledイベントをストリーミングし、CLOB APIから市場メタデータを取得します。これらのデータストリームを処理し、単一のDuckDBファイルに書き込みます。信頼性を確保するために、アトミックチェックポイント(行とブロックカーソルを1つのトランザクションでコミットする)と冪等な書き込みを使用し、実行が中断されて再起動された場合のデータ重複を防ぎます。
対象者
複雑なデータベースサーバーを管理することなく、Polymarketの取引と市場詳細の構造化されたSQLクエリ可能な履歴を必要とするデータアナリスト、研究者、およびトレーダー向けに構築されています。
ハイライト
- DuckDBバックエンド: 単一ファイルで効率的なストレージ、圧縮、SQL結合を実現するサーバーレス列指向データベースを使用します。
- 再開可能な同期: 組み込みのチェックポイントにより、インデクサーは中断後に停止した正確な位置から再開できます。
- 複数世代のサポート: 異なるコントラクト世代からのV1およびV2
OrderFilledイベントレイアウトをデコードします。 - スキーマ検証: Pydanticモデルを採用し、上流APIの変更がサイレントなデータ破損ではなく即時のエラーをトリガーするようにします。
- ギャップリカバリ: 欠落しているトークンIDを自動的にフラグ付けし、Gamma APIを使用してバックフィルします。
- Parquetエクスポート: pandas、polars、Sparkなどのツールで使用するために、すべてのテーブルをParquetファイルに簡単にエクスポートできます。
関連
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト