{"id":13492412,"url":"https://github.com/federico123579/Forecaster","last_synced_at":"2025-03-28T10:32:02.169Z","repository":{"id":217436831,"uuid":"122200724","full_name":"federico123579/Forecaster","owner":"federico123579","description":"A trading Bot written in python, clear and simple structure ","archived":false,"fork":false,"pushed_at":"2020-10-09T15:57:38.000Z","size":343,"stargazers_count":8,"open_issues_count":3,"forks_count":4,"subscribers_count":2,"default_branch":"master","last_synced_at":"2024-10-31T06:34:56.463Z","etag":null,"topics":["bot","finance","investment","python","python3","trading","trading-algorithms","trading-bot","trading-strategies","trading-systems"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/federico123579.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2018-02-20T13:19:40.000Z","updated_at":"2023-07-27T12:46:48.000Z","dependencies_parsed_at":null,"dependency_job_id":"fafe6f07-ba8e-4b95-86ec-1821339607de","html_url":"https://github.com/federico123579/Forecaster","commit_stats":null,"previous_names":["federico123579/forecaster"],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/federico123579%2FForecaster","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/federico123579%2FForecaster/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/federico123579%2FForecaster/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/federico123579%2FForecaster/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/federico123579","download_url":"https://codeload.github.com/federico123579/Forecaster/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246012544,"owners_count":20709464,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["bot","finance","investment","python","python3","trading","trading-algorithms","trading-bot","trading-strategies","trading-systems"],"created_at":"2024-07-31T19:01:05.754Z","updated_at":"2025-03-28T10:32:02.162Z","avatar_url":"https://github.com/federico123579.png","language":"Python","funding_links":[],"categories":["Python"],"sub_categories":[],"readme":"\u003cp align=\"center\"\u003e\n  \u003cimg src=\"./static/crystal_sphere.png\" alt=\"Forecaster Logo\"\u003e\n\u003c/p\u003e\n\n# Forecaster\n\nA trading software that uses various algorithms to predict trend in regolar time spans and make transaction to Trading212 broker service using the Trading212 APIs (that I've made before). In other branches it uses XTBApi (another api built by me) and different algorithm tested with Foreanalyser. **There's a lot of work to do here, if you like you can help me build this. Contact me at federico123579@gmail.com.**\n\n## Behavior\n\n### Algorithm\n\nOne of the many algorithms I used is the Mean Reversion with this formula:\n\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"./static/formula-1.png\" alt=\"Forecaster Logo\"\u003e\n\u003c/p\u003e\n\nwith `avg` as a **price average**, `mult` for a **costant** and `dev` for a **deviation**. In my tests I found most effective the use of a _linear regression_ as `price average` and a finantial index named _Average True Range_ (that defines volatility) as `deviation`.\n\n## How to install\n\nInstall just with pip:\n\n``` bash\n   cd Forecaster/\n   pip install -e .\n```\n\nThen run setup.sh to save the tokens needed by the software.\n\n``` bash\n   chmod +x setup.sh\n   ./setup.sh\n```\n\n## Developing\n\nWill be used these _Design Patterns_:\n\n* creational: _`singleton`_, _`factory method`_\n* structural: _`Proxy`_, `Adapter`, _`Decorator`_\n* behavioral: _`Chain of responsability`_, _`Mediator`_, _`Strategy`_\n\n### Main Libraries\n\n* Telegram API\n* Trading212 API\n\nThe `Bot` uses Telegram APIs to communicate with the user news and receive commands (asyncronously) and Trading212 API to make transactions and drive predictive algorithms.\n\n### Backlog\n\nTo-Do list before the v1.0 release.\n\n* [x] Tidy up code\n* [x] Add thread handler\n* [x] Add more telegram commands\n* [x] Add market closure time watcher\n* [ ] Add database integration\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffederico123579%2FForecaster","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffederico123579%2FForecaster","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffederico123579%2FForecaster/lists"}