arbitragelab

View on PyPIReverse Dependencies (0)

1.0.0 arbitragelab-1.0.0-py3-none-any.whl

Wheel Details

Project: arbitragelab
Version: 1.0.0
Filename: arbitragelab-1.0.0-py3-none-any.whl
Download: [link]
Size: 266954
MD5: 4515ae833f6f03eaba08f8d18be522b7
SHA256: 14a43d3f3bae5f0c9c078b07635416efde31e55e44b8ea96219fe6fd45884902
Uploaded: 2024-05-12 12:33:21 +0000

dist-info

METADATA

Metadata-Version: 2.1
Name: arbitragelab
Version: 1.0.0
Summary: 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).
Author: Hudson and Thames Quantitative Research
Author-Email: opensource[at]hudsonthames.org
Home-Page: https://www.hudsonthames.org/
Project-Url: Apprenticeship Program, https://hudsonthames.org/apprenticeship-program/
Project-Url: Bug Reports, https://github.com/hudson-and-thames/arbitragelab/issues
Project-Url: Blog, https://hudsonthames.org/blog/
Project-Url: Documentation, https://hudson-and-thames-arbitragelab.readthedocs-hosted.com/en/latest/index.html
Project-Url: Repository, https://github.com/hudson-and-thames/arbitragelab
License: BSD-3-Clause
Keywords: arbitrage,finance,investment,education,trading
Classifier: Development Status :: 5 - Production/Stable
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Education
Classifier: Intended Audience :: Financial and Insurance Industry
Classifier: Intended Audience :: Science/Research
Classifier: License :: OSI Approved :: BSD License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Topic :: Office/Business :: Financial :: Investment
Classifier: Topic :: Scientific/Engineering
Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
Requires-Python: >=3.8,<4.0
Requires-Dist: POT (==0.9.0)
Requires-Dist: arch (==5.5.0)
Requires-Dist: cvxpy (==1.4.3); python_version >= "3.10" and python_version < "4"
Requires-Dist: 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"
Requires-Dist: cython (==0.29.28)
Requires-Dist: dash (==2.10.2)
Requires-Dist: jupyter-dash (<1.0.0,>=0.2.0)
Requires-Dist: keras (==2.13.1); python_version >= "3.8" and python_version < "3.12"
Requires-Dist: keras (==3.0.0); python_version >= "3.12" and python_version < "4"
Requires-Dist: lxml (<5.0.0,>=4.9.1)
Requires-Dist: matplotlib (==3.7.1); python_version >= "3.8" and python_version < "3.12"
Requires-Dist: matplotlib (==3.8.4); python_version >= "3.12" and python_version < "4"
Requires-Dist: mpmath (==1.2.1)
Requires-Dist: networkx (<2.6,>=2.2)
Requires-Dist: numpy (==1.23.5); python_version >= "3.8" and python_version < "3.12"
Requires-Dist: numpy (==1.26.4); python_version >= "3.12" and python_version < "4"
Requires-Dist: pandas (==2.0.0)
Requires-Dist: pmdarima (==2.0.4)
Requires-Dist: protobuf (>=3.20.3)
Requires-Dist: pyvinecopulib (==0.6.5)
Requires-Dist: pyzmq (==26.0.0)
Requires-Dist: requests_html (==0.10.0)
Requires-Dist: scikit-learn (==1.1.3); python_version >= "3.8" and python_version < "3.12"
Requires-Dist: scikit-learn (==1.3.0); python_version >= "3.12" and python_version < "4"
Requires-Dist: scipy (==1.10.1); python_version >= "3.8" and python_version < "3.9"
Requires-Dist: scipy (==1.11.0); python_version >= "3.9" and python_version < "3.10"
Requires-Dist: scipy (==1.12.0); python_version >= "3.10" and python_version < "4"
Requires-Dist: seaborn (==0.12.2)
Requires-Dist: statsmodels (==0.14.0)
Requires-Dist: 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"
Requires-Dist: 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"
Requires-Dist: 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"
Requires-Dist: tensorflow-macos (==2.13.0); sys_platform == "darwin" and platform_machine == "arm64" and python_version >= "3.8" and python_version < "3.12"
Requires-Dist: tensorflow-macos (==2.16.1); sys_platform == "darwin" and platform_machine == "x86_64" and python_version >= "3.12" and python_version < "4"
Requires-Dist: werkzeug (==2.2.3)
Requires-Dist: wrapt (==1.14.0); python_version >= "3.8" and python_version < "3.12"
Requires-Dist: yahoo-fin (==0.8.9.1)
Requires-Dist: yfinance (==0.2.37)
Provides-Extra: docs
Provides-Extra: tests
Description-Content-Type: text/markdown
[Description omitted; length: 4242 characters]

