概要
Siftlyは、暗号資産市場のリアルタイムデータ取得・解析を効率化するPythonベースのツールです。複数の取引所API、チェーンデータプロバイダーから大量のマーケットデータを並行処理で抽出し、トレーダーやアナリスト、研究者が迅速に市場分析を行える環境を実現します。仮想通貨市場の24時間運用という特性上、遅延ゼロのデータパイプラインが求められる背景で開発されました。
主な機能
-
マルチ取引所データ統合:Binance、Coinbase、Kraken、OKEx等の主要取引所APIを統一インターフェースで接続し、現物・先物・オプション市場のティックデータから日足OHLCVまで多層的に取得できます。
-
高速パイプライン処理:asyncio・マルチプロセッシングを活用した非同期並行処理により、数百銘柄の同時データ取得時も遅延を最小化し、秒単位での更新を実現します。
-
ブロックチェーンデータ統合:Ethereum・Solana・Polygon等の複数チェーンからオンチェーンメトリクス(ウォレット活動量、スマートコントラクト呼び出し、NFTボリューム等)を直接抽出し、市場動向との相関分析を可能にします。
-
フレキシブルなデータストレージ:取得したデータはPostgreSQL・InfluxDB・Parquetフォーマットで永続化でき、時系列分析や機械学習パイプラインへのシームレスな連携が実現します。
-
カスタマイズ可能なデータフィルタリング:銘柄、時間足、トレード種別、ボリュームしきい値等の条件を柔軟に指定し、関心対象のデータセットを動的に抽出・整形できます。
-
リアルタイムアラート機能:価格変動、ボリュームスパイク、オンチェーン異常等のトリガー条件を設定すれば、Webhook・メール・Slack通知で即座に通知されます。
-
バックテスト統合:取得したヒストリカルデータを基にアルゴリズム検証を実行でき、戦略開発サイクルを大幅に短縮します。
技術スタック
- プログラミング言語:Python 3.9以上
- 非同期処理:asyncio、aiohttp、concurrent.futures
- データ処理:pandas、NumPy、Polars
- 時系列DB対応:InfluxDB、TimescaleDB、Prometheus
- リレーショナルDB:PostgreSQL、MySQL
- ブロックチェーンRPC:Alchemy、Infura、QuickNode
- キャッシング・メッセージキュー:Redis、RabbitMQ
- ロギング・監視:Python logging、Prometheus メトリクス
- コンテナ化:Docker、Docker Compose
- 依存パッケージマネージャー:pip、Poetry
導入方法
前提条件:Python 3.9以上がインストール済みであることを確認し、取引所APIキーまたはブロックチェーンRPCエンドポイントを準備します。
GitHubからリポジトリをクローンし、依存パッケージをインストール:
git clone https://github.com/viperrcrypto/Siftly.git
cd Siftly
pip install -r requirements.txt
または Poetry を使用する場合:
poetry install
設定ファイル(config.yaml)をプロジェクトディレクトリに作成し、取引所APIキーやデータベース接続情報を記述:
exchanges:
binance:
api_key: YOUR_API_KEY
api_secret: YOUR_API_SECRET
coinbase:
api_key: YOUR_API_KEY
database:
host: localhost
port: 5432
name: siftly_db
user: postgres
blockchain_rpc:
ethereum: https://eth-mainnet.g.alchemy.com/v2/YOUR_KEY
基本的なデータ取得スクリプト例:
from siftly import SiftlyClient
client = SiftlyClient(config_path='config.yaml')
# Binanceからビットコイン・イーサリアムの1時間足を取得
data = await client.fetch_ohlcv(
exchange='binance',
symbols=['BTC/USDT', 'ETH/USDT'],
timeframe='1h',
limit=100
)
# データベースに保存
await client.store_data(data)
初期データキャッシュの構築には数分かかります。詳細な設定やAPIドキュメントは公式リポジトリのREADMEを参照してください。
競合比較
| 項目 | Siftly | CCXT | Freqtrade |
|---|---|---|---|
| 主な用途 | データ抽出・分析 | 取引所連携 | 自動売買ボット |
| 対応取引所数 | 20+(主要取引所) | 100+ | 25+(限定) |
| オンチェーンデータ | ネイティブ統合 | 未対応 | 別途拡張が必要 |
| 並行処理 | asyncio標準装備 | 制限あり | 順次処理 |
| バックテスト | 統合・高速 | 別途ライブラリ必要 | 内蔵・詳細統計 |
| 学習曲線 | 中程度(データ中心) | 低い(シンプル) | 高い(複雑な設定) |
Siftlyはデータ抽出・分析にフォーカスした設計で、複数データソースの統合が強み。CCXTは取引所連携の汎用ライブラリとして軽量で広く使われ、Freqtradeは自動売買の完全機能化を狙ったボット向けフレームワーク。Siftlyはオンチェーンメトリクスを統合できる数少ないツールで、市場分析とマクロトレーディング戦略に適している。
こんな人におすすめ
-
クォンティティブトレーダー・アルゴリズム開発者:マルチ取引所・マルチチェーンのデータを統一インターフェースで高速取得でき、バックテスト環階との直接連携により迅速な戦略検証が実現します。
-
暗号資産アナリスト・リサーチャー:オンチェーンメトリクスとマーケットデータの統合分析により、従来型のテクニカル分析を補完する深層的な市場洞察を導き出せます。
-
取引所・ウォレットサービスの運営チーム:リアルタイムデータパイプラインとカスタマイズ可能なフィルタリング機能で、ユーザー向けダッシュボードやレポート機能の構築基盤として活用できます。
-
金融機関のデジタル資産部門:エンタープライズグレードのデータ信頼性、監査ログ、複数RPCエンドポイント対応により、規制対応が求められる機関投資家レベルの運用に適応します。
-
マシンラーニングエンジニア:構造化されたティックデータ・OHLCV・オンチェーンシグナルをParquetやDuckDB経由で直接学習パイプラインに供給でき、予測モデル開発の前処理時間を削減できます。