Files
nofx/README.ru.md
T
tinkle-community a7d0ca8835 Docs: Add Docker one-click deployment support for all languages
Complete Docker deployment solution with beginner-friendly documentation:
**New Docker Files:**
- `Dockerfile` - Multi-stage Go backend build with health checks
- `web/Dockerfile` - Frontend build with Nginx and API proxy
- `docker-compose.yml` - Full orchestration with service dependencies
- `.dockerignore` & `web/.dockerignore` - Build optimization
- `start.sh` - Convenient management script (start/stop/logs/status)
**Comprehensive Documentation:**
- `DOCKER_DEPLOY.md` (中文) - Complete Chinese deployment guide
- `DOCKER_DEPLOY.en.md` (English) - Complete English deployment guide
  - Prerequisites & Docker installation (macOS/Windows/Linux)
  - 3-step quick start (config → start → access)
  - Service management commands
  - Advanced configuration (ports, resources, env vars)
  - Data persistence & backups
  - Comprehensive troubleshooting
  - Security recommendations
  - Production deployment (Nginx, HTTPS, Docker Swarm)
  - Monitoring & logging setup
**README Updates (All 4 Languages):**
- README.md (English)
- README.zh-CN.md (中文)
- README.uk.md (Українська)
- README.ru.md (Русский)
Added prominent "Option A: Docker One-Click Deployment" section at the
beginning of Quick Start in all languages. Clearly marked as EASIEST
method for beginners. Shows 3 simple steps with command examples and
links to detailed DOCKER_DEPLOY docs.
**Key Features:**
- One-command deployment: `./start.sh start --build`
- Auto-handles all dependencies (Go, Node.js, TA-Lib)
- Health checks for both services
- Data persistence (logs, cache, config)
- Log rotation (10MB × 3 files)
- Easy service management
- Beginner-friendly for complete newcomers
**User Benefits:**
- No need to install Go, Node.js, or TA-Lib manually
- Works on macOS, Windows, Linux
- Perfect for non-developers
- Production-ready with best practices
This makes NOFX truly accessible to beginners as requested: "真就让小白都能一键开始"
Co-Authored-By: tinkle-community <tinklefund@gmail.com>
2025-10-29 18:29:49 +08:00

56 KiB
Raw Blame History

🤖 NOFX - AI-управляемая система автоматической торговли фьючерсами Binance

Go Version React TypeScript License

Языки / Languages: English | 中文 | Українська | Русский


Автоматизированная система торговли фьючерсами Binance на базе DeepSeek/Qwen AI, поддерживающая конкуренцию нескольких AI-моделей в реальной торговле, с полным анализом рынка, принятием решений AI, механизмом самообучения и профессиональным веб-интерфейсом мониторинга.

⚠️ Предупреждение о рисках: Эта система экспериментальная. Автоматическая торговля с AI несет значительные риски. Настоятельно рекомендуется использовать только для обучения/исследований или тестирования с небольшими суммами!

👥 Сообщество разработчиков

Присоединяйтесь к нашему сообществу разработчиков в Telegram для обсуждения, обмена идеями и получения поддержки:

💬 Сообщество разработчиков NOFX


Основные возможности

🏆 Режим конкуренции нескольких AI

  • Qwen против DeepSeek - битва в реальной торговле
  • Независимое управление счетами и журналами решений
  • Графики сравнения производительности в реальном времени
  • Статистика ROI и процента выигрышей

🧠 Механизм самообучения AI (НОВИНКА!)

  • Исторический анализ: Анализирует последние 20 циклов торговли перед каждым решением
  • Умная оптимизация:
    • Определяет лучшие/худшие монеты по производительности
    • Рассчитывает процент выигрышей, соотношение прибыли/убытка, среднюю прибыль
    • Избегает повторения ошибок (последовательно убыточные монеты)
    • Усиливает успешные стратегии (паттерны с высоким процентом выигрышей)
  • Динамическая корректировка: AI автономно корректирует торговый стиль на основе исторической производительности

📊 Интеллектуальный анализ рынка

  • 3-минутная свеча: Цена в реальном времени, EMA20, MACD, RSI(7)
  • 4-часовая свеча: Долгосрочный тренд, EMA20/50, ATR, RSI(14)
  • Анализ открытого интереса: Настроения рынка, определение денежных потоков
  • Отслеживание топ OI: Топ-20 монет с самым быстрым ростом открытого интереса
  • Пул монет AI500: Автоматический отбор монет с высоким рейтингом
  • Фильтр ликвидности: Автоматическая фильтрация монет с низкой ликвидностью (<15M USD стоимости позиции)

