{"id":24498262,"url":"https://github.com/leandronsp/ragnar","last_synced_at":"2025-03-15T07:12:43.289Z","repository":{"id":148926284,"uuid":"80962600","full_name":"leandronsp/ragnar","owner":"leandronsp","description":"The backend warrior for Marketr","archived":false,"fork":false,"pushed_at":"2018-06-04T17:55:59.000Z","size":140,"stargazers_count":3,"open_issues_count":0,"forks_count":1,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-01-21T22:11:29.748Z","etag":null,"topics":["bovespa","elixir","machine-learning","neural-network"],"latest_commit_sha":null,"homepage":"","language":"Elixir","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/leandronsp.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":"2017-02-05T02:11:43.000Z","updated_at":"2020-04-23T03:22:01.000Z","dependencies_parsed_at":"2023-04-29T10:04:53.576Z","dependency_job_id":null,"html_url":"https://github.com/leandronsp/ragnar","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/leandronsp%2Fragnar","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/leandronsp%2Fragnar/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/leandronsp%2Fragnar/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/leandronsp%2Fragnar/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/leandronsp","download_url":"https://codeload.github.com/leandronsp/ragnar/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243695591,"owners_count":20332629,"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":["bovespa","elixir","machine-learning","neural-network"],"created_at":"2025-01-21T22:11:01.712Z","updated_at":"2025-03-15T07:12:43.280Z","avatar_url":"https://github.com/leandronsp.png","language":"Elixir","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Ragnar\n\nThe backend for [Marketr](https://sonataxa.tech). Built on top of Phoenix/Elixir.\n\nMarketr is a product made for investors who need curated information regarding stock options assets at the [BMF\u0026Bovespa](http://www.bmfbovespa.com.br/pt_br/).\nIts board contains the most negotiated assets at the market and brings all the needed information for trading, including a top-feature called \"Rating\".\nRatings are evaluated based on Artificial Intelligence and are the main purpose of this product because it achieves transparency, speed and accuracy\nwhile choosing the best assets to invest money.\n\n### Description\nRagnar parses and exposes BMF\u0026Bovespa data-related.\nAPI for getting stocks listed at Bovespa and their related calls/puts.\n\nIts core uses [Morphine](https://github.com/leandronsp/morphine), a Neural Network used to learn and predict scores based on share rate, balance, volatiliy and trades.\n\nSome examples of API endpoints:\n\n\tGET /series\n\tGET /stocks\n\tGET /stocks/{share}/calls?serie=B\n\tGET /stocks/{share}/puts?serie=P\n\n\tGET /stocks/{share}/calls/evaluated?capital=10000\u0026serie=A\n\tGET /stocks/{share}/puts/evaluated?capital=10000\u0026serie=A\n\n\t### Training the neural network!\n\tPOST /network/train\n\tinputs: [[0, 1, 0], [0, 0, 1], [0, 0, 0]]\n\ttargets: [[1, 0, 0]]\n\n### Stack\nThis app was tested using Elixir 1.5+ and Postgres 9.x. There are apparent issues\nwith Ecto when tried to upgrade to Postgres 10.\n\n### Docker usage\nThis app uses docker for containerization:\n\n\t# builds the api and db container\n\tdocker-compose build api\n\n\t# starts api container and listens to http://localhost:4000\n\tdocker-compose up api\n\n\t# running commands inside api container (populate database)\n\tdocker exec -it ragnar-api bash\n\t=\u003e iex -S mix\n\t=\u003e Ragnar.BovespaFetcher.fetch_many!\n\n\t# happy TDD!\n\tdocker-compose build tdd \u0026\u0026 docker-compose run tdd\n\n\t# stop everything\n\tdocker-compose down\n\nBy default the database will write data to the local machine at `$(pwd)/.pgdata`.\n\n### Testing\nTDD can be achieved either running `mix test.watch` or `docker-compose run tdd`.\n\nRunning under K8s\n----------\nThis app provides capabilities for deployments  on K8s using Docker containers.\n\n\t# creates pods and services\n\tkubectl create -f k8s/k8s-db-config.yml\n\tkubectl create -f k8s/k8s-db.yml\n\tkubectl create -f k8s/k8s-db-service.yml\n\tkubectl create -f k8s/k8s-app-pod.yml\n\tkubectl create -f k8s/k8s-app-service.yml\n\n\t# check dashboard using MiniKube\n\tminikube dashboard\n\n\t# print URL\n\tminikube service ragnar-service --url\n\n### License\nRagnar is released under the [MIT License](https://opensource.org/licenses/MIT)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fleandronsp%2Fragnar","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fleandronsp%2Fragnar","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fleandronsp%2Fragnar/lists"}