arbitragelab

View on PyPIReverse Dependencies (0)

0.9.1 arbitragelab-0.9.1-py3-none-any.whl

Wheel Details

Project: arbitragelab
Version: 0.9.1
Filename: arbitragelab-0.9.1-py3-none-any.whl
Download: [link]
Size: 267936
MD5: 318972c8d3552f8bab84ee8f1db71160
SHA256: cfd8db9d3b7b7981332fb475ffb5eb182a79b0f4cef71932ee37ff8bad59c1c0
Uploaded: 2024-04-15 19:00:34 +0000

dist-info

METADATA

Metadata-Version: 2.1
Name: arbitragelab
Version: 0.9.1
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: Documentation, https://hudson-and-thames-arbitragelab.readthedocs-hosted.com/en/latest/index.html
Project-Url: Bug Reports, https://github.com/hudson-and-thames/arbitragelab/issues
Project-Url: Source, https://github.com/hudson-and-thames/arbitragelab
Project-Url: Blog, https://hudsonthames.org/blog/
Project-Url: Apprenticeship Program, https://hudsonthames.org/apprenticeship-program/
Keywords: arbitrage,finance,investment,education,trading
Classifier: Development Status :: 5 - Production/Stable
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Education
Classifier: Intended Audience :: Science/Research
Classifier: Intended Audience :: Financial and Insurance Industry
Classifier: License :: OSI Approved :: BSD License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3.8
Classifier: Topic :: Scientific/Engineering
Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
Classifier: Topic :: Office/Business :: Financial :: Investment
Platform: any
Requires-Python: ~=3.8
Requires-Dist: POT (==0.9.1)
Requires-Dist: arch (==5.5.0)
Requires-Dist: cvxpy (==1.3.1)
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.12.0)
Requires-Dist: lxml (>=4.9.1)
Requires-Dist: matplotlib (==3.7.1)
Requires-Dist: mpmath (==1.2.1)
Requires-Dist: networkx (<2.6,>=2.2)
Requires-Dist: numpy (==1.23.5)
Requires-Dist: pandas (==2.0.0)
Requires-Dist: pmdarima (==2.0.3)
Requires-Dist: protobuf (>=3.20.3)
Requires-Dist: pyvinecopulib (==0.5.5)
Requires-Dist: requests-html (==0.10.0)
Requires-Dist: scikit-learn (==1.1.3)
Requires-Dist: scipy (<2.0.0,>=1.2.0)
Requires-Dist: scs (==3.2.0)
Requires-Dist: seaborn (==0.12.2)
Requires-Dist: statsmodels (==0.14.0)
Requires-Dist: werkzeug (==2.2.3)
Requires-Dist: yahoo-fin (==0.8.9.1)
Requires-Dist: yfinance (==0.2.24)
Requires-Dist: tensorflow (==2.12.0); sys_platform != "darwin" or platform_machine != "arm64"
Requires-Dist: tensorflow-macos (==2.12.0); sys_platform == "darwin" and platform_machine == "arm64"
Description-Content-Type: text/markdown
License-File: LICENSE.txt
[Description omitted; length: 4064 characters]

WHEEL

Wheel-Version: 1.0
Generator: bdist_wheel (0.41.2)
Root-Is-Purelib: true
Tag: py3-none-any

RECORD

