{"adoption": {"forks": 906, "observed_at": "2026-08-28T04:05:53.997203+00:00", "stars": 1917}, "canonical_url": "https://ross.abutalabs.com/products/py4fi", "card": {"archived": false, "artifact_type": "learning-resource", "description": "Python for Finance (O'Reilly)", "domain": ["fintech", "data-science", "education"], "enriched": true, "function": ["data-science", "analytics", "trading"], "health_score": 20, "homepage": null, "language": "Jupyter Notebook", "license": null, "license_family": "other", "maturity": "maintenance", "member_repos": ["yhilpisch/py4fi"], "name": "yhilpisch/py4fi", "platform": ["python", "cross-platform"], "pushed_at": "2023-10-25T10:13:53+00:00", "repo": "yhilpisch/py4fi", "stars": 1917, "tags": ["finance", "jupyter-notebooks", "quantitative-finance", "book-companion-code", "algorithmic-trading"], "topics": [], "urls": [], "use_cases": ["learn python for finance", "analyze financial data with pandas", "quantitative finance tutorials", "learn algorithmic trading in python", "financial data analysis notebooks", "study numpy and pandas for finance"], "what_it_is": "Companion repository of Python code and Jupyter Notebooks for the O'Reilly book 'Python for Finance' by Yves Hilpisch. It provides educational material for analyzing financial data with Python, including NumPy, pandas, and financial analytics examples.", "when_to_avoid": ["you need a maintained production finance library rather than book code", "you rely on live Yahoo/Google Finance data APIs, which the book's code no longer uses", "you need Python 2.7 legacy code, which is unmaintained"], "when_to_choose": ["you are reading or studying the Python for Finance book", "you want worked Jupyter notebook examples of financial analytics in Python", "you want offline CSV-based financial datasets to avoid unstable third-party APIs"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/py4fi", "repo": "yhilpisch/py4fi", "role": "main", "score": 32}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:05:53.997203+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T03:10:09.654817+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "4edddad6dc80203f37f34e17d990ed3934c07eb01570d0a3d54af1962f161979", "fetched_at": "2026-08-28T04:05:53.997203+00:00", "kind": "readme", "missing": false, "url": "https://github.com/yhilpisch/py4fi"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:05:53.997203+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T03:10:09.654817+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "4edddad6dc80203f37f34e17d990ed3934c07eb01570d0a3d54af1962f161979", "fetched_at": "2026-08-28T04:05:53.997203+00:00", "kind": "readme", "missing": false, "url": "https://github.com/yhilpisch/py4fi"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T03:10:09.654817+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "4edddad6dc80203f37f34e17d990ed3934c07eb01570d0a3d54af1962f161979", "fetched_at": "2026-08-28T04:05:53.997203+00:00", "kind": "readme", "missing": false, "url": "https://github.com/yhilpisch/py4fi"}], "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:05:53.997203+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:05:53.997203+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:05:53.997203+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T03:10:09.654817+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "4edddad6dc80203f37f34e17d990ed3934c07eb01570d0a3d54af1962f161979", "fetched_at": "2026-08-28T04:05:53.997203+00:00", "kind": "readme", "missing": false, "url": "https://github.com/yhilpisch/py4fi"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:05:53.997203+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:05:53.997203+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T03:10:09.654817+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "4edddad6dc80203f37f34e17d990ed3934c07eb01570d0a3d54af1962f161979", "fetched_at": "2026-08-28T04:05:53.997203+00:00", "kind": "readme", "missing": false, "url": "https://github.com/yhilpisch/py4fi"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:05:53.997203+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:05:53.997203+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:05:53.997203+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T03:10:09.654817+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "4edddad6dc80203f37f34e17d990ed3934c07eb01570d0a3d54af1962f161979", "fetched_at": "2026-08-28T04:05:53.997203+00:00", "kind": "readme", "missing": false, "url": "https://github.com/yhilpisch/py4fi"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:05:53.997203+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:05:53.997203+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T03:10:09.654817+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "4edddad6dc80203f37f34e17d990ed3934c07eb01570d0a3d54af1962f161979", "fetched_at": "2026-08-28T04:05:53.997203+00:00", "kind": "readme", "missing": false, "url": "https://github.com/yhilpisch/py4fi"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T03:10:09.654817+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "4edddad6dc80203f37f34e17d990ed3934c07eb01570d0a3d54af1962f161979", "fetched_at": "2026-08-28T04:05:53.997203+00:00", "kind": "readme", "missing": false, "url": "https://github.com/yhilpisch/py4fi"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T03:10:09.654817+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "4edddad6dc80203f37f34e17d990ed3934c07eb01570d0a3d54af1962f161979", "fetched_at": "2026-08-28T04:05:53.997203+00:00", "kind": "readme", "missing": false, "url": "https://github.com/yhilpisch/py4fi"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T03:10:09.654817+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "4edddad6dc80203f37f34e17d990ed3934c07eb01570d0a3d54af1962f161979", "fetched_at": "2026-08-28T04:05:53.997203+00:00", "kind": "readme", "missing": false, "url": "https://github.com/yhilpisch/py4fi"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 0, "longevity": 100, "rhythm": 35}, "computed_at": "2026-09-02T17:46:02.011165+00:00", "flags": ["no_releases", "no_license"], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 4279, "days_push": 1043, "days_rel": null, "gap_med": null, "n_releases_24m": 0}, "score": 32, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}