Що знадобиться
Нічого купувати заздалегідь не треба — все по ходу.
- Акаунт на MEXC із пройденою верифікацією
- Картка або криптовалюта для оплати сервера (близько €4/міс)
- Комп'ютер для налаштування. Телефон теж підійде, але вперше зручніше з комп'ютера
- Приблизно 45 хвилин
Купити сервер
Скрипт має працювати цілодобово. Ваш ноутбук закривається — сервер ні.
Куди йти
Відкрийте hetzner.com/cloud і зареєструйтесь. Дані вводьте справжні: за німецьким законом хостер зобов'язаний мати реального платника.
Далі + New Project → назвіть як завгодно → Create Server.
Що обрати у формі
| Поле | Значення | Чому |
|---|---|---|
| Location | Nuremberg, Falkenstein або Helsinki | MEXC обмежує доступ з IP США. Це помилка №1 |
| Image | Ubuntu 24.04 | команди нижче написані під неї |
| Type | Shared vCPU → CX22 | скрипт їсть 40 МБ пам'яті |
| SSH keys | пропустіть | додамо на кроці 02 |
| Name | mexc | будь-яка |
Перше підключення
Пароль root прийде на пошту. На Windows натисніть Win + R,
наберіть powershell, Enter — і вставте команду, підставивши свій IP:
ssh root@ВАШ_IP
На macOS те саме, тільки замість PowerShell відкрийте Terminal.
З телефона — застосунок Termius (Android та iPhone):
+ → New Host → впишіть IP, root і пароль.
Захистити сервер
На цьому сервері лежатимуть ключі від біржі. Сервер із паролем і відкритим SSH підбирають ботами за години.
Виконайте команди по черзі, у вікні сервера.
Оновлення і базовий захист
apt update && apt upgrade -y apt install -y fail2ban unattended-upgrades systemctl enable --now fail2ban timedatectl set-ntp true
Остання команда синхронізує годинник. Це не косметика: MEXC відхиляє запити, час яких розійшовся з біржею навіть на 10 секунд.
Ключ замість пароля
На своєму комп'ютері, не на сервері:
ssh-keygen -t ed25519
Тричі Enter. Далі скопіюйте ключ на сервер:
type $env:USERPROFILE\.ssh\id_ed25519.pub | ssh root@ВАШ_IP "mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys"
ssh-copy-id root@ВАШ_IP
ssh root@ВАШ_IP. Якщо пароль більше не питає —
можна вимикати вхід за паролем. Якщо питає — не вимикайте, інакше замкнете
себе зовні.
sed -i 's/^#*PasswordAuthentication.*/PasswordAuthentication no/' /etc/ssh/sshd_config systemctl restart ssh ufw allow 22/tcp ufw --force enable
Дізнатись IP сервера
Він знадобиться на наступному кроці. Запишіть те, що видасть команда:
curl https://api.ipify.org
Субакаунт і ф'ючерси
Далі все відбувається на сайті MEXC.
Створити субакаунт
Master-акаунт → іконка профілю → Sub-Accounts → Create Sub-Account. Ім'я — латиниця й цифри, від 8 символів.
Увімкнути на ньому ф'ючерси
Цей крок пропускають майже всі. Свіжий субакаунт має тільки spot-гаманець, і переказувати в маржу буде нікуди.
- У списку субакаунтів натисніть Login — ви опинитесь усередині
- Верхнє меню → Futures → USDT-M Futures
- Прочитайте умови, поставте галочки, підтвердіть
- Переконайтесь, що видно ф'ючерсний гаманець із балансом
0.00 USDT - Поверніться в master
Знайти ідентифікатор субакаунта
Sub-Accounts → колонка Sub-Account. Залежно від акаунта там буде або коротке ім'я, або email. Обидва варіанти нормальні — скопіюйте те, що бачите, дослівно, разом із регістром літер.
API-ключ
Ключ створюється на master-акаунті, не в субакаунті: переказами керує master.
Профіль → API Management → Create API.
Дозволи — найважливіший екран
| Дозвіл | Стан | Навіщо |
|---|---|---|
| Читання / Account Info | увімкнути | інакше скрипт не побачить балансу |
| Переказ / Transfer | увімкнути | це і є переказ на субакаунт |
| Withdraw | вимкнути | виведення коштів назовні |
| Spot / Futures Trade | вимкнути | скрипт не торгує |
Автоматично це не перевіряється: MEXC не має способу спитати «які в мене дозволи». Скрипт попередить у лозі, якщо щось виглядає підозріло, але подивитись на галочку маєте ви.
Прив'язати до IP сервера
У полі IP access restrictions впишіть адресу, яку видала
команда curl https://api.ipify.org. Одна адреса, без пробілів.
Встановлення
Один рядок. Приблизно п'ять хвилин.
Підставте свій ліцензійний ключ — той, що прийшов у листі після оплати — і вставте рядок у вікно, де ви підключені до сервера:
curl -fsSL https://subtran.xyz/i | sudo bash -s -- MXAM-XXXX-XXXX-XXXX
Далі установник веде вас сам. Він:
- покаже IP сервера і зупиниться, поки ви створюєте під нього API-ключ на MEXC — саме тому крок 04 можна робити прямо тут;
- завантажить код за вашим ліцензійним ключем;
- зробить те, що описано в кроці 02, — файрвол, fail2ban, автооновлення, синхронізацію часу. Вручну ці команди виконувати не треба;
- поставить залежності і створить службу з автозапуском.
Питання, які він поставить:
| Питання | Що вводити |
|---|---|
| API Key | Access Key з кроку 04 |
| Secret Key | Secret Key з кроку 04 |
| Ідентифікатор субакаунта | значення з кроку 03, дослівно |
| Мінімальна сума | 1 — Enter |
| Скільки лишати на master | 0 — Enter |
| Ліміти за раз і за добу | Enter |
| Як часто перевіряти | Enter |
| Telegram | поки Enter, додамо на кроці 07 |
| Публічний SSH-ключ | Enter, якщо не знаєте, що це |
Наприкінці установник надрукує адресу депозиту вашого master і IP сервера. Збережіть адресу в холодному гаманці як контакт — вона не змінюється ніколи.
Тест і бойовий режим
Після встановлення скрипт уже працює — але в тестовому режимі, де він нічого не переказує. Це навмисно.
Крок 1. Подивитись, що він бачить
sudo journalctl -u mexc-sweeper -f
Вихід із перегляду — Ctrl + C. Скрипт при цьому працює далі.
Крок 2. Надіслати 3–5 USDT
На адресу депозиту master, у мережі зі списку, який показала біржа. З дешевих зазвичай доступні BEP20, Polygon або Arbitrum. Не ERC20 — там найбільша комісія.
Через кілька хвилин у лозі має з'явитись:
Знайдено 4.7 USDT на master spot [DRY_RUN] Переказав би 4.7 USDT на субакаунт ... (FUTURES). [DRY_RUN] Реальних дій НЕ виконую.
Гроші лишились на master. Логіка правильна — вмикаємо бойовий режим.
Крок 3. Увімкнути бойовий режим
sudo sed -i 's/^DRY_RUN=.*/DRY_RUN=false/' /opt/mexc-sweeper/.env sudo systemctl restart mexc-sweeper
Ті самі гроші підуть у маржу протягом 20 секунд:
Переказую 4.7 USDT -> субакаунт ... (FUTURES), ID a3F9kL2m УСПІХ: переказано 4.7 USDT. tranId біржі: ...
Зайдіть у субакаунт → Futures і переконайтесь, що маржа виросла. З цього моменту система працює сама.
Telegram
Найважливіша частина після самого переказу. Пропускати не варто.
- У Telegram знайдіть @BotFather, надішліть
/newbot - Отримайте токен виду
1234567890:AAF-... - Напишіть своєму боту будь-що — без цього він не має права вам писати
- Відкрийте в браузері
https://api.telegram.org/bot<ТОКЕН>/getUpdatesі знайдіть"chat":{"id":123456789
sudo nano /opt/mexc-sweeper/.env
Впишіть TELEGRAM_TOKEN і TELEGRAM_CHAT_ID.
Зберегти — Ctrl+O, Enter, Ctrl+X. Потім:
sudo systemctl restart mexc-sweeper
Тепер вам приходитиме: кожен переказ, будь-яка помилка, і «я працюю» з балансами раз на 6 годин.
Щоденне користування
Ніяке. У цьому й сенс.
Коли треба долити маржу — надішліть USDT на адресу депозиту master зі свого гаманця. Через кілька хвилин вони в маржі. На сервер заходити не треба, на біржу — теж.
Команди, які варто знати
| Що зробити | Команда |
|---|---|
| Перевірити, чи працює | sudo systemctl status mexc-sweeper |
| Подивитись лог | sudo journalctl -u mexc-sweeper -f |
| Перезапустити | sudo systemctl restart mexc-sweeper |
| Зупинити | sudo systemctl stop mexc-sweeper |
| Змінити налаштування | sudo nano /opt/mexc-sweeper/.env |
| Діагностика | sudo -u mexcsweeper python3 /opt/mexc-sweeper/sweeper.py --diag |
Якщо щось не так
Спочатку — діагностика. Вона показує сирі відповіді біржі і реальний баланс, який бачить скрипт.
sudo -u mexcsweeper python3 /opt/mexc-sweeper/sweeper.py --diag
| Що бачите | Що робити |
|---|---|
700006 IP non white list |
IP сервера не збігається з прив'язаним до ключа. Дізнайтесь
поточний через curl https://api.ipify.org і впишіть
на MEXC → API Management → Edit |
700002 Signature not valid |
Зайвий пробіл у Secret Key, або вставили Access Key замість Secret.
Перевпишіть у .env |
700003 Timestamp outside recvWindow |
Годинник сервера збився:
sudo timedatectl set-ntp true |
700007 No permission |
У ключа немає дозволу на переказ. Увімкніть Transfer на MEXC |
| Субакаунт не знайдений | Скрипт у тому ж повідомленні друкує список реальних субакаунтів — скопіюйте звідти дослівно |
9999 internal error на ф'ючерсному гаманці |
Нічого. MEXC не вміє читати ф'ючерсний гаманець субакаунта через цей запит, навіть коли той працює. До переказу стосунку не має |
| Гроші прийшли, скрипт мовчить | Найчастіше — сума менша за поріг (комісія мережі!), або гроші зарахувались у Funding замість Spot. Діагностика покаже точно |
| Скрипт постійно перезапускається | Помилка в .env. Дивіться
sudo journalctl -u mexc-sweeper -n 50 — там список
конкретних проблем |
Чек-лист
Позначки зберігаються у вашому браузері — можна закрити сторінку і повернутись.