{"package":"arbitragelab","ecosystem":"pypi","latest_version":"1.0.0","description":"ArbitrageLab is a collection of algorithms from the best academic journals and graduate-level textbooks, which focuses on the branch of statistical arbitrage known as pairs trading. We have extended the implementations to include the latest methods that trade a portfolio of n-assets (mean-reverting portfolios).","license":"BSD-3-Clause","license_risk":"permissive","commercial_use_notes":"Permissive: commercial closed-source use OK; preserve the copyright notice.","homepage":"https://www.hudsonthames.org/","repository":"https://github.com/hudson-and-thames/arbitragelab","downloads_weekly":0,"health":{"score":35,"risk":"critical","breakdown":{"maintenance":5,"popularity":0,"security":25,"maturity":3,"community":2},"deprecated":false,"max_score":100},"vulnerabilities":{"count":0,"critical":0,"high":0,"medium":0,"low":0,"details":[]},"versions":{"latest":"1.0.0","total_count":2,"recent":["0.9.1","1.0.0"]},"metadata":{"deprecated":false,"deprecated_message":null,"maintainers_count":1,"first_published":null,"last_published":"2024-05-12T12:33:21.000250Z","dependencies_count":38,"dependencies":["POT==0.9.0","arch==5.5.0","werkzeug==2.2.3","yahoo-fin==0.8.9.1","yfinance==0.2.37","cython==0.29.28","dash==2.10.2","mpmath==1.2.1","pandas==2.0.0","pmdarima==2.0.4","pyvinecopulib==0.6.5","requests_html==0.10.0","pyzmq==26.0.0","seaborn==0.12.2","statsmodels==0.14.0","lxml<5.0.0,>=4.9.1","protobuf>=3.20.3","networkx<2.6,>=2.2","jupyter-dash<1.0.0,>=0.2.0","numpy==1.23.5; python_version >= \"3.8\" and python_version < \"3.12\"","numpy==1.26.4; python_version >= \"3.12\" and python_version < \"4\"","matplotlib==3.7.1; python_version >= \"3.8\" and python_version < \"3.12\"","matplotlib==3.8.4; python_version >= \"3.12\" and python_version < \"4\"","scikit-learn==1.1.3; python_version >= \"3.8\" and python_version < \"3.12\"","scikit-learn==1.3.0; python_version >= \"3.12\" and python_version < \"4\"","scipy==1.10.1; python_version >= \"3.8\" and python_version < \"3.9\"","scipy==1.11.0; python_version >= \"3.9\" and python_version < \"3.10\"","scipy==1.12.0; python_version >= \"3.10\" and python_version < \"4\"","tensorflow-macos==2.13.0; sys_platform == \"darwin\" and platform_machine == \"arm64\" and python_version >= \"3.8\" and python_version < \"3.12\"","tensorflow-macos==2.16.1; sys_platform == \"darwin\" and platform_machine == \"x86_64\" and python_version >= \"3.12\" and python_version < \"4\"","tensorflow==2.13.0; sys_platform != \"darwin\" and python_version >= \"3.8\" and python_version < \"3.12\" or platform_machine != \"arm64\" and python_version >= \"3.8\" and python_version < \"3.12\"","tensorflow==2.16.1; sys_platform != \"darwin\" and python_version >= \"3.12\" and python_version < \"4\" or platform_machine != \"x86_64\" and python_version >= \"3.12\" and python_version < \"4\"","tensorflow-io-gcs-filesystem==0.34.0; sys_platform != \"darwin\" and python_version >= \"3.8\" and python_version < \"3.12\" or platform_machine != \"arm64\" and python_version >= \"3.8\" and python_version < \"3.12\"","keras==2.13.1; python_version >= \"3.8\" and python_version < \"3.12\"","keras==3.0.0; python_version >= \"3.12\" and python_version < \"4\"","wrapt==1.14.0; python_version >= \"3.8\" and python_version < \"3.12\"","cvxpy==1.4.3; sys_platform != \"darwin\" and python_version >= \"3.8\" and python_version < \"3.10\" or platform_machine != \"arm64\" and python_version >= \"3.8\" and python_version < \"3.10\"","cvxpy==1.4.3; python_version >= \"3.10\" and python_version < \"4\""]},"github_stats":null,"bundle":null,"typescript":null,"known_issues":{"bugs_count":0,"bugs_severity":{},"status_breakdown":{},"link":null,"scope":"none"},"historical_compromise":null,"recommendation":{"action":"use_with_caution","issues":["Moderate health score (35/100) — verify manually"],"use_version":"1.0.0","version_hint":null,"summary":"arbitragelab@1.0.0 low health (35/100) — consider alternatives"},"version_scoped":null,"_meta":{"endpoint":"check","tier":"full","philosophy":"DepScope is free. Use the cheapest endpoint that answers your real question.","cheaper_alternatives":[{"endpoint":"/api/exists/pypi/arbitragelab","tokens_estimated":12,"use_when":"you only need to know if the package exists (hallucination guard)"},{"endpoint":"/api/health/pypi/arbitragelab","tokens_estimated":80,"use_when":"you only need a 0-100 score for go/no-go (>=70 = safe)"},{"endpoint":"/api/prompt/pypi/arbitragelab","tokens_estimated":280,"use_when":"you want a plain-text LLM-friendly brief instead of JSON"},{"endpoint":"POST /api/check_bulk","tokens_estimated":60,"use_when":"you have 5+ packages to check; sends one round-trip instead of N"}],"docs":"https://depscope.dev/integrate","hint_bulk":"You've called /api/check 30 times in 60s. Save bandwidth + tokens with POST /api/check_bulk (1 round-trip for N pkgs)."},"requested_version":null,"_cache":"miss","_response_ms":774,"_powered_by":"depscope.dev — free package intelligence for AI agents","typosquat":{"is_suspected":false},"maintainer_trust":{"available":false},"malicious":{"is_malicious":false},"scorecard":{"available":false},"quality":{"available":false},"version_history_summary":{"total_versions":2,"first_release_age_days":null,"last_release_days_ago":721,"avg_days_between_releases":null,"release_velocity":"stale"}}