WHEEL

Wheel-Version: 1.0
Generator: poetry-core 1.9.0
Root-Is-Purelib: true
Tag: py3-none-any

RECORD

Path Digest Size
arbitragelab/__init__.py sha256=P8Vq2NtetknrdL993hYiz9_BW93b2gOULiLyzU07Rv0 995
arbitragelab/codependence/__init__.py sha256=IdnZzWEBMo9Y8wf0t3BYXkVyWGg1gMYHdG7QpjMGnIs 724
arbitragelab/codependence/codependence_matrix.py sha256=niTxLXLCp8V79Jk0hNPsq18qbfmfj0di0FHsUP3DJ8o 6421
arbitragelab/codependence/correlation.py sha256=oelIylqed6xzP5UdAe6vrh6NgJvleJdLLvc7He-2yaI 6142
arbitragelab/codependence/gnpr_distance.py sha256=eJ8X8-GUSnOl5qdQqT79oO9pIyrFfsHd1ndKwJQiSNA 5078
arbitragelab/codependence/information.py sha256=HckyAb_66fDzChxFWGtWIeQf1VBzBbpDjSBy-eUccXg 6829
arbitragelab/codependence/optimal_transport.py sha256=lfFyoJ42txwMuQrp6_K4UdXyy0hp83S3mJgiuG9-61c 9833
arbitragelab/cointegration_approach/__init__.py sha256=LjSSaWhdsfSRzPfGrjlqOBOaXjOJfIklZv-a_yZR1FM 695
arbitragelab/cointegration_approach/base.py sha256=hsMZOCetyYIQVR4Un9ZQrUf75EJDqrQGMAGqFBAjnxM 2279
arbitragelab/cointegration_approach/coint_sim.py sha256=aXRBxZPbil24mayXVJx8iyGdEnB9UFe79wjlHRtCxhU 16315
arbitragelab/cointegration_approach/engle_granger.py sha256=pFFHYAijOi9bhuuNhol_hBAwBq7BWUECtTlQUBaqiBA 4636
arbitragelab/cointegration_approach/johansen.py sha256=DtoZAHQhG08JOI1nbPd2D1Iuup5HqehoUatJCaTpo9o 5638
arbitragelab/cointegration_approach/minimum_profit.py sha256=19ZpI0sk4vyscgxqWSYuZ6eEPyeu1ukSRYvJqaHaJKs 15552
arbitragelab/cointegration_approach/multi_coint.py sha256=0llt_-HhtEbpuUlhNxw96nuN8lL3WdtTNganaVQRWBk 10642
arbitragelab/cointegration_approach/sparse_mr_portfolio.py sha256=veMy8iwYApZpOqWvzHfAIjmRDr-bxTdJCHLWHdKf-bs 32578
arbitragelab/cointegration_approach/utils.py sha256=k-6jnOnssvD6LPLkStjStAF1-bNWRPRHEh6Tundaz6U 1224
arbitragelab/copula_approach/__init__.py sha256=CoewAQLkXwbZ8GxkPVVXcI-GWFBTy7EYVDQV9fGW5fE 688
arbitragelab/copula_approach/archimedean/__init__.py sha256=ra2GU3lePc25Pj3CbTCW6N534pyQ6miFcOVzpewXgfI 437
arbitragelab/copula_approach/archimedean/clayton.py sha256=q3lQa8m8Px5LvJBqszYXqi2gKOdOp0ZbEAmt8kO_U1U 5148
arbitragelab/copula_approach/archimedean/frank.py sha256=D4evLDE6Dzj6fCS9VKdPgVUn8jFDtFS6A4DefuYMhYw 5826
arbitragelab/copula_approach/archimedean/gumbel.py sha256=OqQwvruh5n4yyBTMbDN8pILjTpq1KqlotG1xd16tBwU 6083
arbitragelab/copula_approach/archimedean/joe.py sha256=YnK5DC6kJDJOgE38WMf2gVRT43j8JBK6YoJ4KyHAY04 6263
arbitragelab/copula_approach/archimedean/n13.py sha256=b14t0ewdYz_sTYM-Y_wwqfvGMs75s-Nc1c9CHi7fVvc 6744
arbitragelab/copula_approach/archimedean/n14.py sha256=u-QAOy3ncMzGiN6vX6CXgwmoqKB8Uu22M2sdsQdI0Zg 6278
arbitragelab/copula_approach/base.py sha256=QXZp4W1Wxnd8u5GacMCmYx_Tq78JMV1KYouSjJ2v0HU 12645
arbitragelab/copula_approach/copula_calculation.py sha256=rqghLIuct5GWLLHxw6JV-ad5Iscl7iQULWRMlj6gjNg 12607
arbitragelab/copula_approach/elliptical/__init__.py sha256=HFyx6THbirSqdFGPXKVCwznMhhaC0UNhwD5uLJF6-ds 223
arbitragelab/copula_approach/elliptical/gaussian.py sha256=Kdns2g2zafy9fhqpmF6YZdLfYuHGkb83iiLy6pnaimQ 5845
arbitragelab/copula_approach/elliptical/student.py sha256=Ti8bDbb6fyWB2dyZAPSdFBLJ3emd6hvzKz0n5gfGQGU 10563
arbitragelab/copula_approach/mixed_copulas/__init__.py sha256=CpbLJPRBvwTbk3ihRpwh1MsoOv_V7KO1M4lTZMJbWAI 279
arbitragelab/copula_approach/mixed_copulas/base.py sha256=Qr3reFUBcFxqUm_h7M-ZCvY0VLGvJoRf5p_rX9lwUps 6067
arbitragelab/copula_approach/mixed_copulas/cfg_mix_copula.py sha256=OL4Zsk4EQUmnWgdvLEYbIhIrQss-bcoY8Znp8-76g04 19031
arbitragelab/copula_approach/mixed_copulas/ctg_mix_copula.py sha256=fh6ax18Ix0XBIUolMQRHf2Q7z8cVjdX-B9FjXWRBWqs 25070
arbitragelab/copula_approach/pairs_selection.py sha256=FPNQhbCBgaCO21vmaVR1bikHm8s-lrc4SqaB1I4FQGA 9419
arbitragelab/copula_approach/vine_copula_partner_selection.py sha256=t1WicQBIpqKrxLcE2fOtCdHasa4rusvcoL2KGZybHkI 14438
arbitragelab/copula_approach/vine_copula_partner_selection_utils.py sha256=SSh1M0Eb0jR8_FkCA4dOdVfNFiEzC-oNRdFg0o4iN_s 9622
arbitragelab/copula_approach/vinecop_generate.py sha256=GMl7ly2MkZfRZO0aT041SZ_qMIRnX2jhU74QBJo30kU 18301
arbitragelab/copula_approach/vinecop_strategy.py sha256=jduFtkhjgoLGLRNXiOzSw0w3yysxyvBpE_aSnaanGFk 15912
arbitragelab/distance_approach/__init__.py sha256=sGuFsYPcFCkt1qNzprat2isaFyBw8qhtQdahT8fupKg 248
arbitragelab/distance_approach/basic_distance_approach.py sha256=9G4QKstXCdDsG7FayaSzAa4U9bwNSrIm9FH7NUwxiNo 25418
arbitragelab/distance_approach/pearson_distance_approach.py sha256=esiQRVvjIj8hm3pAvW__22n_1zIppYCP82TIIc1ro7Y 16186
arbitragelab/hedge_ratios/__init__.py sha256=SeEuJB4YJuyVSo1n0uY9MK7hSNB0khAqLQFS4_Wqfes 526
arbitragelab/hedge_ratios/adf_optimal.py sha256=lpj84amHRU4GxnvqXgb_spNYXTeHDOrGKRKI0UuTWJA 2126
arbitragelab/hedge_ratios/box_tiao.py sha256=rkUEtxmCpLiyUQXMWjHb6CaBdto-JhanmkXflAkDqjQ 2790
arbitragelab/hedge_ratios/half_life.py sha256=ElwnsFkhrxgmXdbAao6MMtxS-kaNBAw6QeSTGSd3HI0 2028
arbitragelab/hedge_ratios/johansen.py sha256=D4ZOm058e0gOKrQjTTXa2TrnavwojaNUtjjoc4OHXyA 1381
arbitragelab/hedge_ratios/linear.py sha256=FcbTB-uXL0IhSuYOvUwZlIUALnDNsLvn9rQvKKGTTa8 3576
arbitragelab/hedge_ratios/spread_construction.py sha256=B7In2f2ol0ntMJYnElULLc6VX-vsv5GmWUZmxSEeAQo 1273
arbitragelab/ml_approach/__init__.py sha256=zdE1q9hyNxx8iZ8rIOZAf9g73r6opm7QXATv9DvF6lc 558
arbitragelab/ml_approach/feature_expander.py sha256=ptp5CVO6Oloasedtzm-OrV8BVwaZiqTsWuMmyyWlXF4 5216
arbitragelab/ml_approach/filters.py sha256=Eqt5VaPGXv7SWFQ09GF4YDOg3qeQMmqDqmIEyU3YfSQ 14724
arbitragelab/ml_approach/neural_networks.py sha256=QoYlAQpNjazIz2wKBYeEPlWUfgN2I3CuOa10G77NEPE 9255
arbitragelab/ml_approach/optics_dbscan_pairs_clustering.py sha256=setXLyCusMBxvi80Qa1VMwIcE9_0BOJlisU_Kqx-AI4 14518
arbitragelab/ml_approach/regressor_committee.py sha256=qPox-W9VwkLL9A_joTUzm4g4GNPVh75ks_L_hozLGCA 4958
arbitragelab/ml_approach/tar.py sha256=TmBfl3UJRXXyQXljE8a1wrAFoheLVhN4NQDgegGsiWE 3644
arbitragelab/optimal_mean_reversion/__init__.py sha256=hUSzSsg3U-rADQaoiw5wVet_M7ZvdTp2WGUaoyCcbuM 377
arbitragelab/optimal_mean_reversion/cir_model.py sha256=W1ax_D2ez5tl-MZ3yt28rJyBpwjfOTMX44jhpsU1QkY 18204
arbitragelab/optimal_mean_reversion/heat_potentials.py sha256=fuPzXSHG-1fbbD5eDNRxRTNmJh0Ugp8LKdGHjPQLmLI 19615
arbitragelab/optimal_mean_reversion/ou_model.py sha256=w1KJ4tTNGsYAnwTWhqFHbe8EgfAJM7qO1c_wNLPziGY 36866
arbitragelab/optimal_mean_reversion/xou_model.py sha256=0IYkrcusm4HYtCA91EuQTu_K0EQ28rvzFdjrETb1Dfc 20134
arbitragelab/other_approaches/__init__.py sha256=fTsIrZ91DAd5nKATjhk640QAyR1llH6ba6U9CZ2-mGs 215
arbitragelab/other_approaches/kalman_filter.py sha256=yr_PDFzIym8bFTZbZ6UtBD1jcPYKW4pBK1ydauSQ0u4 7777
arbitragelab/other_approaches/pca_approach.py sha256=kH98v8gwq64XAsrKiKP8oWIBOsgzIA5RafRexPj_XOM 17717
arbitragelab/spread_selection/__init__.py sha256=gFxC5jhpEtQOk_UcYFL7-8Uf2lruQ5yfYLqlwYVru98 173
arbitragelab/spread_selection/base.py sha256=pZQ9h1o7wbDgvPbbbjtj53sQ7ddkIVrKOaB1wmry2Ic 1839
arbitragelab/spread_selection/cointegration.py sha256=Gu_G44Pgc3WzHIrqTtE9JeMk8iDNeW2b-a2VWYiDDeU 12513
arbitragelab/stochastic_control_approach/__init__.py sha256=Rh6FKcZUEFIrJqgQSnSkMvmngWVfuNHaEEDPrJcjm84 374
arbitragelab/stochastic_control_approach/optimal_convergence.py sha256=sFk1UBYeCZrVQBjpAYlWRvLoPJYFXPpmBhvY05f3FKQ 18786
arbitragelab/stochastic_control_approach/ou_model_jurek.py sha256=xGbB8UHtY6qU_KpdyUCYhnCtRVaGllh8agHDwqVsgV4 43842
arbitragelab/stochastic_control_approach/ou_model_mudchanatongsuk.py sha256=0D09BQ7xSiupEOHbXOPBPTV3ZD6uGWGH0MIHn2iZVrM 12140
arbitragelab/tearsheet/__init__.py sha256=ipCAGtGA_7Lif-2LtV3OjyvIuSMU6Z6swuwUa1cwkAE 116
arbitragelab/tearsheet/tearsheet.py sha256=ZoXziD2az1o2-BgcbaPPUdmi7axRcdVCEhSA9rUcSvo 137795
arbitragelab/time_series_approach/__init__.py sha256=6dzBOjvelyS4fPPOjvpEw2hNEhhFEw5s0Hxrpmzv-nQ 486
arbitragelab/time_series_approach/arima_predict.py sha256=0ZPY2CDH0cstayVbD3KmpFZWlmQEz42GMS9MoAEt_kQ 7657
arbitragelab/time_series_approach/h_strategy.py sha256=H6aMOX7TyY3BZJzHmgpyABUvpR_Wgct8K_6YhwFmOZQ 13866
arbitragelab/time_series_approach/ou_optimal_threshold.py sha256=UDCN2JYVj-S1FwamBst-WQxn86z4pZqNuP_C2KraAkI 8550
arbitragelab/time_series_approach/ou_optimal_threshold_bertram.py sha256=9P4mVWQA3d9VSulRfUqz_xlfQ-6aAzjwvA7g6Nrxo0U 12500
arbitragelab/time_series_approach/ou_optimal_threshold_zeng.py sha256=mIalWKoxVceSpMWzkFnDlFPDC5L8mIxem_MQwuNo684 16888
arbitragelab/time_series_approach/quantile_time_series.py sha256=xJYR-rmpmIgTPvYbG_SyUl173I0mDoKCg-1PnicJ4G4 4580
arbitragelab/time_series_approach/regime_switching_arbitrage_rule.py sha256=oZY5qnp2HlGxy0QJjdzRbmso5UxpDYEQXlYpWLREHG8 12932
arbitragelab/trading/__init__.py sha256=TyXLt3wPqxK3ZQ7yc5AL9oT8ZBMz6_OjUqKnHvtWz3E 412
arbitragelab/trading/basic_copula.py sha256=S5qVpPUejJkT8BkkMUzPe9ld6vvrQ5X-WkgktdWiJvw 9942
arbitragelab/trading/copula_strategy_mpi.py sha256=ztQrT77WWqO6TTaq3ulnlhPdM8XmUO4dshbTivlFIgE 28586
arbitragelab/trading/minimum_profit.py sha256=ho0v76nzzDJ1o7h4jtsmenbocNsKDx69aP7QqPwiNKI 5343
arbitragelab/trading/multi_coint.py sha256=OcE6Qn4t2U3dwUEpk3RnxVDs3AgyONcuAJcqS7XktWY 7079
arbitragelab/trading/z_score.py sha256=RB-3_Djx2u_TJ8ABt6gbb-ASdQ21TQepEr8Fy0J9yyw 6455
arbitragelab/util/__init__.py sha256=HUhbNefkU805i7dW0n3I799dnn5-DIpJoMmjJMmFmGk 406
arbitragelab/util/base_futures_roller.py sha256=m-HDVF5hOxa-QpIBLo-kLJlQ6qMbPYkVm191J7pRjoU 10027
arbitragelab/util/data_cursor.py sha256=26ZiLu47DxeX-tjIsL9qVhoEFTTE1UIN_1YZ4wNbQS8 43806
arbitragelab/util/data_importer.py sha256=wyqsqlIWwAvjzY5V4Tfz-1EqZtX2fvwXKX6mqyYZcOM 5216
arbitragelab/util/generate_dataset.py sha256=iX_TRWpRKp2YAE8bDjDrWkwqk3fIXpDmOHAmDIZ9kS8 1825
arbitragelab/util/indexed_highlight.py sha256=wlEXqw5fDMe4EXx5_gIp9MQbzz99vLabCbZM-m7qpAk 1405
arbitragelab/util/rollers.py sha256=NrXHIdWifGyEoSjt28UgcSficZRCEYPw2EO1YWUhxug 11505
arbitragelab/util/spread_modeling_helper.py sha256=ltFl6MkODv9OcfXap-sJI7QTWep-Jfr6QguWpaequls 16970
arbitragelab-1.0.0.dist-info/LICENSE.txt sha256=8vCNWackX-2DoYFOtVHkbAB3IkqT6r-QcRbj6SggU58 1536
arbitragelab-1.0.0.dist-info/METADATA sha256=0eBikulgPjXq8E-8r0o19SO4GQttcF3jppOAAfWOEqE 9130
arbitragelab-1.0.0.dist-info/WHEEL sha256=sP946D7jFCHeNz5Iq4fL4Lu-PrWrFsgfLXbbkciIZwg 88
arbitragelab-1.0.0.dist-info/RECORD