Metadata-Version: 2.1
Name: pqr
Version: 0.2.3
Summary: Library for testing factor strategies
Home-page: UNKNOWN
Author: eura17, atomtosov
License: MIT
Project-URL: Bug Tracker, https://github.com/atomtosov/pqr/issues
Project-URL: Documentation, https://pqr.readthedocs.io/en/latest/index.html
Project-URL: Source Code, https://github.com/atomtosov/pqr/tree/dev
Description: # pqr
        
        pqr is a Python library for portfolio quantitative research.
        
        Provides:
        
        1. Library for testing factor strategies
        2. A lot of different statistical metrics for portfolios
        3. Fancy visualization of results
        
        ## Installation
        
        Use the package manager [pip](https://pip.pypa.io/en/stable/) to install pqr.
        
        ```bash
        pip install pqr
        ```
        
        ## Documentation
        
        You can find it on [rtd](https://pqr.readthedocs.io/en/latest/index.html).
        
        ## Quickstart
        
        ```python
        import pandas as pd
        import numpy as np
        
        import pqr
        
        # read data
        prices = pd.read_csv('prices.csv', parse_dates=True)
        pe = pd.read_csv('pe.csv', parse_dates=True)
        volume = pd.read_csv('volume.csv', parse_dates=True)
        
        # preprocess the data
        prices = prices.replace(0, np.nan)
        pe = pe.replace(0, np.nan)
        volume = volume.replace(0, np.nan)
        
        # go to factors
        value = pqr.Factor(pe).look_back(3, 'static').lag(0).hold(3)
        
        liquidity = pqr.Factor(volume).look_back()
        liquidity_filter = liquidity >= 10_000_000
        
        value.filter(liquidity_filter)
        
        # create custom benchmark from liquid stocks with equal weights
        benchmark = pqr.Benchmark().from_stock_universe(prices,liquidity_filter)
        
        # fitting the factor model on value factor (3-0-3)
        # after fit we will get 3 quantile portfolios
        portfolios = pqr.fit_factor_model(prices, value)
        # fetch the table with summary statistics and plot cumulative returns
        pqr.summary_tear_sheet(portfolios, benchmark)
        ```
        
        You can also see this example on real data with output in
        examples/quickstart.ipynb.
        
        ## Communication
        
        If you find a bug or want to add some features, you are welcome to telegram
        @atomtosov or @eura71.
        
        ## Contributing
        
        Pull requests are welcome. For major changes, please open an issue first to
        discuss what you would like to change.
        
        Please make sure to update tests as appropriate.
        
        ## License
        
        [MIT](https://choosealicense.com/licenses/mit/)
        
        ## Project status
        
        Now the project is in beta-version.
        
Platform: any
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Science/Research
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Topic :: Office/Business :: Financial
Classifier: Topic :: Scientific/Engineering :: Information Analysis
Requires-Python: >=3.7
Description-Content-Type: text/markdown
