Мови / Languages: English | 中文 | Українська | Русский
Автоматизована система торгівлі криптовалютними ф'ючерсами на базі DeepSeek/Qwen AI, що підтримує Binance, Hyperliquid та Aster DEX біржі, змагання кількох AI-моделей у реальній торгівлі, з повним аналізом ринку, прийняттям рішень AI, механізмом самонавчання та професійним веб-інтерфейсом моніторингу.
⚠️ Попередження про ризики: Ця система експериментальна. Автоматична торгівля з AI несе значні ризики. Наполегливо рекомендується використовувати лише для навчання/досліджень або тестування з невеликими сумами!
Приєднуйтесь до нашої спільноти розробників у Telegram для обговорення, обміну ідеями та отримання підтримки:
NOFX тепер підтримує три основні біржі: Binance, Hyperliquid та Aster DEX!
Високопродуктивна децентралізована біржа безстрокових ф'ючерсів!
Ключові особливості:
- ✅ Повна підтримка торгівлі (лонг/шорт, плече, стоп-лосс/тейк-профіт)
- ✅ Автоматична обробка точності (розмір та ціна ордера)
- ✅ Єдиний інтерфейс трейдера (безшовне перемикання бірж)
- ✅ Підтримка мейннету та тестнету
- ✅ Не потрібні API ключі - тільки приватний ключ Ethereum
Чому Hyperliquid?
- 🔥 Нижчі комісії ніж на централізованих біржах
- 🔒 Без зберігання - ви контролюєте свої кошти
- ⚡ Швидке виконання з розрахунком на ланцюзі
- 🌍 Не потрібна KYC
Швидкий старт:
- Отримайте приватний ключ MetaMask (видаліть префікс
0x) - Встановіть
"exchange": "hyperliquid"в config.json - Додайте
"hyperliquid_private_key": "your_key" - Почніть торгувати!
Див. Посібник з конфігурації.
Децентралізована біржа безстрокових ф'ючерсів, сумісна з Binance!
Ключові особливості:
- ✅ API в стилі Binance (легка міграція з Binance)
- ✅ Web3 автентифікація гаманця (безпечно та децентралізовано)
- ✅ Повна підтримка торгівлі з автоматичною обробкою точності
- ✅ Нижчі комісії за торгівлю ніж CEX
- ✅ Сумісність з EVM (Ethereum, BSC, Polygon тощо)
Чому Aster?
- 🎯 API сумісний з Binance - потрібні мінімальні зміни коду
- 🔐 Система API гаманця - окремий торговий гаманець для безпеки
- 💰 Конкурентні комісії - нижче ніж більшість централізованих бірж
- 🌐 Підтримка кількох ланцюгів - торгуйте на вашому улюбленому EVM ланцюзі
Швидкий старт:
- Відвідайте Aster API Wallet
- Підключіть основний гаманець і створіть API гаманець
- Скопіюйте адресу API Signer та приватний ключ
- Встановіть
"exchange": "aster"в config.json - Додайте
"aster_user","aster_signer"та"aster_private_key"
Лідерборд з кількома AI та графіки порівняння продуктивності в реальному часі показують битву Qwen проти DeepSeek
Професійний торговий інтерфейс з кривими капіталу, живими позиціями та логами рішень AI з розкриваємими вхідними промптами та ланцюгом міркувань
- Qwen проти DeepSeek - битва в реальній торгівлі
- Незалежне управління рахунками та журналами рішень
- Графіки порівняння продуктивності в реальному часі
- Статистика ROI та відсотка виграшів
- Історичний аналіз: Аналізує останні 20 циклів торгівлі перед кожним рішенням
- Розумна оптимізація:
- Визначає найкращі/найгірші монети за продуктивністю
- Розраховує відсоток виграшів, співвідношення прибутку/збитку, середній прибуток
- Уникає повторення помилок (послідовно збиткові монети)
- Посилює успішні стратегії (патерни з високим відсотком виграшів)
- Динамічне коригування: AI автономно коригує торговий стиль на основі історичної продуктивності
- 3-хвилинна свічка: Ціна в реальному часі, EMA20, MACD, RSI(7)
- 4-годинна свічка: Довгостроковий тренд, EMA20/50, ATR, RSI(14)
- Аналіз відкритого інтересу: Настрої ринку, визначення грошових потоків
- Відстеження топ OI: Топ-20 монет з найшвидшим зростанням відкритого інтересу
- Пул монет AI500: Автоматичний відбір монет з високим рейтингом
- Фільтр ліквідності: Автоматична фільтрація монет з низькою ліквідністю (<15M USD вартості позиції)
- Ліміт позиції по монеті:
- Альткоїни ≤ 1.5x капітал рахунку
- BTC/ETH ≤ 10x капітал рахунку
- Налаштовуване плече (v2.0.3+):
- Встановіть максимальне плече в config.json
- За замовчуванням: 5x для всіх монет (безпечно для субакаунтів)
- Основні акаунти можуть збільшити: Альткоїни до 20x, BTC/ETH до 50x
⚠️ Субакаунти Binance обмежені ≤5x плечем
- Управління маржею: Загальне використання ≤90%, AI приймає автономні рішення
- Співвідношення ризик/дохід: Обов'язкове ≥1:2 (стоп-лосс:тейк-профіт)
- Запобігання накопиченню позицій: Заборона дублювання відкриття тієї ж монети/напрямку
- Професійний торговий інтерфейс: Візуальний дизайн у стилі Binance
- Темна тема: Класична колірна схема (Золотий #F0B90B + темний фон)
- Дані в реальному часі: Оновлення кожні 5 секунд для рахунків, позицій, графіків
- Крива капіталу: Графік історичного тренду вартості рахунку (перемикання USD/відсоток)
- Графік порівняння продуктивності: Порівняння ROI кількох AI в реальному часі
- Плавні анімації: Плавні ефекти наведення, переходів та завантаження
- Ланцюг міркувань: Повний процес міркувань AI (CoT)
- Історична продуктивність: Загальний відсоток виграшів, середній прибуток, співвідношення прибутку/збитку
- Останні угоди: Деталі останніх 5 угод (ціна входу → ціна виходу → P/L%)
- Статистика по монетах: Продуктивність по кожній монеті (відсоток виграшів, середній P/L)
- JSON логи: Повні записи рішень для пост-аналізу
Перед використанням цієї системи вам потрібен акаунт Binance Futures. Використовуйте наше реферальне посилання для отримання знижки на комісії:
🎁 Зареєструватися на Binance - Отримати знижку
- Натисніть на посилання вище щоб перейти на сторінку реєстрації Binance
- Завершіть реєстрацію використовуючи email/номер телефону
- Пройдіть KYC верифікацію (потрібно для торгівлі ф'ючерсами)
- Активуйте акаунт Futures:
- Перейдіть на головну сторінку Binance → Деривативи → USD-M Ф'ючерси
- Натисніть "Відкрити зараз" для активації торгівлі ф'ючерсами
- Створіть API ключ:
- Перейдіть в Акаунт → Управління API
- Створіть новий API ключ, увімкніть дозвіл "Futures"
- Збережіть API Key та Secret Key (необхідно для config.json)
- Важливо: Додайте свою IP адресу до білого списку для безпеки
- ✅ Спотова торгівля: Знижка до 30% на комісії
- ✅ Торгівля ф'ючерсами: Знижка до 30% на комісії
- ✅ Довічна: Постійна знижка на всі угоди
⚡ Почніть торгувати за 3 прості кроки з Docker - Не потрібно нічого встановлювати!
Docker автоматично обробляє всі залежності (Go, Node.js, TA-Lib) та налаштування середовища. Ідеально для новачків!
# Скопіюйте шаблон конфігурації
cp config.json.example config.json
# Відредагуйте та заповніть ваші API ключі
nano config.json # або використайте будь-який редактор# Варіант 1: Використайте зручний скрипт (Рекомендується)
chmod +x start.sh
./start.sh start --build
# Варіант 2: Використайте docker-compose безпосередньо
docker-compose up -d --buildВідкрийте у браузері: http://localhost:3000
От і все! 🎉 Ваша AI торгова система зараз працює!
./start.sh logs # Переглянути логи
./start.sh status # Перевірити статус
./start.sh stop # Зупинити сервіси
./start.sh restart # Перезапустити сервіси📖 Детальний посібник з розгортання Docker, усунення несправностей та розширеної конфігурації:
- Українська: Дивіться документацію Docker (скоро буде доступно)
- English: See DOCKER_DEPLOY.en.md
- 中文: 查看 DOCKER_DEPLOY.md
Примітка: Якщо ви використали розгортання Docker вище, пропустіть цей розділ. Ручне встановлення потрібне лише якщо ви хочете змінити код або запустити без Docker.
- Go 1.21+
- Node.js 18+
- TA-Lib бібліотека (розрахунок технічних індикаторів)
macOS:
brew install ta-libUbuntu/Debian:
sudo apt-get install libta-lib0-devІнші системи: Див. Офіційну документацію TA-Lib
git clone https://github.com/tinkle-community/nofx.git
cd nofxBackend:
go mod downloadFrontend:
cd web
npm install
cd ..Перед налаштуванням системи вам необхідно отримати AI API ключ. Виберіть одного з наступних AI провайдерів:
Чому DeepSeek?
- 💰 Дешевше ніж GPT-4 (приблизно 1/10 вартості)
- 🚀 Швидкий час відгуку
- 🎯 Відмінна якість торгових рішень
- 🌍 Доступний глобально без VPN
Як отримати DeepSeek API ключ:
- Відвідайте: https://platform.deepseek.com
- Зареєструйтеся: Використовуючи email/номер телефону
- Підтвердіть: Завершіть підтвердження email/телефону
- Поповніть: Додайте баланс на акаунт
- Мінімум: ~$5 USD
- Рекомендується: $20-50 USD для тестування
- Створіть API ключ:
- Перейдіть у розділ API Keys
- Натисніть "Створити новий ключ"
- Скопіюйте та збережіть ключ (починається з
sk-) ⚠️ Важливо: Збережіть негайно - пізніше побачити не зможете!
Ціна: Приблизно $0.14 за мільйон токенів (дуже дешево!)
Як отримати Qwen API ключ:
- Відвідайте: https://dashscope.aliyuncs.com
- Зареєструйтеся: Використовуючи акаунт Alibaba Cloud
- Активуйте сервіс: Активуйте DashScope сервіс
- Створіть API ключ:
- Перейдіть в управління API ключами
- Створіть новий ключ
- Скопіюйте та збережіть (починається з
sk-)
Примітка: Може знадобитися китайський номер телефону для реєстрації
Доступні два режими конфігурації:
- 🌟 Режим новачка: Один трейдер + монети за замовчуванням (Рекомендується!)
- ⚔️ Експертний режим: Змагання кількох трейдерів
Крок 1: Скопіюйте та перейменуйте файл прикладу конфігурації
cp config.json.example config.jsonКрок 2: Відредагуйте config.json та заповніть ваші API ключі
{
"traders": [
{
"id": "my_trader",
"name": "Мій AI Трейдер",
"ai_model": "deepseek",
"binance_api_key": "YOUR_BINANCE_API_KEY",
"binance_secret_key": "YOUR_BINANCE_SECRET_KEY",
"use_qwen": false,
"deepseek_key": "sk-xxxxxxxxxxxxx",
"qwen_key": "",
"initial_balance": 1000.0,
"scan_interval_minutes": 3
}
],
"leverage": {
"btc_eth_leverage": 5,
"altcoin_leverage": 5
},
"use_default_coins": true,
"coin_pool_api_url": "",
"oi_top_api_url": "",
"api_server_port": 8080
}Крок 3: Замініть заповнювачі вашими фактичними ключами
| Заповнювач | Замінити на | Де отримати |
|---|---|---|
YOUR_BINANCE_API_KEY |
Ваш Binance API ключ | Binance → Акаунт → Управління API |
YOUR_BINANCE_SECRET_KEY |
Ваш Binance Secret ключ | Те ж саме |
sk-xxxxxxxxxxxxx |
Ваш DeepSeek API ключ | platform.deepseek.com |
Крок 4: Налаштуйте початковий баланс (опціонально)
initial_balance: Встановіть ваш фактичний баланс Binance Futures акаунта- Використовується для розрахунку P/L відсотків
- Приклад: Якщо у вас 500 USDT, встановіть
"initial_balance": 500.0
✅ Контрольний список конфігурації:
- Binance API ключ заповнено (без лапок)
- Binance Secret ключ заповнено (без лапок)
- DeepSeek API ключ заповнено (починається з
sk-) -
use_default_coinsвстановлено вtrue(для новачків) -
initial_balanceвідповідає балансу акаунта - Файл збережено як
config.json(не.example)
NOFX також підтримує Hyperliquid - децентралізовану біржу безстрокових ф'ючерсів. Щоб використовувати Hyperliquid замість Binance:
Крок 1: Отримайте приватний ключ Ethereum (для автентифікації Hyperliquid)
- Відкрийте MetaMask (або будь-який Ethereum гаманець)
- Експортуйте приватний ключ
- Видаліть префікс
0xз ключа - Поповніть гаманець на Hyperliquid
Крок 2: Налаштуйте config.json для Hyperliquid
{
"traders": [
{
"id": "hyperliquid_trader",
"name": "My Hyperliquid Trader",
"ai_model": "deepseek",
"exchange": "hyperliquid",
"hyperliquid_private_key": "your_private_key_without_0x",
"hyperliquid_testnet": false,
"deepseek_key": "sk-xxxxxxxxxxxxx",
"initial_balance": 1000.0,
"scan_interval_minutes": 3
}
],
"use_default_coins": true,
"api_server_port": 8080
}Ключові відмінності від конфігурації Binance:
- Замініть
binance_api_key+binance_secret_keyнаhyperliquid_private_key - Додайте поле
"exchange": "hyperliquid" - Встановіть
hyperliquid_testnet: falseдля мейннету (абоtrueдля тестнету)
NOFX також підтримує Aster DEX - децентралізовану біржу безстрокових ф'ючерсів, сумісну з Binance!
Чому обрати Aster?
- 🎯 API сумісний з Binance (легка міграція)
- 🔐 Система безпеки API гаманця
- 💰 Нижчі комісії за торгівлю
- 🌐 Підтримка кількох ланцюгів (ETH, BSC, Polygon)
- 🌍 Не потрібна KYC
Крок 1: Створіть Aster API гаманець
- Відвідайте Aster API Wallet
- Підключіть основний гаманець (MetaMask, WalletConnect тощо)
- Натисніть "Створити API гаманець"
- Збережіть ці 3 елементи негайно:
- Адреса основного гаманця (User)
- Адреса API гаманця (Signer)
- Приватний ключ API гаманця (
⚠️ показується лише один раз!)
Крок 2: Налаштуйте config.json для Aster
{
"traders": [
{
"id": "aster_deepseek",
"name": "Aster DeepSeek Trader",
"ai_model": "deepseek",
"exchange": "aster",
"aster_user": "0x63DD5aCC6b1aa0f563956C0e534DD30B6dcF7C4e",
"aster_signer": "0x21cF8Ae13Bb72632562c6Fff438652Ba1a151bb0",
"aster_private_key": "4fd0a42218f3eae43a6ce26d22544e986139a01e5b34a62db53757ffca81bae1",
"deepseek_key": "sk-xxxxxxxxxxxxx",
"initial_balance": 1000.0,
"scan_interval_minutes": 3
}
],
"use_default_coins": true,
"api_server_port": 8080,
"leverage": {
"btc_eth_leverage": 5,
"altcoin_leverage": 5
}
}Ключові поля конфігурації:
"exchange": "aster"- Встановіть біржу на Asteraster_user- Адреса вашого основного гаманцяaster_signer- Адреса API гаманця (з Кроку 1)aster_private_key- Приватний ключ API гаманця (без префікса0x)
- API гаманець окремий від основного (додатковий рівень безпеки)
- Ніколи не діліться приватним ключем API
- Ви можете відкликати доступ API гаманця в будь-який час на asterdex.com
Для запуску кількох AI трейдерів, що змагаються один з одним:
{
"traders": [
{
"id": "qwen_trader",
"name": "Qwen AI Trader",
"ai_model": "qwen",
"binance_api_key": "YOUR_BINANCE_API_KEY_1",
"binance_secret_key": "YOUR_BINANCE_SECRET_KEY_1",
"use_qwen": true,
"qwen_key": "sk-xxxxx",
"deepseek_key": "",
"initial_balance": 1000.0,
"scan_interval_minutes": 3
},
{
"id": "deepseek_trader",
"name": "DeepSeek AI Trader",
"ai_model": "deepseek",
"binance_api_key": "YOUR_BINANCE_API_KEY_2",
"binance_secret_key": "YOUR_BINANCE_SECRET_KEY_2",
"use_qwen": false,
"qwen_key": "",
"deepseek_key": "sk-xxxxx",
"initial_balance": 1000.0,
"scan_interval_minutes": 3
}
],
"use_default_coins": true,
"coin_pool_api_url": "",
"oi_top_api_url": "",
"api_server_port": 8080
}Вимоги для режиму змагання:
- 2 окремі Binance Futures акаунти (різні API ключі)
- Обидва AI API ключі (Qwen + DeepSeek)
- Більше тестових коштів (Рекомендується: 500+ USDT на акаунт)
| Поле | Опис | Приклад значення | Обов'язково? |
|---|---|---|---|
id |
Унікальний ідентифікатор для цього трейдера | "my_trader" |
✅ Так |
name |
Відображуване ім'я | "Мій AI Трейдер" |
✅ Так |
ai_model |
Використовуваний AI провайдер | "deepseek" або "qwen" |
✅ Так |
binance_api_key |
Binance API ключ | "abc123..." |
✅ Так |
binance_secret_key |
Binance Secret ключ | "xyz789..." |
✅ Так |
use_qwen |
Використовувати чи Qwen | true або false |
✅ Так |
deepseek_key |
DeepSeek API ключ | "sk-xxx" |
Потрібно при використанні DeepSeek |
qwen_key |
Qwen API ключ | "sk-xxx" |
Потрібно при використанні Qwen |
initial_balance |
Початковий баланс для розрахунку P/L | 1000.0 |
✅ Так |
scan_interval_minutes |
Частота рішень (хвилини) | 3 (рекомендується 3-5) |
✅ Так |
leverage |
Конфігурація плеча (v2.0.3+) | Див. нижче | ✅ Так |
btc_eth_leverage |
Максимальне плече для BTC/ETH |
5 (за замовчуванням, безпечно)50 (максимум для основного акаунта) |
✅ Так |
altcoin_leverage |
Максимальне плече для альткоїнів |
5 (за замовчуванням, безпечно)20 (максимум для основного акаунта) |
✅ Так |
use_default_coins |
Використовувати вбудований список монет ✨ Розумне значення за замовчуванням: true (v2.0.2+)Автоматично включається без API |
true або опустити |
❌ Ні (Опціонально, авто) |
coin_pool_api_url |
API користувацького пулу монет Потрібно лише при use_default_coins: false |
"" (пусто) |
❌ Ні |
oi_top_api_url |
API відкритого інтересу Опціональні додаткові дані |
"" (пусто) |
❌ Ні |
api_server_port |
Порт веб-панелі | 8080 |
✅ Так |
Монети за замовчуванням для торгівлі (коли use_default_coins: true):
- BTC, ETH, SOL, BNB, XRP, DOGE, ADA, HYPE
Що таке конфігурація плеча?
Налаштування плеча контролюють максимальне плече, яке AI може використовувати для кожної угоди. Це критично важливо для управління ризиками, особливо для субакаунтів Binance, які мають обмеження по плечу.
Формат конфігурації:
"leverage": {
"btc_eth_leverage": 5, // Максимальне плече для BTC та ETH
"altcoin_leverage": 5 // Максимальне плече для всіх інших монет
}- Субакаунти: Обмежені ≤5x плечем від Binance
- Основні акаунти: Можуть використовувати до 20x (альткоїни) або 50x (BTC/ETH)
- Якщо ви використовуєте субакаунт і встановите плече >5x, угоди будуть завершуватися з помилкою:
Subaccounts are restricted from using leverage greater than 5x
Рекомендовані налаштування:
| Тип акаунта | Плече BTC/ETH | Плече альткоїнів | Рівень ризику |
|---|---|---|---|
| Субакаунт | 5 |
5 |
✅ Безпечно (за замовчуванням) |
| Основний (Консервативно) | 10 |
10 |
🟡 Середній |
| Основний (Агресивно) | 20 |
15 |
🔴 Високий |
| Основний (Максимум) | 50 |
20 |
🔴🔴 Дуже високий |
Приклади:
Безпечна конфігурація (субакаунт або консервативна):
"leverage": {
"btc_eth_leverage": 5,
"altcoin_leverage": 5
}Агресивна конфігурація (тільки основний акаунт):
"leverage": {
"btc_eth_leverage": 20,
"altcoin_leverage": 15
}Як AI використовує плече:
- AI може вибрати будь-яке плече від 1x до вашого налаштованого максимуму
- Наприклад, з
altcoin_leverage: 20, AI може вирішити використовувати 5x, 10x або 20x залежно від ринкових умов - Конфігурація встановлює верхню межу, а не фіксоване значення
- AI враховує волатильність, співвідношення ризик/дохід та баланс акаунта при виборі плеча
Розумна поведінка за замовчуванням (v2.0.2+):
Система тепер автоматично встановлює use_default_coins: true, якщо:
- Ви не включили це поле в config.json, або
- Ви встановили його в
false, але не надалиcoin_pool_api_url
Це робить систему більш дружньою для новачків! Ви навіть можете повністю опустити це поле.
Приклади конфігурації:
✅ Варіант 1: Явне вказання (Рекомендується для ясності)
"use_default_coins": true,
"coin_pool_api_url": "",
"oi_top_api_url": ""✅ Варіант 2: Опустити поле (Автоматично використовує монети за замовчуванням)
// Не включати "use_default_coins" взагалі
"coin_pool_api_url": "",
"oi_top_api_url": ""⚙️ Розширене: Використовувати зовнішній API
"use_default_coins": false,
"coin_pool_api_url": "http://your-api.com/coins",
"oi_top_api_url": "http://your-api.com/oi"Система складається з 2 частин, які необхідно запустити окремо:
- Backend (AI торговий мозок + API)
- Frontend (Веб-панель моніторингу)
Відкрийте термінал та виконайте:
# Зберіть програму (перший запуск або після змін коду)
go build -o nofx
# Запустіть backend
./nofxВи повинні побачити:
🚀 Запуск системи автоматичної торгівлі...
✓ Трейдер [my_trader] ініціалізовано
✓ API сервер запущено на порту 8080
📊 Починається моніторинг торгівлі...
| Повідомлення про помилку | Рішення |
|---|---|
invalid API key |
Перевірте Binance API ключі в config.json |
TA-Lib not found |
Виконайте brew install ta-lib (macOS) |
port 8080 already in use |
Змініть api_server_port в config.json |
DeepSeek API error |
Перевірте DeepSeek API ключ та баланс |
✅ Ознаки роботи Backend:
- Немає повідомлень про помилки
- З'являється "Починається моніторинг торгівлі..."
- Система показує баланс акаунта
- Тримайте це вікно терміналу відкритим!
Відкрийте нове вікно терміналу (тримайте перше відкритим!), потім:
cd web
npm run devВи повинні побачити:
VITE v5.x.x ready in xxx ms
➜ Local: http://localhost:3000/
➜ Network: use --host to expose
✅ Ознаки роботи Frontend:
- Повідомлення "Local: http://localhost:3000/"
- Немає повідомлень про помилки
- Також тримайте це вікно терміналу відкритим!
Відкрийте у веб-браузері:
Ви побачите:
- 📊 Баланс акаунта в реальному часі
- 📈 Позиції (якщо є)
- 🤖 AI логи рішень
- 📉 Графік капіталу
Підказки для першого використання:
- Перше AI рішення може зайняти 3-5 хвилин
- Початкове рішення може показати "спостереження" - це нормально
- AI повинен спочатку проаналізувати ринок
Що відстежувати:
✅ Ознаки здорової системи:
- Backend термінал показує цикли рішень кожні 3-5 хвилин
- Немає постійних повідомлень про помилки
- Оновлюється баланс акаунта
- Веб-панель автоматично оновлюється
- Повторювані API помилки
- Немає рішень більше 10 хвилин
- Швидко падаючий баланс
Перевірка стану системи:
# У новому вікні терміналу
curl http://localhost:8080/healthПовинно повернути: {"status":"ok"}
Витончене завершення (Рекомендується):
- Перейдіть до Backend терміналу (першого)
- Натисніть
Ctrl+C - Дочекайтеся повідомлення "Система зупинена"
- Перейдіть до Frontend терміналу (другого)
- Натисніть
Ctrl+C
- Завжди зупиняйте backend першим
- Дочекайтеся підтвердження перед закриттям терміналів
- Не примусово завершуйте (не закривайте термінали одразу)
Кожен цикл прийняття рішень (за замовчуванням 3 хвилини), система працює за наступним процесом:
┌──────────────────────────────────────────────────────────┐
│ 1. 📊 Аналіз історичної продуктивності │
│ (останні 20 циклів) │
├──────────────────────────────────────────────────────────┤
│ ✓ Розрахунок загального відсотка виграшів, середнього │
│ прибутку, співвідношення прибутку/збитку │
│ ✓ Статистика по кожній монеті (відсоток виграшів, │
│ середній P/L в USDT) │
│ ✓ Визначення найкращих/найгірших монет за │
│ продуктивністю │
│ ✓ Список деталей останніх 5 угод з точним P/L │
│ ✓ Розрахунок коефіцієнта Шарпа для оцінки ризику │
│ 📌 НОВЕ (v2.0.2): Точний P/L в USDT з врахуванням │
│ плеча │
└──────────────────────────────────────────────────────────┘
↓
┌──────────────────────────────────────────────────────────┐
│ 2. 💰 Отримання стану акаунта │
├──────────────────────────────────────────────────────────┤
│ • Капітал акаунта, доступний баланс, нереалізований │
│ P/L │
│ • Кількість позицій, загальний P/L (реалізований + │
│ нереалізований) │
│ • Використання маржі (поточне/максимальне) │
│ • Індикатори оцінки ризику │
└──────────────────────────────────────────────────────────┘
↓
┌──────────────────────────────────────────────────────────┐
│ 3. 🔍 Аналіз існуючих позицій (якщо є) │
├──────────────────────────────────────────────────────────┤
│ • Отримання ринкових даних для кожної позиції │
│ (3-хвилинні + 4-годинні свічки) │
│ • Розрахунок технічних індикаторів (RSI, MACD, EMA) │
│ • Відображення тривалості утримання позиції │
│ (наприклад, "утримується 2 години 15 хвилин") │
│ • AI визначає, чи потрібно закрити (тейк-профіт, │
│ стоп-лосс або коригування) │
│ 📌 НОВЕ (v2.0.2): Відстеження тривалості позиції │
│ допомагає AI вирішувати │
└──────────────────────────────────────────────────────────┘
↓
┌──────────────────────────────────────────────────────────┐
│ 4. 🎯 Оцінка нових можливостей (пул кандидатів монет) │
├──────────────────────────────────────────────────────────┤
│ • Отримання топ-20 монет з високим рейтингом AI500 │
│ • Отримання топ-20 монет з найшвидшим зростанням OI │
│ • Об'єднання, видалення дублікатів, фільтрація монет з │
│ низькою ліквідністю (OI < 15M USD) │
│ • Масове отримання ринкових даних та технічних │
│ індикаторів │
│ • Підготовка повних послідовностей сирих даних для │
│ кожної монети-кандидата │
└──────────────────────────────────────────────────────────┘
↓
┌──────────────────────────────────────────────────────────┐
│ 5. 🧠 Комплексне рішення AI │
├──────────────────────────────────────────────────────────┤
│ • Перегляд історичного зворотного зв'язку (відсоток │
│ виграшів, коефіцієнт P/L, найкращі/найгірші монети) │
│ • Отримання всіх даних послідовностей (свічки, │
│ індикатори, відкритий інтерес) │
│ • Аналіз Chain of Thought │
│ • Вивід рішення: закрити/відкрити/утримувати/спостерігати │
│ • Включає параметри плеча, розміру, стоп-лосса, │
│ тейк-профіта │
│ 📌 НОВЕ (v2.0.2): AI може вільно аналізувати сирі │
│ послідовності, не обмежений заздалегідь визначеними │
│ індикаторами │
└──────────────────────────────────────────────────────────┘
↓
┌──────────────────────────────────────────────────────────┐
│ 6. ⚡ Виконання угод │
├──────────────────────────────────────────────────────────┤
│ • Пріоритизація: спочатку закриття, потім відкриття │
│ • Автоматична адаптація точності (правила LOT_SIZE) │
│ • Запобігання накопиченню позицій (відхилення │
│ дублювання монета/напрямок) │
│ • Автоматична відміна всіх ордерів після закриття │
│ • Запис часу відкриття для відстеження тривалості │
│ позиції │
│ 📌 НОВЕ (v2.0.2): Відстеження часу відкриття позиції │
└──────────────────────────────────────────────────────────┘
↓
┌──────────────────────────────────────────────────────────┐
│ 7. 📝 Запис логів │
├──────────────────────────────────────────────────────────┤
│ • Збереження повного запису рішення в decision_logs/ │
│ • Включає ланцюг міркувань, JSON рішення, знімок │
│ акаунта, результати виконання │
│ • Зберігання повних даних позиції (кількість, плече, │
│ час відкриття/закриття) │
│ • Використання ключів symbol_side для запобігання │
│ конфліктів лонг/шорт │
│ 📌 НОВЕ (v2.0.2): Запобігання конфліктів при утриманні │
│ лонг + шорт, врахування кількості + плеча │
└──────────────────────────────────────────────────────────┘
📌 Відстеження тривалості позиції:
- Система тепер відстежує, як довго кожна позиція утримується
- Відображається в промпті користувача: "утримується 2 години 15 хвилин"
- Допомагає AI приймати кращі рішення про те, коли вийти
📌 Точний розрахунок P/L:
- Раніше: Лише відсоток (100U@5% = 1000U@5% = обидва показували "5.0")
- Тепер: Реальний прибуток в USDT = Вартість позиції × Зміна ціни × Плече
- Приклад: 1000 USDT × 5% × 20x = 1000 USDT фактичного прибутку
📌 Розширена свобода AI:
- AI може вільно аналізувати всі дані сирих послідовностей
- Більше не обмежений заздалегідь визначеними комбінаціями індикаторів
- Може виконувати власний аналіз трендів, розрахунок підтримки/опору
📌 Покращене відстеження позицій:
- Використовує ключ
symbol_side(наприклад, "BTCUSDT_long") - Запобігає конфліктам при одночасному утриманні лонг та шорт
- Зберігає повні дані: кількість, плече, час відкриття/закриття
{
"id": "qwen_trader",
"name": "Qwen AI Trader",
"ai_model": "qwen",
"binance_api_key": "ВАШ_BINANCE_API_KEY",
"binance_secret_key": "ВАШ_BINANCE_SECRET_KEY",
"use_qwen": true,
"qwen_key": "sk-xxxxx",
"scan_interval_minutes": 3,
"initial_balance": 1000.0
},
{
"id": "deepseek_trader",
"name": "DeepSeek AI Trader",
"ai_model": "deepseek",
"binance_api_key": "ВАШ_BINANCE_API_KEY_2",
"binance_secret_key": "ВАШ_BINANCE_SECRET_KEY_2",
"use_qwen": false,
"deepseek_key": "sk-xxxxx",
"scan_interval_minutes": 3,
"initial_balance": 1000.0
}
], "use_default_coins": false, "coin_pool_api_url": "http://x.x.x.x:xxx/api/ai500/list?auth=ВАШ_AUTH", "oi_top_api_url": "http://x.x.x.x:xxx/api/oi/top?auth=ВАШ_AUTH", "api_server_port": 8080 }
**Примітки до конфігурації:**
- `traders`: Налаштуйте 1-N трейдерів (один AI або змагання кількох AI)
- `id`: Унікальний ідентифікатор трейдера (використовується для директорії логів)
- `ai_model`: "qwen" або "deepseek"
- `binance_api_key/secret_key`: Кожен трейдер використовує незалежний акаунт Binance
- `initial_balance`: Початковий баланс (для розрахунку P/L%)
- `scan_interval_minutes`: Цикл прийняття рішень (рекомендується 3-5 хвилин)
- `use_default_coins`: **true** = Використовувати 8 основних монет за замовчуванням | **false** = Використовувати API пул монет (рекомендується для новачків: true)
- `coin_pool_api_url`: API пулу монет AI500 (опціонально, ігнорується при use_default_coins=true)
- `oi_top_api_url`: API відкритого інтересу OI Top (опціонально, якщо порожньо, дані OI Top пропускаються)
**Список монет за замовчуванням** (коли `use_default_coins: true`):
- BTC, ETH, SOL, BNB, XRP, DOGE, ADA, HYPE
### 5. Запуск системи
**Запуск backend (система AI торгівлі + API сервер):**
```bash
go build -o nofx
./nofx
Запуск frontend (веб-панель):
Відкрийте новий термінал:
cd web
npm run devДоступ до інтерфейсу:
Веб-панель: http://localhost:3000
API сервер: http://localhost:8080
Натисніть Ctrl+C в обох терміналах
- Ринки криптовалют надзвичайно волатильні, рішення AI не гарантують прибуток
- Торгівля ф'ючерсами використовує плече, збитки можуть перевищити основну суму
- Екстремальні ринкові умови можуть призвести до ліквідації
- Комісії за фінансування можуть вплинути на вартість утримання
- Ризик ліквідності: Деякі монети можуть відчувати проковзування
- Затримка мережі може викликати проковзування ціни
- Ліміти API можуть вплинути на виконання угод
- Тайм-аути AI API можуть викликати збої рішень
- Системні помилки можуть викликати неочікувану поведінку
✅ Рекомендується
- Використовуйте лише кошти, втрату яких ви можете дозволити для тестування
- Почніть з невеликих сум (рекомендується 100-500 USDT)
- Регулярно перевіряйте стан роботи системи
- Відстежуйте зміни балансу рахунку
- Аналізуйте логи рішень AI для розуміння стратегії
❌ Не рекомендується
- Інвестувати всі кошти або позичені гроші
- Запускати без нагляду на тривалі періоди
- Сліпо довіряти рішенням AI
- Використовувати без розуміння системи
- Запускати під час екстремальної волатильності ринку
Рішення: Встановіть бібліотеку TA-Lib
# macOS
brew install ta-lib
# Ubuntu
sudo apt-get install libta-lib0-devРішення: Система автоматично обробляє точність з Binance LOT_SIZE. Якщо помилка зберігається, перевірте мережеве підключення.
Рішення:
- Перевірте правильність API ключа
- Перевірте мережеве підключення (може знадобитися проксі)
- Тайм-аут системи встановлено на 120 секунд
Рішення:
- Переконайтеся, що backend запущено (http://localhost:8080)
- Перевірте, чи не зайнятий порт 8080
- Перевірте помилки в консолі браузера
Рішення:
- API пулу монет опціонален
- Якщо API не працює, система використовує основні монети за замовчуванням (BTC, ETH тощо)
- Перевірте URL API та параметр auth в config.json
Ліцензія MIT - Див. файл LICENSE для деталей
Вітаються Issues та Pull Requests!
- Зробіть Fork проєкту
- Створіть гілку функції (
git checkout -b feature/AmazingFeature) - Зафіксуйте зміни (
git commit -m 'Add some AmazingFeature') - Надішліть до гілки (
git push origin feature/AmazingFeature) - Відкрийте Pull Request
- Twitter/X: @Web3Tinkle
- GitHub Issues: Створити Issue
- Binance API - Binance Futures API
- DeepSeek - DeepSeek AI API
- Qwen - Alibaba Cloud Qwen
- TA-Lib - Бібліотека технічних індикаторів
- Recharts - Бібліотека графіків React
Критичні виправлення помилок - Історія угод та аналіз продуктивності:
Ця версія виправляє критичні помилки розрахунку в системі історичних записів угод та аналізу продуктивності, які значно впливали на статистику прибутковості.
1. Розрахунок P/L - Виправлення великої помилки (logger/decision_logger.go)
- Проблема: Раніше P/L розраховувався лише як відсоток, повністю ігноруючи розмір позиції та плече
- Приклад: Позиція 100 USDT з доходом 5% та позиція 1000 USDT з доходом 5% обидві показували
5.0як прибуток - Це робило аналіз продуктивності повністю неточним
- Приклад: Позиція 100 USDT з доходом 5% та позиція 1000 USDT з доходом 5% обидві показували
- Рішення: Тепер розраховується фактичний прибуток в USDT
P/L (USDT) = Вартість позиції × Зміна ціни % × Плече Приклад: 1000 USDT × 5% × 20x = 1000 USDT фактичного прибутку - Вплив: Відсоток виграшів, коефіцієнт прибутку та коефіцієнт Шарпа тепер засновані на точних сумах USDT
2. Відстеження позицій - Відсутність критичних даних
- Проблема: Записи відкритих позицій зберігали лише ціну та час, пропускаючи кількість та плече
- Рішення: Тепер зберігає повні торгові дані:
quantity: Розмір позиції (в монетах)leverage: Множник плеча (наприклад, 20x)- Ці дані необхідні для точного розрахунку P/L
3. Логіка ключа позиції - Конфлікт Long/Short
- Проблема: Використовувався
symbolяк ключ позиції, що викликало конфлікти даних при одночасному утриманні лонгів та шортів- Приклад: BTCUSDT лонг та BTCUSDT шорт перезаписували один одного
- Рішення: Змінено на формат
symbol_side(наприклад,BTCUSDT_long,BTCUSDT_short)- Тепер правильно розрізняє лонг та шорт позиції
4. Розрахунок коефіцієнта Шарпа - Оптимізація коду
- Проблема: Використовувався користувацький метод Ньютона для розрахунку квадратного кореня
- Рішення: Замінено на стандартну бібліотеку
math.Sqrt- Більш надійний, підтримуваний та ефективний
Чому це оновлення важливе:
- ✅ Історична статистика угод тепер показує реальний прибуток/збиток в USDT замість безглуздих відсотків
- ✅ Порівняння продуктивності між угодами з різним плечем тепер точне
- ✅ Механізм самонавчання AI отримує правильний історичний зворотний зв'язок
- ✅ Розрахунки коефіцієнта прибутку та коефіцієнта Шарпа тепер мають сенс
- ✅ Відстеження кількох позицій (лонг + шорт одночасно) тепер працює правильно
Рекомендація: Якщо ви запускали систему до цього оновлення, ваша історична статистика була неточною. Після оновлення до v2.0.2, нові угоди будуть розраховуватися правильно.
Виправлення помилок:
- ✅ Виправлено логіку обробки даних ComparisonChart - перехід від групування по cycle_number до timestamp
- ✅ Вирішено проблему заморожування графіка при перезапуску backend та скиданні cycle_number
- ✅ Покращено відображення даних графіка - тепер показує всі історичні точки в хронологічному порядку
- ✅ Покращені відладочні логи для кращої діагностики
Основні оновлення:
- ✅ Механізм самонавчання AI (історичний аналіз, аналіз продуктивності)
- ✅ Режим змагання кількох трейдерів (Qwen vs DeepSeek)
- ✅ UI в стилі Binance (повна імітація інтерфейсу Binance)
- ✅ Графіки порівняння продуктивності (порівняння ROI в реальному часі)
- ✅ Оптимізація контролю ризиків (коригування ліміту позиції по монетах)
Останнє оновлення: 2025-10-29 (v2.0.2)
⚡ Досліджуйте можливості кількісної торгівлі з силою AI!