🎯 Профессиональный контроль рисков

  • Лимит позиции по монете:
    • Альткоины ≤ 1.5x капитал счета
    • BTC/ETH ≤ 10x капитал счета
  • Фиксированное плечо: Альткоины 20x | BTC/ETH 50x
  • Управление маржой: Общее использование ≤90%, AI принимает автономные решения
  • Соотношение риск/доход: Обязательное ≥1:2 (стоп-лосс:тейк-профит)
  • Предотвращение накопления позиций: Запрет дублирования открытия той же монеты/направления

🎨 Профессиональный UI

  • Профессиональный торговый интерфейс: Визуальный дизайн в стиле Binance
  • Темная тема: Классическая цветовая схема (Золотой #F0B90B + темный фон)
  • Данные в реальном времени: Обновление каждые 5 секунд для счетов, позиций, графиков
  • Кривая капитала: График исторического тренда стоимости счета (переключение USD/процент)
  • График сравнения производительности: Сравнение ROI нескольких AI в реальном времени
  • Плавные анимации: Плавные эффекты наведения, переходов и загрузки

📝 Полная запись решений

  • Цепочка рассуждений: Полный процесс рассуждений AI (CoT)
  • Историческая производительность: Общий процент выигрышей, средняя прибыль, соотношение прибыли/убытка
  • Последние сделки: Детали последних 5 сделок (цена входа → цена выхода → P/L%)
  • Статистика по монетам: Производительность по каждой монете (процент выигрышей, средний P/L)
  • JSON логи: Полные записи решений для пост-анализа

💰 Регистрация аккаунта Binance (Экономьте на комиссиях!)

Перед использованием этой системы вам нужен аккаунт Binance Futures. Используйте нашу реферальную ссылку для получения скидки на комиссии:

🎁 Зарегистрироваться на Binance - Получить скидку

Шаги регистрации:

  1. Нажмите на ссылку выше чтобы перейти на страницу регистрации Binance
  2. Завершите регистрацию используя email/номер телефона
  3. Пройдите KYC верификацию (требуется для торговли фьючерсами)
  4. Активируйте аккаунт Futures:
    • Перейдите на главную страницу Binance → Деривативы → USD-M Фьючерсы
    • Нажмите "Открыть сейчас" для активации торговли фьючерсами
  5. Создайте API ключ:
    • Перейдите в Аккаунт → Управление API
    • Создайте новый API ключ, включите разрешение "Futures"
    • Сохраните API Key и Secret Key (необходимо для config.json)
    • Важно: Добавьте свой IP адрес в белый список для безопасности

Преимущества скидки:

  • Спотовая торговля: Скидка до 30% на комиссии
  • Торговля фьючерсами: Скидка до 30% на комиссии
  • Пожизненная: Постоянная скидка на все сделки

🚀 Быстрый старт

🐳 Вариант A: Docker развертывание в один клик (ПРОЩЕ ВСЕГО - Рекомендуется для новичков!)

Начните торговать за 3 простых шага с Docker - Не нужно ничего устанавливать!

Docker автоматически обрабатывает все зависимости (Go, Node.js, TA-Lib) и настройку среды. Идеально для новичков!

Шаг 1: Подготовьте конфигурацию

# Скопируйте шаблон конфигурации
cp config.json.example config.json

# Отредактируйте и заполните ваши API ключи
nano config.json  # или используйте любой редактор

Шаг 2: Запуск в один клик

# Вариант 1: Используйте удобный скрипт (Рекомендуется)
chmod +x start.sh
./start.sh start --build

# Вариант 2: Используйте docker-compose напрямую
docker-compose up -d --build

Шаг 3: Доступ к панели

Откройте в браузере: http://localhost:3000

Вот и все! 🎉 Ваша AI торговая система теперь работает!

Управление вашей системой

./start.sh logs      # Просмотреть логи
./start.sh status    # Проверить статус
./start.sh stop      # Остановить сервисы
./start.sh restart   # Перезапустить сервисы

📖 Подробное руководство по развертыванию Docker, устранению неполадок и расширенной конфигурации:


📦 Вариант B: Ручная установка (Для разработчиков)

Примечание: Если вы использовали развертывание Docker выше, пропустите этот раздел. Ручная установка нужна только если вы хотите изменить код или запустить без Docker.

1. Требования к среде

  • Go 1.21+
  • Node.js 18+
  • TA-Lib библиотека (расчет технических индикаторов)

Установка TA-Lib

macOS:

brew install ta-lib

Ubuntu/Debian:

sudo apt-get install libta-lib0-dev

Другие системы: См. Официальную документацию TA-Lib

2. Клонирование проекта

git clone https://github.com/tinkle-community/nofx.git
cd nofx

3. Установка зависимостей

Backend:

go mod download

Frontend:

cd web
npm install
cd ..

4. Получение AI API ключей

Перед настройкой системы вам необходимо получить AI API ключ. Выберите одного из следующих AI провайдеров:

Вариант 1: DeepSeek (Рекомендуется для новичков)

Почему DeepSeek?

  • 💰 Дешевле чем GPT-4 (примерно 1/10 стоимости)
  • 🚀 Быстрое время отклика
  • 🎯 Отличное качество торговых решений
  • 🌍 Доступен глобально без VPN

Как получить DeepSeek API ключ:

  1. Посетите: https://platform.deepseek.com
  2. Зарегистрируйтесь: Используя email/номер телефона
  3. Подтвердите: Завершите подтверждение email/телефона
  4. Пополните: Добавьте баланс на аккаунт
    • Минимум: ~$5 USD
    • Рекомендуется: $20-50 USD для тестирования
  5. Создайте API ключ:
    • Перейдите в раздел API Keys
    • Нажмите "Создать новый ключ"
    • Скопируйте и сохраните ключ (начинается с sk-)
    • ⚠️ Важно: Сохраните немедленно - позже увидеть не сможете!

Цена: Примерно $0.14 за миллион токенов (очень дешево!)

Вариант 2: Qwen (Alibaba Cloud Tongyi Qianwen)

Как получить Qwen API ключ:

  1. Посетите: https://dashscope.aliyuncs.com
  2. Зарегистрируйтесь: Используя аккаунт Alibaba Cloud
  3. Активируйте сервис: Активируйте DashScope сервис
  4. Создайте API ключ:
    • Перейдите в управление API ключами
    • Создайте новый ключ
    • Скопируйте и сохраните (начинается с sk-)

Примечание: Может потребоваться китайский номер телефона для регистрации


5. Конфигурация системы

Доступны два режима конфигурации:

  • 🌟 Режим новичка: Один трейдер + монеты по умолчанию (Рекомендуется!)
  • ⚔️ Экспертный режим: Конкуренция нескольких трейдеров

🌟 Конфигурация режима новичка (Рекомендуется)

Шаг 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
    }
  ],
  "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)

