QuantOPT


NameQuantOPT JSON
Version 0.1.1.8 PyPI version JSON
download
home_pagehttp://www.github.com/sn0wfree/QuantOPT
Summarya opt tool
upload_time2024-08-05 05:49:45
maintainerNone
docs_urlNone
authorsn0wfree
requires_pythonNone
licenseMIT Licence
keywords quantopt analysis
VCS
bugtrack_url
requirements pandas numpy scipy pyyaml
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # QuantOPT


## Description

This module is to create and run optimizer for the portfolio optimization. 
it will have constraints with soft slack version and objects 

main functions:
1. RunOpt, main functions with slack constraints path
2. create_constraints_holder, the creator for custom constraints with string
3. Holder, model holder which can be defined by custom or new model




## Usage

```python
from QuantOPT.constraints.relaxer import RunOpt
from QuantOPT.constraints.constraints import create_constraints_holder
from QuantOPT.core.model_core import Holder
import numpy as np
## add model
class risk_budge: 
    @staticmethod
    def loss_func(w):
        return np.sum(w)
Holder.add_model('risk_budge',risk_budge)

cov_price= stock_price.pct_change(1).cov()

stock_pool = len(cov_price.columns)

## init constraints
setting_yaml_path = './constraints.yaml'
constr_cls = create_constraints_holder(setting_yaml_path)
method = 'MinVar'

Ropt = RunOpt(method=method, constr_cls=constr_cls)

constraint_param_list = [('general_count_lower_rc', {'bound_value': 5}, 1, 'ineq')]
res = Ropt.run_opt(constraint_param_list, slack=True,stockpool=stock_pool, sigma2=cov_price)



```


            

Raw data

            {
    "_id": null,
    "home_page": "http://www.github.com/sn0wfree/QuantOPT",
    "name": "QuantOPT",
    "maintainer": null,
    "docs_url": null,
    "requires_python": null,
    "maintainer_email": null,
    "keywords": "QuantOPT, analysis",
    "author": "sn0wfree",
    "author_email": "snowfreedom0815@gmail.com",
    "download_url": "https://files.pythonhosted.org/packages/78/19/9f572e2e5e3270cc49f6d95331c1630d554a6020f506ac671476da909d49/QuantOPT-0.1.1.8.tar.gz",
    "platform": null,
    "description": "# QuantOPT\n\n\n## Description\n\nThis module is to create and run optimizer for the portfolio optimization. \nit will have constraints with soft slack version and objects \n\nmain functions:\n1. RunOpt, main functions with slack constraints path\n2. create_constraints_holder, the creator for custom constraints with string\n3. Holder, model holder which can be defined by custom or new model\n\n\n\n\n## Usage\n\n```python\nfrom QuantOPT.constraints.relaxer import RunOpt\nfrom QuantOPT.constraints.constraints import create_constraints_holder\nfrom QuantOPT.core.model_core import Holder\nimport numpy as np\n## add model\nclass risk_budge: \n    @staticmethod\n    def loss_func(w):\n        return np.sum(w)\nHolder.add_model('risk_budge',risk_budge)\n\ncov_price= stock_price.pct_change(1).cov()\n\nstock_pool = len(cov_price.columns)\n\n## init constraints\nsetting_yaml_path = './constraints.yaml'\nconstr_cls = create_constraints_holder(setting_yaml_path)\nmethod = 'MinVar'\n\nRopt = RunOpt(method=method, constr_cls=constr_cls)\n\nconstraint_param_list = [('general_count_lower_rc', {'bound_value': 5}, 1, 'ineq')]\nres = Ropt.run_opt(constraint_param_list, slack=True,stockpool=stock_pool, sigma2=cov_price)\n\n\n\n```\n\n",
    "bugtrack_url": null,
    "license": "MIT Licence",
    "summary": "a opt tool",
    "version": "0.1.1.8",
    "project_urls": {
        "Homepage": "http://www.github.com/sn0wfree/QuantOPT"
    },
    "split_keywords": [
        "quantopt",
        " analysis"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "4a1d5de21c634ceeb00f892b6dbbdb3ce9cc1286d416253730a03d6d67ecc078",
                "md5": "2ea67574c825bcb164859204e041f660",
                "sha256": "7b442fd881a3b6b0eb295ac327b5b39049d4f5b7c4efbfdd0d3a2554de5629ec"
            },
            "downloads": -1,
            "filename": "QuantOPT-0.1.1.8-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "2ea67574c825bcb164859204e041f660",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": null,
            "size": 26502,
            "upload_time": "2024-08-05T05:49:43",
            "upload_time_iso_8601": "2024-08-05T05:49:43.914550Z",
            "url": "https://files.pythonhosted.org/packages/4a/1d/5de21c634ceeb00f892b6dbbdb3ce9cc1286d416253730a03d6d67ecc078/QuantOPT-0.1.1.8-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "78199f572e2e5e3270cc49f6d95331c1630d554a6020f506ac671476da909d49",
                "md5": "b42bfb0204369daf0689d7019900ab97",
                "sha256": "d9b3f3db35aec032dd836ef6c2a6e44465373e54326b49b23f695add21a239c9"
            },
            "downloads": -1,
            "filename": "QuantOPT-0.1.1.8.tar.gz",
            "has_sig": false,
            "md5_digest": "b42bfb0204369daf0689d7019900ab97",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": null,
            "size": 18476,
            "upload_time": "2024-08-05T05:49:45",
            "upload_time_iso_8601": "2024-08-05T05:49:45.515532Z",
            "url": "https://files.pythonhosted.org/packages/78/19/9f572e2e5e3270cc49f6d95331c1630d554a6020f506ac671476da909d49/QuantOPT-0.1.1.8.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-08-05 05:49:45",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "sn0wfree",
    "github_project": "QuantOPT",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "requirements": [
        {
            "name": "pandas",
            "specs": []
        },
        {
            "name": "numpy",
            "specs": []
        },
        {
            "name": "scipy",
            "specs": []
        },
        {
            "name": "pyyaml",
            "specs": []
        }
    ],
    "lcname": "quantopt"
}
        
Elapsed time: 1.11732s