2
0
forked from kodorvan/stcs

Compare commits

6 Commits

Author SHA1 Message Date
58a4c6af06 systemd + gitignore 2025-09-13 00:34:49 +07:00
b37b7193b2 Обновить README.md 2025-09-13 00:16:03 +07:00
05e8005ec9 Merge pull request 'develops' (#6) from Alex/stcs:develops into stable
Reviewed-on: kodorvan/stcs#6
2025-09-12 23:52:03 +07:00
algizn97
0de3b17d1d Updated 2025-09-12 21:37:38 +05:00
algizn97
b77c0f7dcc Merge remote-tracking branch 'origin/develop' into develop 2025-09-12 21:31:42 +05:00
algizn97
3ccfb64be8 Fixed 2025-09-12 21:31:13 +05:00
9 changed files with 63 additions and 43 deletions

4
.gitignore vendored
View File

@@ -11,3 +11,7 @@ venv/
/.idea /.idea
/myenv /myenv
myenv myenv
*.sqlite3
*.log

View File

@@ -27,7 +27,7 @@ Crypto Trading Telegram Bot
- Хранение пользовательских настроек и статистики в базе данных. - Хранение пользовательских настроек и статистики в базе данных.
## Установка и запуск ## Установка
1. Клонируйте репозиторий: 1. Клонируйте репозиторий:
@@ -41,6 +41,10 @@ git clone https://git.svoboda.works/kodorvan/stcs
```bash ```bash
pip install -r requirements.txt pip install -r requirements.txt
``` ```
или для отдельного пользователя
```bash
sudo -u www-data /usr/bin/pip install -r requirements.txt
```
3. Зарегистрируйте чат-робота и сгенерируйте ключ авторизации<br> 3. Зарегистрируйте чат-робота и сгенерируйте ключ авторизации<br>
[@BotFather](https://t.me/BotFather) [@BotFather](https://t.me/BotFather)
@@ -57,6 +61,32 @@ nvim .env
python BybitBot_API.py python BybitBot_API.py
``` ```
## Настройка автономной работы
1. Создаём файл конфигурации SystemD
```bash
sudo cp examples/systemd/stcs.service /etc/systemd/system/
```
2. Настраиваем его
```bash
nvim /etc/systemd/system/stcs.service
```
3. Добавляем в автозапуск
```bash
sudo systemctl enable stcs
```
4. Запускаем
```bash
sudo service stcs start
```
5. Проверяем
```bash
sudo service stcs status
```
## Настройки пользователя ## Настройки пользователя
- Кредитное плечо (например, 15x) - Кредитное плечо (например, 15x)

View File

@@ -272,7 +272,7 @@ async def show_my_trades(callback: CallbackQuery) -> None:
""" """
await callback.answer() await callback.answer()
try: try:
await callback.message.answer(f"Выберите тип сделки:", await callback.message.answer("Выберите тип сделки:",
reply_markup=inline_markup.my_deals_select_markup) reply_markup=inline_markup.my_deals_select_markup)
except Exception as e: except Exception as e:
logger.error("Произошла ошибка при выборе типа сделки: %s", e) logger.error("Произошла ошибка при выборе типа сделки: %s", e)
@@ -554,6 +554,9 @@ async def cancel(callback: CallbackQuery, state: FSMContext) -> None:
""" """
Отменяет текущее состояние FSM и сообщает пользователю об отмене. Отменяет текущее состояние FSM и сообщает пользователю об отмене.
""" """
await state.clear() try:
await callback.message.answer("Отменено!", reply_markup=inline_markup.back_to_main) await state.clear()
await callback.answer() await callback.message.answer("Отменено!", reply_markup=inline_markup.back_to_main)
await callback.answer()
except Exception as e:
logger.error("Ошибка при обработке отмены: %s", e)

View File

@@ -0,0 +1,17 @@
[Unit]
Description=Telegram chat-robot: @stcs_cryptobot
Wants=network.target
After=syslog.target network-online.target
[Service]
ExecStart=sudo -u www-data /usr/bin/python3 /var/www/stcs/BybitBot_API.py
PIDFile=/var/run/python/stcs.pid
RemainAfterExit=no
RuntimeMaxSec=3600s
Restart=always
RestartSec=5s
[Install]
WantedBy=multi-user.target

1
logger_helper/loggers/.gitignore vendored Normal file
View File

@@ -0,0 +1 @@
*.log

View File

@@ -1,35 +0,0 @@
2025-08-23 12:57:26 - main - INFO - Bot is off
2025-08-23 13:04:01 - main - INFO - Bot is off
2025-08-23 13:25:04 - main - INFO - Bot is off
2025-08-23 13:26:24 - main - INFO - Bot is off
2025-08-23 13:28:36 - main - INFO - Bot is off
2025-08-23 13:29:29 - main - INFO - Bot is off
2025-08-23 13:30:48 - main - INFO - Bot is off
2025-08-23 13:31:43 - main - INFO - Bot is off
2025-08-23 13:33:10 - main - INFO - Bot is off
2025-08-23 13:34:59 - main - INFO - Bot is off
2025-08-23 13:36:15 - main - INFO - Bot is off
2025-08-23 13:49:17 - main - INFO - Bot is off
2025-08-23 13:50:22 - main - INFO - Bot is on
2025-08-23 13:51:30 - main - INFO - Bot is off
2025-08-23 13:51:37 - main - INFO - Bot is on
2025-08-23 13:52:12 - main - INFO - Bot is off
2025-08-23 13:57:48 - main - INFO - Bot is on
2025-08-23 14:05:36 - main - INFO - Bot is off
2025-08-23 14:05:43 - main - INFO - Bot is on
2025-08-23 14:06:03 - main - INFO - Bot is off
2025-08-23 14:06:46 - main - INFO - Bot is on
2025-08-23 14:07:04 - requests - INFO - Bybit был успешно подключен
2025-08-23 14:07:43 - requests - INFO - Новый пользователь был добавлен в бд
2025-08-23 14:07:43 - requests - INFO - Основные настройки нового пользователя были заполнены
2025-08-23 14:07:43 - requests - INFO - Риск-Менеджмент настройки нового пользователя были заполнены
2025-08-23 14:07:43 - requests - INFO - Условные настройки нового пользователя были заполнены
2025-08-23 14:07:43 - requests - INFO - Дополнительные настройки нового пользователя были заполнены
2025-08-23 14:23:31 - main - INFO - Bot is off
2025-08-23 14:23:39 - main - INFO - Bot is on
2025-08-23 14:28:13 - main - INFO - Bot is off
2025-08-23 14:28:19 - main - INFO - Bot is on
2025-08-23 14:28:26 - requests - INFO - Получение риск-менеджмента настроек пользователя 899674724
2025-08-23 14:28:26 - requests - INFO - Получение риск-менеджмента настроек пользователя 899674724
2025-08-23 14:29:12 - requests - INFO - Получение риск-менеджмента настроек пользователя 899674724
2025-08-23 14:29:34 - main - INFO - Bot is off