⚔️ Экспертный режим: Конкуренция нескольких трейдеров

Для запуска нескольких 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) Да
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

⚠️ Важно: Поле use_default_coins

Умное поведение по умолчанию (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"

6. Запуск системы

🚀 Запуск системы (2 шага)

Система состоит из 2 частей, которые необходимо запустить отдельно:

  1. Backend (AI торговый мозг + API)
  2. Frontend (Веб-панель мониторинга)

Шаг 1: Запустите Backend

Откройте терминал и выполните:

# Соберите программу (первый запуск или после изменений кода)
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:

  • Нет сообщений об ошибках
  • Появляется "Начинается мониторинг торговли..."
  • Система показывает баланс аккаунта
  • Держите это окно терминала открытым!

Шаг 2: Запустите Frontend

Откройте новое окно терминала (держите первое открытым!), затем:

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/"
  • Нет сообщений об ошибках
  • Также держите это окно терминала открытым!

Шаг 3: Доступ к панели

Откройте в веб-браузере:

🌐 http://localhost:3000

Вы увидите:

  • 📊 Баланс аккаунта в реальном времени
  • 📈 Позиции (если есть)
  • 🤖 AI логи решений
  • 📉 График капитала

Подсказки для первого использования:

  • Первое AI решение может занять 3-5 минут
  • Начальное решение может показать "наблюдение" - это нормально
  • AI должен сначала проанализировать рынок

7. Мониторинг системы

Что отслеживать:

Признаки здоровой системы:

  • Backend терминал показывает циклы решений каждые 3-5 минут
  • Нет постоянных сообщений об ошибках
  • Обновляется баланс аккаунта
  • Веб-панель автоматически обновляется

⚠️ Признаки предупреждения:

  • Повторяющиеся API ошибки
  • Нет решений более 10 минут
  • Быстро падающий баланс

Проверка состояния системы:

# В новом окне терминала
curl http://localhost:8080/health

Должно вернуть: {"status":"ok"}


8. Остановка системы

Изящное завершение (Рекомендуется):

  1. Перейдите к Backend терминалу (первому)
  2. Нажмите Ctrl+C
  3. Дождитесь сообщения "Система остановлена"
  4. Перейдите к Frontend терминалу (второму)
  5. Нажмите Ctrl+C

⚠️ Важно:

  • Всегда останавливайте backend первым
  • Дождитесь подтверждения перед закрытием терминалов
  • Не принудительно завершайте (не закрывайте терминалы сразу)

📖 Процесс принятия решений AI

Каждый цикл принятия решений (по умолчанию 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): Предотвращение конфликтов при       │
│     удержании лонг + шорт, учет количества + плеча       │
└──────────────────────────────────────────────────────────┘

Ключевые улучшения в 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")
  • Предотвращает конфликты при одновременном удержании лонг и шорт
  • Хранит полные данные: количество, плечо, время открытия/закрытия

⚠️ Важные предупреждения о рисках

Торговые риски

  1. Рынки криптовалют чрезвычайно волатильны, решения AI не гарантируют прибыль
  2. Торговля фьючерсами использует плечо, убытки могут превысить основную сумму
  3. Экстремальные рыночные условия могут привести к ликвидации
  4. Комиссии за финансирование могут повлиять на стоимость удержания
  5. Риск ликвидности: Некоторые монеты могут испытывать проскальзывание

Технические риски

  1. Задержка сети может вызвать проскальзывание цены
  2. Лимиты API могут повлиять на исполнение сделок
  3. Тайм-ауты AI API могут вызвать сбои решений
  4. Системные ошибки могут вызвать неожиданное поведение

Рекомендации по использованию

Рекомендуется

  • Используйте только средства, потерю которых вы можете позволить для тестирования
  • Начните с небольших сумм (рекомендуется 100-500 USDT)
  • Регулярно проверяйте состояние работы системы
  • Отслеживайте изменения баланса счета
  • Анализируйте логи решений AI для понимания стратегии

Не рекомендуется

  • Инвестировать все средства или заемные деньги
  • Запускать без присмотра на длительные периоды
  • Слепо доверять решениям AI
  • Использовать без понимания системы
  • Запускать во время экстремальной волатильности рынка

🛠️ Частые проблемы

1. Ошибка компиляции: TA-Lib не найдена

Решение: Установите библиотеку TA-Lib

# macOS
brew install ta-lib

# Ubuntu
sudo apt-get install libta-lib0-dev

2. Ошибка точности: Точность превышает максимум

Решение: Система автоматически обрабатывает точность из Binance LOT_SIZE. Если ошибка сохраняется, проверьте сетевое подключение.

3. Тайм-аут AI API

Решение:

  • Проверьте правильность API ключа
  • Проверьте сетевое подключение (может потребоваться прокси)
  • Тайм-аут системы установлен на 120 секунд

4. Frontend не может подключиться к backend

Решение:

  • Убедитесь, что backend запущен (http://localhost:8080)
  • Проверьте, не занят ли порт 8080
  • Проверьте ошибки в консоли браузера

5. Сбой API пула монет

Решение:

  • API пула монет опционален
  • Если API не работает, система использует основные монеты по умолчанию (BTC, ETH и т.д.)
  • Проверьте URL API и параметр auth в config.json

📄 Лицензия

Лицензия MIT - См. файл LICENSE для деталей


🤝 Вклад в проект

Приветствуются Issues и Pull Requests!

Руководство по разработке

  1. Сделайте Fork проекта
  2. Создайте ветку функции (git checkout -b feature/AmazingFeature)
  3. Зафиксируйте изменения (git commit -m 'Add some AmazingFeature')
  4. Отправьте в ветку (git push origin feature/AmazingFeature)
  5. Откройте Pull Request

📬 Контакты


🙏 Благодарности

  • Binance API - Binance Futures API
  • DeepSeek - DeepSeek AI API
  • Qwen - Alibaba Cloud Qwen
  • TA-Lib - Библиотека технических индикаторов
  • Recharts - Библиотека графиков React

🔄 История изменений

{
  "traders": [
    {
      "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 сервер):

go build -o nofx
./nofx

Запуск frontend (веб-панель):

Откройте новый терминал:

cd web
npm run dev

Доступ к интерфейсу:

Веб-панель: http://localhost:3000
API сервер: http://localhost:8080

6. Остановка системы

Нажмите Ctrl+C в обоих терминалах


⚠️ Важные предупреждения о рисках

Торговые риски

  1. Рынки криптовалют чрезвычайно волатильны, решения AI не гарантируют прибыль
  2. Торговля фьючерсами использует плечо, убытки могут превысить основную сумму
  3. Экстремальные рыночные условия могут привести к ликвидации
  4. Комиссии за финансирование могут повлиять на стоимость удержания
  5. Риск ликвидности: Некоторые монеты могут испытывать проскальзывание

Технические риски

  1. Задержка сети может вызвать проскальзывание цены
  2. Лимиты API могут повлиять на исполнение сделок
  3. Тайм-ауты AI API могут вызвать сбои решений
  4. Системные ошибки могут вызвать неожиданное поведение

Рекомендации по использованию

Рекомендуется

  • Используйте только средства, потерю которых вы можете позволить для тестирования
  • Начните с небольших сумм (рекомендуется 100-500 USDT)
  • Регулярно проверяйте состояние работы системы
  • Отслеживайте изменения баланса счета
  • Анализируйте логи решений AI для понимания стратегии

Не рекомендуется

  • Инвестировать все средства или заемные деньги
  • Запускать без присмотра на длительные периоды
  • Слепо доверять решениям AI
  • Использовать без понимания системы
  • Запускать во время экстремальной волатильности рынка

🛠️ Частые проблемы

1. Ошибка компиляции: TA-Lib не найдена

Решение: Установите библиотеку TA-Lib

# macOS
brew install ta-lib

# Ubuntu
sudo apt-get install libta-lib0-dev

2. Ошибка точности: Точность превышает максимум

Решение: Система автоматически обрабатывает точность из Binance LOT_SIZE. Если ошибка сохраняется, проверьте сетевое подключение.

3. Тайм-аут AI API

Решение:

  • Проверьте правильность API ключа
  • Проверьте сетевое подключение (может потребоваться прокси)
  • Тайм-аут системы установлен на 120 секунд

4. Frontend не может подключиться к backend

Решение:

  • Убедитесь, что backend запущен (http://localhost:8080)
  • Проверьте, не занят ли порт 8080
  • Проверьте ошибки в консоли браузера

5. Сбой API пула монет

Решение:

  • API пула монет опционален
  • Если API не работает, система использует основные монеты по умолчанию (BTC, ETH и т.д.)
  • Проверьте URL API и параметр auth в config.json

📄 Лицензия

Лицензия MIT - См. файл LICENSE для деталей


🤝 Вклад в проект

Приветствуются Issues и Pull Requests!

Руководство по разработке

  1. Сделайте Fork проекта
  2. Создайте ветку функции (git checkout -b feature/AmazingFeature)
  3. Зафиксируйте изменения (git commit -m 'Add some AmazingFeature')
  4. Отправьте в ветку (git push origin feature/AmazingFeature)
  5. Откройте Pull Request

📬 Контакты


🙏 Благодарности

  • Binance API - Binance Futures API
  • DeepSeek - DeepSeek AI API
  • Qwen - Alibaba Cloud Qwen
  • TA-Lib - Библиотека технических индикаторов
  • Recharts - Библиотека графиков React

🔄 История изменений

v2.0.2 (2025-10-29)

Критические исправления ошибок - История сделок и анализ производительности:

Эта версия исправляет критические ошибки расчета в системе исторических записей сделок и анализа производительности, которые значительно влияли на статистику прибыльности.

1. Расчет P/L - Исправление крупной ошибки (logger/decision_logger.go)

  • Проблема: Ранее P/L рассчитывался только как процент, полностью игнорируя размер позиции и плечо
    • Пример: Позиция 100 USDT с доходом 5% и позиция 1000 USDT с доходом 5% обе показывали 5.0 как прибыль
    • Это делало анализ производительности полностью неточным
  • Решение: Теперь рассчитывается фактическая прибыль в 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, новые сделки будут рассчитываться правильно.

v2.0.1 (2025-10-29)

Исправления ошибок:

  • Исправлена логика обработки данных ComparisonChart - переход от группировки по cycle_number к timestamp
  • Решена проблема замораживания графика при перезапуске backend и сбросе cycle_number
  • Улучшено отображение данных графика - теперь показывает все исторические точки в хронологическом порядке
  • Улучшенные отладочные логи для лучшей диагностики

v2.0.0 (2025-10-28)

Основные обновления:

  • Механизм самообучения AI (исторический анализ, анализ производительности)
  • Режим конкуренции нескольких трейдеров (Qwen vs DeepSeek)
  • UI в стиле Binance (полная имитация интерфейса Binance)
  • Графики сравнения производительности (сравнение ROI в реальном времени)
  • Оптимизация контроля рисков (корректировка лимита позиции по монетам)

Последнее обновление: 2025-10-29 (v2.0.2)

Исследуйте возможности количественной торговли с силой AI!


Star History

Star History Chart