{"adoption": {"forks": 315, "observed_at": "2026-08-28T04:03:47.303495+00:00", "stars": 1153}, "canonical_url": "https://ross.abutalabs.com/products/bitquant", "card": {"archived": false, "artifact_type": "learning-resource", "description": "51bitquant Python数字货币量化交易视频 CCXT框架 爬取交易所数据 比特币量化交易 交易机器人51bitquant tradingbot cryptocurrency quantitative trading btc trading", "domain": ["fintech", "tutorials"], "enriched": true, "function": ["trading", "web-scraping", "http-client", "websocket", "developer-tools"], "health_score": 29, "homepage": "https://space.bilibili.com/401686908/video", "language": "Python", "license": "MIT", "license_family": "permissive", "maturity": "active", "member_repos": ["51bitquant/bitquant"], "name": "51bitquant/bitquant", "platform": ["python", "cli"], "pushed_at": "2025-04-10T23:58:13+00:00", "repo": "51bitquant/bitquant", "stars": 1153, "tags": ["ccxt", "binance", "quantitative-trading", "trading-bot", "grid-trading", "martingale-strategy", "algorithmic-trading", "backtesting", "crypto-exchange", "cryptocurrency", "automation", "linux"], "topics": ["51bitquant", "quantitative-finance", "trading-bot", "cryptocurrency", "python", "trading", "algorithmic-trading", "ccxt", "klines", "tradingview", "marketmaker", "trading-strategies", "high-frequency-trading", "vnpy", "gekko", "quant"], "urls": [], "use_cases": ["learn crypto quantitative trading with python", "build a bitcoin trading bot with ccxt", "fetch klines data from binance", "implement a grid trading strategy", "deploy a trading bot on a linux server", "learn martingale strategy for crypto"], "what_it_is": "Companion code repository for 51bitquant's YouTube/Bilibili video series on cryptocurrency quantitative trading in Python, using CCXT to fetch exchange data and build trading bots like grid and martingale strategies. It also links to paid courses and deployment guides for running bots on Linux servers.", "when_to_avoid": ["you need a production-grade, well-tested trading framework", "you want a maintained library with stable APIs rather than course material", "you need strategies other than grid/martingale without writing them yourself"], "when_to_choose": ["you want tutorial-style code to learn crypto trading bot development", "you follow the 51bitquant video courses and need the source code", "you want simple Python examples using CCXT"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/bitquant", "repo": "51bitquant/bitquant", "role": "main", "score": 30}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:03:47.303495+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T06:33:24.563336+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "2eaa653ee55c39b3105b83939c5a177059ddc5a2ef38d366e093c2f6ffb15d8d", "fetched_at": "2026-08-28T04:03:47.303495+00:00", "kind": "readme", "missing": false, "url": "https://github.com/51bitquant/bitquant"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:03:47.303495+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T06:33:24.563336+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "2eaa653ee55c39b3105b83939c5a177059ddc5a2ef38d366e093c2f6ffb15d8d", "fetched_at": "2026-08-28T04:03:47.303495+00:00", "kind": "readme", "missing": false, "url": "https://github.com/51bitquant/bitquant"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T06:33:24.563336+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "2eaa653ee55c39b3105b83939c5a177059ddc5a2ef38d366e093c2f6ffb15d8d", "fetched_at": "2026-08-28T04:03:47.303495+00:00", "kind": "readme", "missing": false, "url": "https://github.com/51bitquant/bitquant"}], "taxonomy_version": 1}, "health_score": {"inputs": ["days_since_push", "days_since_release", "archived"], "kind": "computed", "method": "health_v1"}, "homepage": {"kind": "observed", "observed_at": "2026-08-28T04:03:47.303495+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:03:47.303495+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:03:47.303495+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T06:33:24.563336+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "2eaa653ee55c39b3105b83939c5a177059ddc5a2ef38d366e093c2f6ffb15d8d", "fetched_at": "2026-08-28T04:03:47.303495+00:00", "kind": "readme", "missing": false, "url": "https://github.com/51bitquant/bitquant"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:03:47.303495+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:03:47.303495+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T06:33:24.563336+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "2eaa653ee55c39b3105b83939c5a177059ddc5a2ef38d366e093c2f6ffb15d8d", "fetched_at": "2026-08-28T04:03:47.303495+00:00", "kind": "readme", "missing": false, "url": "https://github.com/51bitquant/bitquant"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:03:47.303495+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:03:47.303495+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:03:47.303495+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T06:33:24.563336+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "2eaa653ee55c39b3105b83939c5a177059ddc5a2ef38d366e093c2f6ffb15d8d", "fetched_at": "2026-08-28T04:03:47.303495+00:00", "kind": "readme", "missing": false, "url": "https://github.com/51bitquant/bitquant"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:03:47.303495+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:03:47.303495+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T06:33:24.563336+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "2eaa653ee55c39b3105b83939c5a177059ddc5a2ef38d366e093c2f6ffb15d8d", "fetched_at": "2026-08-28T04:03:47.303495+00:00", "kind": "readme", "missing": false, "url": "https://github.com/51bitquant/bitquant"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T06:33:24.563336+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "2eaa653ee55c39b3105b83939c5a177059ddc5a2ef38d366e093c2f6ffb15d8d", "fetched_at": "2026-08-28T04:03:47.303495+00:00", "kind": "readme", "missing": false, "url": "https://github.com/51bitquant/bitquant"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T06:33:24.563336+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "2eaa653ee55c39b3105b83939c5a177059ddc5a2ef38d366e093c2f6ffb15d8d", "fetched_at": "2026-08-28T04:03:47.303495+00:00", "kind": "readme", "missing": false, "url": "https://github.com/51bitquant/bitquant"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T06:33:24.563336+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "2eaa653ee55c39b3105b83939c5a177059ddc5a2ef38d366e093c2f6ffb15d8d", "fetched_at": "2026-08-28T04:03:47.303495+00:00", "kind": "readme", "missing": false, "url": "https://github.com/51bitquant/bitquant"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 15, "longevity": 100, "rhythm": 8}, "computed_at": "2026-09-03T02:20:16.233290+00:00", "flags": [], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 2642, "days_push": 510, "days_rel": null, "gap_med": null, "n_releases_24m": 0}, "score": 30, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}