{ "info": { "author": "hadi.f", "author_email": "h.farhadi@mabnadp.com", "bugtrack_url": null, "classifiers": [ "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python :: 3" ], "description": "# Algomax-CLI\n\nA command line tools for working with EMAX API.\n\ninstall the package with bellow command:\n\n`-> pip install algomax`\n\nuse bellow command for working with the package:\n\n`-> algomax algorithm.py config.json -p params.json -m schedule.json`\n\n## Example\nHere is a simple example of using **algomax**\n\n> algorithm.py\n\n```\nimport os\nimport sys\nimport json\nimport math\nfrom order import Order\nimport utils\n\n\ndef run_algorithm():\n config = utils.get_settings()\n trader_order = Order(config['broker_url'])\n\n params = utils.get_params()\n\n # algorithm\n data = fibonacci_algorithm(params['data'])\n\n # trade\n trader_order.create(data)\n\n\ndef isPerfectSquare(number: int): \n squrare_number = int(math.sqrt(number)) \n return squrare_number * squrare_number == number \n\n\ndef isFibonacci(number): \n return isPerfectSquare(5 * number * number + 4) or isPerfectSquare(5 * number * number - 4) \n\n\ndef fibonacci_algorithm(data: dict):\n qunatity = data['quantity']\n if isFibonacci(qunatity):\n qunatity += 3\n else:\n qunatity -= 3\n\n data['quantity'] = qunatity\n return data\n\nif __name__ == '__main__':\n\n run_algorithm()\n```\n\n> config.json\n\n\n```\n{\n \"broker_url\": \"http://your-broker.server\",\n \"access_token\": \"YoUr-ToKeN\",\n \"account_id\": \"your-account-id\"\n}\n```\n\n> params.json (your algorithm data)\n\n\n```\n{\n \"data\": {\n \"agent_id\": \"2\",\n \"side_id\": \"1\",\n \"instrument_id\": \"instrument-id\",\n \"price\": 1234.0,\n \"quantity\": 1934,\n \"validity_type_id\": \"1\",\n \"validity_date\": \"\"\n }\n}\n```\n\n> mode.json (scheduling)\n\n\n```\n{\n \"mode\": \"interval\",\n \"schedule\": {\n \"start_date\": \"2019-09-22\",\n \"end_date\": \"2019-10-23\",\n \"minutes_interval\": 1,\n \"start_time\": \"8:30\",\n \"end_time\": \"13:00\"\n }\n}\n```\n\n**Caution**: utils.py, order.py -> use **algomax-engine** package, but it's not ready yet ;)\n\n", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://mabnadp.com", "keywords": "algomax EMAX trader cli-trader algomax-cli", "license": "", "maintainer": "", "maintainer_email": "", "name": "algomax", "package_url": "https://pypi.org/project/algomax/", "platform": "", "project_url": "https://pypi.org/project/algomax/", "project_urls": { "Homepage": "https://mabnadp.com" }, "release_url": "https://pypi.org/project/algomax/0.3.1/", "requires_dist": [ "click (==7.0.0)", "schedule (==0.6.0)", "pyfiglet (==0.8.post1)", "algomax-common (==0.2)" ], "requires_python": ">=3.6", "summary": "cli tool for write your own trade algorithms", "version": "0.3.1", "yanked": false, "yanked_reason": null }, "last_serial": 6033350, "releases": { "0.1": [ { "comment_text": "", "digests": { "md5": "d88f3ce7e56b87bb87aa73660216a8ab", "sha256": "59e53703c24137952f4f6ff4172ef1d1dc9b2df8300cd8078aaaa847ab6adcb7" }, "downloads": -1, "filename": "algomax-0.1-py3-none-any.whl", "has_sig": false, "md5_digest": "d88f3ce7e56b87bb87aa73660216a8ab", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6", "size": 3732, "upload_time": "2019-09-24T12:13:45", "upload_time_iso_8601": "2019-09-24T12:13:45.309353Z", "url": "https://files.pythonhosted.org/packages/b9/f0/f56ee316c5a704417da9e1dfa3e0a3a2d00dc8c75443b8e82ec8377cfcdf/algomax-0.1-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "64f12315f5d0ea8de686f36ec8101a3d", "sha256": "31003514e2fc04bcf5b9025086521e4a06e10e89723ded8858f65dbb3ad1d420" }, "downloads": -1, "filename": "algomax-0.1.tar.gz", "has_sig": false, "md5_digest": "64f12315f5d0ea8de686f36ec8101a3d", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 2268, "upload_time": "2019-09-24T12:13:47", "upload_time_iso_8601": "2019-09-24T12:13:47.830076Z", "url": "https://files.pythonhosted.org/packages/7f/1b/efe679a57293416693df73315f07cccdd176292e03e65e085870f854f682/algomax-0.1.tar.gz", "yanked": false, "yanked_reason": null } ], "0.2": [ { "comment_text": "", "digests": { "md5": "8d2c0a230d9929763c2daa3108c0752b", "sha256": "460f8a5c73c7d1876a3f15fed8d339cd4d2b99b220d1d7934751d5844454173b" }, "downloads": -1, "filename": "algomax-0.2-py3-none-any.whl", "has_sig": false, "md5_digest": "8d2c0a230d9929763c2daa3108c0752b", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6", "size": 7937, "upload_time": "2019-10-02T11:21:30", "upload_time_iso_8601": "2019-10-02T11:21:30.543560Z", "url": "https://files.pythonhosted.org/packages/34/42/3d63a72388bd19dcf1659994ac0e5c05395652c46f80ad7687e933d37f14/algomax-0.2-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "4b16450b9275464dc061cdd63cc79b12", "sha256": "0e26d55ff0aa2921e7fa210c9dbb16ff33e6706134cfcb3a8d869c630515a685" }, "downloads": -1, "filename": "algomax-0.2.tar.gz", "has_sig": false, "md5_digest": "4b16450b9275464dc061cdd63cc79b12", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 5465, "upload_time": "2019-10-02T11:21:31", "upload_time_iso_8601": "2019-10-02T11:21:31.846457Z", "url": "https://files.pythonhosted.org/packages/71/c7/7ddaa8547fa8607f27d071210c1ee0f717a5e0dbb51461e9efa57d4a5d09/algomax-0.2.tar.gz", "yanked": false, "yanked_reason": null } ], "0.3": [ { "comment_text": "", "digests": { "md5": "b498bcf8d6c53135b30978aff679179d", "sha256": "19532431129f13e61630d5ea49af04b3a959b5f83a35997c8a60e70c5252781d" }, "downloads": -1, "filename": "algomax-0.3-py3-none-any.whl", "has_sig": false, "md5_digest": "b498bcf8d6c53135b30978aff679179d", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6", "size": 7667, "upload_time": "2019-10-09T12:10:32", "upload_time_iso_8601": "2019-10-09T12:10:32.115334Z", "url": "https://files.pythonhosted.org/packages/fb/2e/95e6545f9d1f0e8113220be0791047e5a2ebf9f1aca93bfd675d73918b67/algomax-0.3-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "aa75a085233467212a00d67e80527716", "sha256": "bd9f67d0e50f02278ea592413c3ec56e18a8f9498d509b87477c3bb683b1111e" }, "downloads": -1, "filename": "algomax-0.3.tar.gz", "has_sig": false, "md5_digest": "aa75a085233467212a00d67e80527716", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 6070, "upload_time": "2019-10-09T12:10:34", "upload_time_iso_8601": "2019-10-09T12:10:34.530780Z", "url": "https://files.pythonhosted.org/packages/d3/51/1bdb91b18e82857610d077ea7151ae76ab0557b06e7728a23f544ec603a6/algomax-0.3.tar.gz", "yanked": false, "yanked_reason": null } ], "0.3.1": [ { "comment_text": "", "digests": { "md5": "08e1753f1578dce787287dd0519cab8a", "sha256": "b46c527e7a45990ea41f2c02a56503a76cd2d2420a885a7a42537c098cf4bfd4" }, "downloads": -1, "filename": "algomax-0.3.1-py3-none-any.whl", "has_sig": false, "md5_digest": "08e1753f1578dce787287dd0519cab8a", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6", "size": 7694, "upload_time": "2019-10-26T10:08:12", "upload_time_iso_8601": "2019-10-26T10:08:12.511656Z", "url": "https://files.pythonhosted.org/packages/59/18/d43121378a87cea931ab4033a187c9690adb956a5586755314930c528014/algomax-0.3.1-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "c1e069c4d3862174f054591a5d9e4559", "sha256": "efa553be44fc2f626fa90791b32a1f2f2cae0b3ec57c577dc2874d92bee4a45b" }, "downloads": -1, "filename": "algomax-0.3.1.tar.gz", "has_sig": false, "md5_digest": "c1e069c4d3862174f054591a5d9e4559", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 6076, "upload_time": "2019-10-26T10:08:14", "upload_time_iso_8601": "2019-10-26T10:08:14.023683Z", "url": "https://files.pythonhosted.org/packages/0d/b1/679036afb5ef9d802660d4c7b3751609b720f027be6f79e074eaed6c4ba4/algomax-0.3.1.tar.gz", "yanked": false, "yanked_reason": null } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "08e1753f1578dce787287dd0519cab8a", "sha256": "b46c527e7a45990ea41f2c02a56503a76cd2d2420a885a7a42537c098cf4bfd4" }, "downloads": -1, "filename": "algomax-0.3.1-py3-none-any.whl", "has_sig": false, "md5_digest": "08e1753f1578dce787287dd0519cab8a", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6", "size": 7694, "upload_time": "2019-10-26T10:08:12", "upload_time_iso_8601": "2019-10-26T10:08:12.511656Z", "url": "https://files.pythonhosted.org/packages/59/18/d43121378a87cea931ab4033a187c9690adb956a5586755314930c528014/algomax-0.3.1-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "c1e069c4d3862174f054591a5d9e4559", "sha256": "efa553be44fc2f626fa90791b32a1f2f2cae0b3ec57c577dc2874d92bee4a45b" }, "downloads": -1, "filename": "algomax-0.3.1.tar.gz", "has_sig": false, "md5_digest": "c1e069c4d3862174f054591a5d9e4559", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 6076, "upload_time": "2019-10-26T10:08:14", "upload_time_iso_8601": "2019-10-26T10:08:14.023683Z", "url": "https://files.pythonhosted.org/packages/0d/b1/679036afb5ef9d802660d4c7b3751609b720f027be6f79e074eaed6c4ba4/algomax-0.3.1.tar.gz", "yanked": false, "yanked_reason": null } ], "vulnerabilities": [] }