{"id":21096773,"url":"https://github.com/louisa-uno/dmarket_bot","last_synced_at":"2025-06-16T13:05:59.403Z","repository":{"id":107312252,"uuid":"431191984","full_name":"louisa-uno/dmarket_bot","owner":"louisa-uno","description":"This repository is an english translation of https://github.com/timagr615/dmarket_bot","archived":false,"fork":false,"pushed_at":"2024-01-14T17:21:54.000Z","size":65,"stargazers_count":17,"open_issues_count":3,"forks_count":2,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-05-12T21:57:29.801Z","etag":null,"topics":["aiohttp-client","bot","csgo","dmarket","dmarket-bot","dmarket-signature","dmarket-trading","python","requests","steam","steambot","trading","tradingbot"],"latest_commit_sha":null,"homepage":"","language":"Python","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/louisa-uno.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":"2021-11-23T17:23:35.000Z","updated_at":"2025-04-23T02:35:31.000Z","dependencies_parsed_at":"2024-01-14T18:49:37.766Z","dependency_job_id":"6e11f48e-19a3-412a-bd55-7be0f5f0a1e0","html_url":"https://github.com/louisa-uno/dmarket_bot","commit_stats":null,"previous_names":["louisa-uno/dmarket_bot","luois45/dmarket_bot"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/louisa-uno%2Fdmarket_bot","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/louisa-uno%2Fdmarket_bot/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/louisa-uno%2Fdmarket_bot/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/louisa-uno%2Fdmarket_bot/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/louisa-uno","download_url":"https://codeload.github.com/louisa-uno/dmarket_bot/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254567248,"owners_count":22092737,"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":["aiohttp-client","bot","csgo","dmarket","dmarket-bot","dmarket-signature","dmarket-trading","python","requests","steam","steambot","trading","tradingbot"],"created_at":"2024-11-19T22:39:52.288Z","updated_at":"2025-05-16T16:30:41.648Z","avatar_url":"https://github.com/louisa-uno.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# dmarket_bot\nBot for automatic trading on dmarket \n\n### Setup:\n\n- git clone https://github.com/Luois45/dmarket_bot.git\n- cd dmarket_bot\n- Create a virtual environment python3 -m venv venv\n- Activate the virtual environment . venv/bin/activate\n- pip install -r requirements.txt\n- Create a file `credentials.py` in the root directory with the following content:\n\n```python\nPUBLIC_KEY = \"your public api key\"\nSECRET_KEY = \"your secret api key\"\n```\n\n- The bot is being run using `main.py`\n\n## Features:\n\n- Supports all games available on dmarket.\n- Automatic analysis of the skins/items for each game\n- Placing orders which are determined by 15 different parameters\n- Automatic setting of skins/items for sale after purchase. Adjusting of prices in accordance with the settings.\n\n## Configuration\n\nAll configuration parameters are set in the `config.py` file in the root directory of the bot.\n\n### Detailed description of the configuration:\n\n- `logger_config`- logger configuration\n```python\nlogger_config = {\n    \"handlers\": [\n        {\"sink\": sys.stderr, 'colorize': True, 'level': 'INFO'},\n        # {\"sink\": \"log/debug.log\", \"serialize\": False, 'level': 'DEBUG'},\n        {\"sink\": \"log/info.log\", \"serialize\": False, 'level': 'INFO'},\n    ]\n}\nlogger.configure(**logger_config)\n```\n`\"sink\": sys.stderr` - output logs to the console\n`\"sink\": \"log/info.log\"` - output logs to a file\n`'level': 'INFO'` is the level of the logs. Possible settings: `TRACE, DEBUG, INFO, SUCCESS, WARNING, ERROR , CRITICAL`. Each level from left to right prohibits the output of lower levels. IF the level `INFO` is set messages with the levels `TRACE, DEBUG` won't be displayed.\n- `GAMES = [Games.CS, Games.DOTA, Games.RUST]` - a lisit of games that will be used for trading. Available values: `Games.CS, Games.DOTA, Games.RUST, Games.TF2`\n- `PREV_BASE = 60 * 60 * 4` - update the skin database every `PREV_BASE` seconds\n- `ORDERS_BASE = 60 * 10`- update the order database `ORDERS_BASE` seconds\n- `BAD_ITEMS` - a blacklist of words. If the word is included in the name of the item it won't be bought.\n\n### BuyParams - configuration parameters for placing orders\n- `STOP_ORDERS_BALANCE = 1000` - Stop placing orders if the balance is \u003c= 10 dollars more than the minimum order price\n- `MIN_AVG_PRICE = 400` - The minimum average price for the last 20 purchases of an item in cents. Items with a lower won't be added to the skin database\n- `MAX_AVG_PRICE = 3500` - The maximum average price for the last 20 purchases of an item in cents. Items with a higher price will not be added to the skin database. \n- `FREQUENCY = True` - `PROFIT_PERCENT = 6` or less, and the parameter `GOOD_POINTS_PERCENT = 50` or higher.\n- `MIN_PRICE = 300` - minimum price. The order won't be placed below this price\n- `MAX_PRICE = 3000` - maximum price. The order won't be placed above this price\n\n- `PROFIT_PERCENT = 7` - \n- `GOOD_POINTS_PERCENT = 50` - the minimum percentage of points in the history of the last 20 sales corresponding to the parameter `PROFIT_PERCENT = 7`. In this case, if less than 50 % of points were sold with a profit of less than 7 %, then an order for such a skin/item won't be placed\n- `AVG_PRICE_COUNT = 7` - calculating the average price for the last 7 sales to form the estimated profit\n- `ALL_SALES = 100` - the minimum number of sales for the entire period, if sales are below this number, the order won't be placed\n- `DAYS_COUNT = 20` - at least `SALE_COUNT = 15` sales for `DAYS_COUNT = 20` days. Selection by popularity\n- `SALE_COUNT = 15` - at least `SALE_COUNT = 15` sales for `DAYS_COUNT = 20` days. Selection by popularity\n- `LAST_SALE = 2` - last sale is no older than LAST_SALE days ago\n- `FIRST_SALE = 15` - first purchase is no later than FIRST_SALE days ago\n\n- `MAX_COUNT_SELL_OFFERS = 30` - The maximum number of items for sale. Above 30 the order won't be placed\n\n- `BOOST_PERCENT = 24` - remove up to 3 points that are 24 % higher than average price\n- `BOOST_POINTS = 3` - remove up to 3 points that are 24 % higher than average price\n\n- `MAX_THRESHOLD = 1` - the maximum price increase by MAX_THRESHOLD in % of the current order. The maximum increase in the price of your order from the price of the current first order\n- `MIN_THRESHOLD = 3` - the maximum decrease in the price of your order from the price of the current one. Sets the price change boundaries for the order\n\n### SellParams - configuration parameters for selling\n- `MIN_PERCENT = 7` - minimum profit percentage\n- `MAX_PERCENT = 15` - maximum profit percentage\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flouisa-uno%2Fdmarket_bot","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Flouisa-uno%2Fdmarket_bot","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flouisa-uno%2Fdmarket_bot/lists"}