Path Digest Size
arbitragelab/__init__.py sha256=B6V5ssCD9-nLVnepplcNzjhCaiRJ33WxRmYFk0HOu_s 969
arbitragelab/codependence/__init__.py sha256=_cF6Ciyf5AM9YO_mMI04RnTbCXate0m2q8Uej5or5FM 735
arbitragelab/codependence/codependence_matrix.py sha256=WrdnFYMg5m_MW3I8ow7HFMnseNxSAiLYpAnXjrthtU4 6511
arbitragelab/codependence/correlation.py sha256=Wazaj2EWh8BN4iP0OH_cfgq4B3uRZFEwFSfVVWrfikE 6312
arbitragelab/codependence/gnpr_distance.py sha256=B3SWWC-Ee_DkOpFKATv7Y-2bUjVbbtSugaavo5MNq-4 5201
arbitragelab/codependence/information.py sha256=E9SfUx_AIxQxKF_4P5huYwxm1LmUSiPoECEFB4o-PSk 6978
arbitragelab/codependence/optimal_transport.py sha256=OyLuGws_rmOiPY_lsdlVPkAdPs247t7B7IUYUo_9v5s 10007
arbitragelab/cointegration_approach/__init__.py sha256=t0lB_5gOaf_jx1JOTg7LsKw4Md88BdZ-3wwUkmbxOnI 706
arbitragelab/cointegration_approach/base.py sha256=2gq7NgdZh8B6SdJCB4e7YSh3Q0WaUf71l-kLR70r8WQ 2328
arbitragelab/cointegration_approach/coint_sim.py sha256=J3MHiIThAWUTGJxQ30zIYCq4h4wdgLD9eLm8lxuhs5Y 16679
arbitragelab/cointegration_approach/engle_granger.py sha256=qSaoov4z8G6JDqLx9pKn7R-iL4UXsLNUF32K1fKLsX4 4741
arbitragelab/cointegration_approach/johansen.py sha256=M7IsDwI89MiN2EGrhomt_RU0BU8jZeglEOgoi2RwMzQ 5744
arbitragelab/cointegration_approach/minimum_profit.py sha256=SMy5pYKVwlC0zgUGJq3uGfsuwuMYbfYqX8--LroetIQ 15838
arbitragelab/cointegration_approach/multi_coint.py sha256=Ut6Rr5I7dZxPgWLvRL3IouGBxCQZe10eWe3pxzpJ9Aw 10865
arbitragelab/cointegration_approach/sparse_mr_portfolio.py sha256=g7yEVX-vvyi8tB9_uXqL0wwqH62WCLLr24xEQNzizWI 33262
arbitragelab/cointegration_approach/utils.py sha256=v6woWPkh3d59X04tA3LsdiSk2iYrWRUHfQZ1wTPLuwI 1267
arbitragelab/copula_approach/__init__.py sha256=cWag3emVgusd-apgZSS7BIv7R48YhtMRn24ZbJpWHy8 701
arbitragelab/copula_approach/base.py sha256=0g4MuEvOiaDsJmEipSc5cbXMou7wHcYUxIpcO9liL10 12992
arbitragelab/copula_approach/copula_calculation.py sha256=OCPFsTLQ0Isp3n3mMKhkgVNMtUo59Hhn0EZevm8eJyM 12883
arbitragelab/copula_approach/pairs_selection.py sha256=WracrMU7DfYUw2zcL00-2cyT9_Gn6vrI1D038erFSTI 9631
arbitragelab/copula_approach/vine_copula_partner_selection.py sha256=ObBZYbYNAW3BXalgtQxfDuS4kgyGuVLQQKM8m_GW7ks 14714
arbitragelab/copula_approach/vine_copula_partner_selection_utils.py sha256=A8NDCPZ1qq2UBOZAA_uEMN8KI1pkmIf10T5PGpcNnUY 9871
arbitragelab/copula_approach/vinecop_generate.py sha256=HEh4cEJrFiZYRo0tJpwS0kpI2s1Yo9A2NsihsCZwZZc 18681
arbitragelab/copula_approach/vinecop_strategy.py sha256=yYWgnrZkOTpT0wc5R4NSTWNKyNDK8Pf5a1FjwrzQysU 16205
arbitragelab/copula_approach/archimedean/__init__.py sha256=uUVkMTPt2g3si4ZxYqhZiQ9c6XbjmWepC3HnsdCel9k 447
arbitragelab/copula_approach/archimedean/clayton.py sha256=PqeO4Y4kOinFV8VPCoDGzkEXv9iokuHmPFwN0L08FiU 5307
arbitragelab/copula_approach/archimedean/frank.py sha256=hhaXlXlAE9Ny7oigOpjZOOlF73LJPpMMuJMCJ0I8d_g 6008
arbitragelab/copula_approach/archimedean/gumbel.py sha256=O5ZjEYEJKSmlB5WiBknreNw22rMe16XdbeZOvbkD1n4 6263
arbitragelab/copula_approach/archimedean/joe.py sha256=ZtlzNxSCnUGejLHNlhnsyCyW96-VjQD2zNzuvxDgJKY 6416
arbitragelab/copula_approach/archimedean/n13.py sha256=G4tnMHbKRTXJACpcBgMJfhXvhCjFlVluLAxTg8m02Is 6912
arbitragelab/copula_approach/archimedean/n14.py sha256=nYvIyzIfm0TsDJxoi3y16t8CNw8BXyHPbSR_esgMq8I 6462
arbitragelab/copula_approach/elliptical/__init__.py sha256=9W0QTCSksTcjFARZEUAkH4DxDBfVtskplAIubdM00FY 229
arbitragelab/copula_approach/elliptical/gaussian.py sha256=J0at9Cw9U_mjWQck3-mbHN_wFURFFpaN683tSk3Rn_Q 6026
arbitragelab/copula_approach/elliptical/student.py sha256=X-__aHxt70rsmMwXVKmklxe1QwFhB6s516-KAcZaFN0 10856
arbitragelab/copula_approach/mixed_copulas/__init__.py sha256=npZETkxZ-EM_d5BPtW0rg2l0zvNRtzMQ8yh4G2HXv9w 286
arbitragelab/copula_approach/mixed_copulas/base.py sha256=aho8GIXwbsf9XQLY_MZOuR6M-uVDslW_67HO0b3Dbjg 6228
arbitragelab/copula_approach/mixed_copulas/cfg_mix_copula.py sha256=-YN__gJ0AaNi_iET8j5_zooa26GL0TTMYeogIWfuZ60 19349
arbitragelab/copula_approach/mixed_copulas/ctg_mix_copula.py sha256=WA2rOocDBC3Sdrk_pDXI-L_hqAUlim90pGP6fSTTW8w 25487
arbitragelab/distance_approach/__init__.py sha256=7Zq1BfQr72du3QxWkwsuHnFSFlR3_bUn-J_Ebcn9Bls 253
arbitragelab/distance_approach/basic_distance_approach.py sha256=bE1JltJ2ylESGUjPfchkYkovN01zKq39RVDPGboKIH4 25942
arbitragelab/distance_approach/pearson_distance_approach.py sha256=PA7LjiCRqe9BbNYw0g4h0e-M7PbU3_PNWJCP9YQUC2U 16545
arbitragelab/hedge_ratios/__init__.py sha256=oytE5LQo7sVv3ZKwmqD6MYw3Pwq2qPT1ztV7Vaad3Ac 536
arbitragelab/hedge_ratios/adf_optimal.py sha256=IJ6qIawmPzcLLenVtZjMi-8ehtJjOoVrKTKeQplPf-c 2183
arbitragelab/hedge_ratios/box_tiao.py sha256=BnrllLjEEucag9RwcxY-1lTqLuZ8A0fZGNZvfSVKWL4 2864
arbitragelab/hedge_ratios/half_life.py sha256=igRDdrctCOm1nTxsKiABx6snbCNKd0p00wBGt0o_wAc 2081
arbitragelab/hedge_ratios/johansen.py sha256=8ui0PY-4GvhWc8dq7KjdaiiJd7Op4BTkr653CvJOhu0 1420
arbitragelab/hedge_ratios/linear.py sha256=xFj1s0glV1q521kkuLIn5mN2Hr46w9hqOeAP-1l9P-8 3674
arbitragelab/hedge_ratios/spread_construction.py sha256=oBCcdtr5jXXBaiJpBfhduckemVL0X9YivxZBPwTBOLI 1301
arbitragelab/ml_approach/__init__.py sha256=3BNWcdAoJrUcrQ4ghET8W1AqjnmoAypwpEw61xcGuqM 568
arbitragelab/ml_approach/feature_expander.py sha256=osfzzDyvKZLJrPAqJBBoTik9Lb3jUdjvOdSIVPtqEpI 5371
arbitragelab/ml_approach/filters.py sha256=rRKR9necgPRzeoS7PWPA4d9uAGUeYRaPlB6atWmjiI4 15125
arbitragelab/ml_approach/neural_networks.py sha256=zjrOjlk3fHWpIPZkbysh3yb2bm_1iqWAmzIULDREIU4 9511
arbitragelab/ml_approach/optics_dbscan_pairs_clustering.py sha256=AN4g15J5lczjeAjkmgOL-i_zEFMX7J4c06hDUgFoTwI 14814
arbitragelab/ml_approach/regressor_committee.py sha256=M_MEmWMfJpCn1CObemkPIUOG_VghDl14ZRlhGax1u1s 5094
arbitragelab/ml_approach/tar.py sha256=xa02jxGdmsYDhTW9Jc3O0kn4UIretWkIsdPCuaLraW8 3756
arbitragelab/optimal_mean_reversion/__init__.py sha256=VNJb8IBejtOcgQ_glEHErld21wWZO-eHYsdGq1RdTic 385
arbitragelab/optimal_mean_reversion/cir_model.py sha256=-p0bhXST14-f0myGS-_Jceqc8-rym7WuDGQOCSU2M4g 18629
arbitragelab/optimal_mean_reversion/heat_potentials.py sha256=s5yojhzh_0ucGxKMA-aw2QZAOmerGkrpPtSucLJ1ofI 20031
arbitragelab/optimal_mean_reversion/ou_model.py sha256=plX6xFFI1iEtbDU11sX1gFqOj0VcbcUJxTvC0Lh-N6Q 37690
arbitragelab/optimal_mean_reversion/xou_model.py sha256=qvN-FURbfn2RxpK3UcWsQU-WpsbRMje-B80s06BRx0I 20554
arbitragelab/other_approaches/__init__.py sha256=K0R0Mr8SViy1QywXDGbAWfbnWrOpESjMGzDDCO4uW1w 220
arbitragelab/other_approaches/kalman_filter.py sha256=JYCNIi2jKNtaQdUZd7Hzuq3XNT_YFCS4aehWgh21_Hc 7945
arbitragelab/other_approaches/pca_approach.py sha256=-IKCZyo_A-lI3BokZmXmRsv7YB5q9PqsEhJFCXCoazg 18095
arbitragelab/spread_selection/__init__.py sha256=LUfm48TVsv8XzDinXyKQBZMqju8FG9JoKmRq6imdElA 178
arbitragelab/spread_selection/base.py sha256=acVPXrJflErjVYK4OxjReb0WqCkIq8Gw-jB5k9hcv1g 1850
arbitragelab/spread_selection/cointegration.py sha256=mziAun0d0apqF6Bt4oGxlEi5gFmT1K3mdbUYhtZgykE 12728
arbitragelab/stochastic_control_approach/__init__.py sha256=2VE1pKdBNWYw7XXQ5jV0aOQBkw75WamI73zS2M9UgPY 381
arbitragelab/stochastic_control_approach/optimal_convergence.py sha256=VgYZsyDmXe-7zzCC5juXahrm1bXEY3biRZILDMYA4Bg 19269
arbitragelab/stochastic_control_approach/ou_model_jurek.py sha256=vwjkr9eTghq25ov_7KcHCQL4NjZe2Qrm7AhZw0TdhE8 44740
arbitragelab/stochastic_control_approach/ou_model_mudchanatongsuk.py sha256=dZt1QdODJnP7wF4Bsq3HhEM7Iiuo7pxDcrrMgXExAk0 12434
arbitragelab/tearsheet/__init__.py sha256=NW80JVC8BsmdBtl42no7Zn-vzV42IUZWbkEEEhsQ-hw 121
arbitragelab/tearsheet/tearsheet.py sha256=kUhJ_WSZAjqzFLsRnGpjFIEeV4OFbiNPdTcDtrMnn9Y 140554
arbitragelab/time_series_approach/__init__.py sha256=QCeDLgPvM9DD7zbeWFXFMvpFadxSXVhIjDLtxRnUygQ 494
arbitragelab/time_series_approach/arima_predict.py sha256=JQCOUngRTYyviuj8MC1QAnra99KRydpyqHQr6V4RdzE 7804
arbitragelab/time_series_approach/h_strategy.py sha256=3IVp8bomW15VHwKsLcWuwfuj7Y4TkMTaNAov_71ImQ4 14194
arbitragelab/time_series_approach/ou_optimal_threshold.py sha256=SYc1pqDMVeFim4Lq4XH85njOr_7VZh6J_BaJcmArJdY 8740
arbitragelab/time_series_approach/ou_optimal_threshold_bertram.py sha256=o7mYTrDChqqnPyaZfr-I-kDhnCzr2D9XhGA4VRLvgj4 12826
arbitragelab/time_series_approach/ou_optimal_threshold_zeng.py sha256=_EpN7NLqj3qiLZSkc7UNDp73zgzPl-mWSM5tlh_TOEo 17338
arbitragelab/time_series_approach/quantile_time_series.py sha256=rkJ8mG718s6-ID0fQIF0YcGOy14u36O8kEv6Rcc8CGY 4641
arbitragelab/time_series_approach/regime_switching_arbitrage_rule.py sha256=XrqKprt1brmTrW-AgHfT259Kx0y2ilTBMqUfSjJ0Up0 13115
arbitragelab/trading/__init__.py sha256=aGC82MEpSfzwxurBSctoA5dU_8wr7lg3UG1pRA9pmuQ 421
arbitragelab/trading/basic_copula.py sha256=YxbzWL_-ckG4r3E9w8fFVYgskpSoc2II2A7SHViipl0 10153
arbitragelab/trading/copula_strategy_mpi.py sha256=QZXaOKZt-O54qWWCaw6nQKKKwfGGFHqQoBHPg1yUxNo 29074
arbitragelab/trading/minimum_profit.py sha256=nlHgoHuEj8TuJyUhDfym_px_tYPY1Srqp3vzVCBcJQs 5479
arbitragelab/trading/multi_coint.py sha256=uLiJuEH1uu0WWWMXk9xfSMQO_grwfXq_GBRJqbJrt3w 7249
arbitragelab/trading/z_score.py sha256=eAp1uUmECyhXk2C9PQhkrrhDZ3p8OuYxqzhp9rMf7AY 6608
arbitragelab/util/__init__.py sha256=Im4neG25NgcA_NyECzGz__lj75sMtTrJUF5-cJ1IH4A 415
arbitragelab/util/base_futures_roller.py sha256=manvGJnxR9dUlLldLmPJ_Raw-uG4pgUrt1rAi-aO768 10271
arbitragelab/util/data_cursor.py sha256=02ifnRNXxXZkVh1JhDuHoCAgDt6_qIDdVG6BYa1N6d4 44960
arbitragelab/util/data_importer.py sha256=Jx207FqQ5WxGi7RapxX1Wa0dwByXkQuIfl6u1XgGhKY 5247
arbitragelab/util/generate_dataset.py sha256=P7wu5xHw1gvU0IccOrvDzElfNesAWnlupWzRZB4qjHI 1860
arbitragelab/util/indexed_highlight.py sha256=K8kGGsNOiCpbQi8DjoIni_dhlwwNyCezrR5XVTGdwvU 1448
arbitragelab/util/rollers.py sha256=cb0Vv_lncfP1NCvmLEoFSI_JhNm2xV97L8GwYUVxbnM 11767
arbitragelab/util/spread_modeling_helper.py sha256=tEqA42BRdGz1aaHoNBufx3Q9g6KEFd3Rnrmz8qcUiBM 17363
arbitragelab-0.9.1.dist-info/LICENSE.txt sha256=KU7zoBuyxx21AJlCR1YSZVK3EZaRLoo4VJe15puwWqM 1564
arbitragelab-0.9.1.dist-info/METADATA sha256=OGq7CqYIx4jQF1PVJtB66cK5DDM7wie13-iKtnknpNg 6863
arbitragelab-0.9.1.dist-info/WHEEL sha256=yQN5g4mg4AybRjkgi-9yy4iQEFibGQmlz78Pik5Or-A 92
arbitragelab-0.9.1.dist-info/top_level.txt sha256=aAHZc3izmRSy2y_F2f_3UjqeU0mp3Bph6pP91a1pHdY 13
arbitragelab-0.9.1.dist-info/RECORD

top_level.txt

arbitragelab