quool


Namequool JSON
Version 5.0.12 PyPI version JSON
download
home_pagehttps://github.com/ppoak/quool
SummaryQuantitative Toolkit - a helper in quant developping
upload_time2024-04-24 07:48:47
maintainerNone
docs_urlNone
authorppoak
requires_pythonNone
licenseNone
keywords quant framework finance
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # Quool

Quool is a Python framework designed specifically for quantitative investment research. It aims to provide a flexible and efficient set of tools to help researchers and developers quickly implement data management, factor analysis, trading recording, and strategy evaluation functionalities. With Quool, users can focus on strategy and factor research without spending excessive time on data management and infrastructure setup.

## Features

- **Data Management**: Offers a unified interface for managing and accessing financial market data, supporting both intraday and daily data processing.
- **Factor Research**: Simplifies the process of factor development and testing, supporting factor definition, storage, analysis, and performance evaluation.
- **Trading Recording**: Provides flexible Recorder classes for recording and managing trade data and model execution data.
- **Strategy Evaluation**: Integrates strategy evaluation tools, supporting calculations of various performance metrics and result visualization.

## Installation

Currently, the Quool framework is not available on PyPI. You can install it from the source code as follows:

```bash
git clone https://github.com/your-username/quool.git
cd quool
pip install .
```

## Quick Start

Here are the basic steps to conduct factor research and strategy evaluation using Quool:

### Define a Factor

First, inherit the `BaseFactor` class to define your own factor. For example, define a factor that calculates the Volume Weighted Average Price (VWAP):

```python
from quool import BaseFactor

class VWAPFactor(BaseFactor):
    def get_vwap(self, date: pd.Timestamp):
        # Implement the calculation logic for VWAP
        pass
```

### Calculate Factor Values

Instantiate your factor class and use the `get` method to calculate factor values for a specific date range:

```python
vwap_factor = VWAPFactor(uri="./path/to/factor/data")
vwap_values = vwap_factor.get("vwap", start="2021-01-01", stop="2021-12-31")
```

### Evaluate Strategies

Use the `TradeRecorder` or other recorder classes to record your trading activities and use the `evaluate` method to assess strategy performance:

```python
from quool import TradeRecorder

# Record trading activities
trade_recorder = TradeRecorder(uri="./path/to/trade/data")
trade_recorder.record(date="2021-01-01", ...)

# Evaluate strategy performance
performance = trade_recorder.evaluate(...)
```

## Contributing

Contributions in the form of issue reports and pull requests are welcome on GitHub.

## License

Quool is released under the MIT license.

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/ppoak/quool",
    "name": "quool",
    "maintainer": null,
    "docs_url": null,
    "requires_python": null,
    "maintainer_email": null,
    "keywords": "quant, framework, finance",
    "author": "ppoak",
    "author_email": "ppoak@foxmail.com",
    "download_url": "https://files.pythonhosted.org/packages/4f/86/9578e94e5940a0aaec6b7498a6b6ed675ebb3e8802aaf23d85eb8135639b/quool-5.0.12.tar.gz",
    "platform": null,
    "description": "# Quool\n\nQuool is a Python framework designed specifically for quantitative investment research. It aims to provide a flexible and efficient set of tools to help researchers and developers quickly implement data management, factor analysis, trading recording, and strategy evaluation functionalities. With Quool, users can focus on strategy and factor research without spending excessive time on data management and infrastructure setup.\n\n## Features\n\n- **Data Management**: Offers a unified interface for managing and accessing financial market data, supporting both intraday and daily data processing.\n- **Factor Research**: Simplifies the process of factor development and testing, supporting factor definition, storage, analysis, and performance evaluation.\n- **Trading Recording**: Provides flexible Recorder classes for recording and managing trade data and model execution data.\n- **Strategy Evaluation**: Integrates strategy evaluation tools, supporting calculations of various performance metrics and result visualization.\n\n## Installation\n\nCurrently, the Quool framework is not available on PyPI. You can install it from the source code as follows:\n\n```bash\ngit clone https://github.com/your-username/quool.git\ncd quool\npip install .\n```\n\n## Quick Start\n\nHere are the basic steps to conduct factor research and strategy evaluation using Quool:\n\n### Define a Factor\n\nFirst, inherit the `BaseFactor` class to define your own factor. For example, define a factor that calculates the Volume Weighted Average Price (VWAP):\n\n```python\nfrom quool import BaseFactor\n\nclass VWAPFactor(BaseFactor):\n    def get_vwap(self, date: pd.Timestamp):\n        # Implement the calculation logic for VWAP\n        pass\n```\n\n### Calculate Factor Values\n\nInstantiate your factor class and use the `get` method to calculate factor values for a specific date range:\n\n```python\nvwap_factor = VWAPFactor(uri=\"./path/to/factor/data\")\nvwap_values = vwap_factor.get(\"vwap\", start=\"2021-01-01\", stop=\"2021-12-31\")\n```\n\n### Evaluate Strategies\n\nUse the `TradeRecorder` or other recorder classes to record your trading activities and use the `evaluate` method to assess strategy performance:\n\n```python\nfrom quool import TradeRecorder\n\n# Record trading activities\ntrade_recorder = TradeRecorder(uri=\"./path/to/trade/data\")\ntrade_recorder.record(date=\"2021-01-01\", ...)\n\n# Evaluate strategy performance\nperformance = trade_recorder.evaluate(...)\n```\n\n## Contributing\n\nContributions in the form of issue reports and pull requests are welcome on GitHub.\n\n## License\n\nQuool is released under the MIT license.\n",
    "bugtrack_url": null,
    "license": null,
    "summary": "Quantitative Toolkit - a helper in quant developping",
    "version": "5.0.12",
    "project_urls": {
        "Homepage": "https://github.com/ppoak/quool"
    },
    "split_keywords": [
        "quant",
        " framework",
        " finance"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "d38b7006d6b427775ef573f6a2cc410261baa0951f01b6e8777f0bf967d5c5a6",
                "md5": "8781774155ff89af22ffa119d98ebe56",
                "sha256": "4fed07ac3d3827aede813096f3d88aada6482859343cf10b111e81d303dde598"
            },
            "downloads": -1,
            "filename": "quool-5.0.12-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "8781774155ff89af22ffa119d98ebe56",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": null,
            "size": 15296,
            "upload_time": "2024-04-24T07:48:45",
            "upload_time_iso_8601": "2024-04-24T07:48:45.263463Z",
            "url": "https://files.pythonhosted.org/packages/d3/8b/7006d6b427775ef573f6a2cc410261baa0951f01b6e8777f0bf967d5c5a6/quool-5.0.12-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "4f869578e94e5940a0aaec6b7498a6b6ed675ebb3e8802aaf23d85eb8135639b",
                "md5": "600bf02982a99cf94ffad58ffc609408",
                "sha256": "df42240e9b3ff3c98aad411a274ff1b4096d6afce3ff868140fad63b125b3488"
            },
            "downloads": -1,
            "filename": "quool-5.0.12.tar.gz",
            "has_sig": false,
            "md5_digest": "600bf02982a99cf94ffad58ffc609408",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": null,
            "size": 14814,
            "upload_time": "2024-04-24T07:48:47",
            "upload_time_iso_8601": "2024-04-24T07:48:47.044900Z",
            "url": "https://files.pythonhosted.org/packages/4f/86/9578e94e5940a0aaec6b7498a6b6ed675ebb3e8802aaf23d85eb8135639b/quool-5.0.12.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-04-24 07:48:47",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "ppoak",
    "github_project": "quool",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "requirements": [],
    "lcname": "quool"
}
        
Elapsed time: 0.24145s