mirror of
https://github.com/NoFxAiOS/nofx.git
synced 2026-06-06 05:51:19 +08:00
Update readmes.
This commit is contained in:
@@ -8,8 +8,10 @@ feat: Add Aster DEX exchange support + fix precision issues
|
||||
|
||||
## Bug Fixes
|
||||
- Fix precision error (code -1111) for all order types
|
||||
- Fix "Quantity less than zero" error (code -4003) when closing positions
|
||||
- Implement proper float-to-string conversion with exchange precision
|
||||
- Add automatic precision fetching from /exchangeInfo endpoint
|
||||
- Add quantity=0 handling in CloseLong/CloseShort (auto-detect position size)
|
||||
- Remove trailing zeros from formatted values
|
||||
|
||||
## Documentation
|
||||
|
||||
164
README.ru.md
164
README.ru.md
@@ -9,7 +9,7 @@
|
||||
|
||||
---
|
||||
|
||||
Автоматизированная система торговли фьючерсами Binance на базе **DeepSeek/Qwen AI**, поддерживающая **конкуренцию нескольких AI-моделей в реальной торговле**, с полным анализом рынка, принятием решений AI, **механизмом самообучения** и профессиональным веб-интерфейсом мониторинга.
|
||||
Автоматизированная система торговли криптовалютными фьючерсами на базе **DeepSeek/Qwen AI**, поддерживающая **Binance, Hyperliquid и Aster DEX биржи**, **конкуренцию нескольких AI-моделей в реальной торговле**, с полным анализом рынка, принятием решений AI, **механизмом самообучения** и профессиональным веб-интерфейсом мониторинга.
|
||||
|
||||
> ⚠️ **Предупреждение о рисках**: Эта система экспериментальная. Автоматическая торговля с AI несет значительные риски. Настоятельно рекомендуется использовать только для обучения/исследований или тестирования с небольшими суммами!
|
||||
|
||||
@@ -21,6 +21,63 @@
|
||||
|
||||
---
|
||||
|
||||
## 🆕 Последние обновления
|
||||
|
||||
### 🚀 Поддержка нескольких бирж!
|
||||
|
||||
NOFX теперь поддерживает **три основные биржи**: Binance, Hyperliquid и Aster DEX!
|
||||
|
||||
#### **Биржа Hyperliquid**
|
||||
|
||||
Высокопроизводительная децентрализованная биржа бессрочных фьючерсов!
|
||||
|
||||
**Ключевые особенности:**
|
||||
- ✅ Полная поддержка торговли (лонг/шорт, плечо, стоп-лосс/тейк-профит)
|
||||
- ✅ Автоматическая обработка точности (размер и цена ордера)
|
||||
- ✅ Единый интерфейс трейдера (бесшовное переключение бирж)
|
||||
- ✅ Поддержка мейннета и тестнета
|
||||
- ✅ Не нужны API ключи - только приватный ключ Ethereum
|
||||
|
||||
**Почему Hyperliquid?**
|
||||
- 🔥 Более низкие комиссии чем на централизованных биржах
|
||||
- 🔒 Без хранения - вы контролируете свои средства
|
||||
- ⚡ Быстрое исполнение с расчетом на цепи
|
||||
- 🌍 Не нужна KYC
|
||||
|
||||
**Быстрый старт:**
|
||||
1. Получите приватный ключ MetaMask (удалите префикс `0x`)
|
||||
2. Установите `"exchange": "hyperliquid"` в config.json
|
||||
3. Добавьте `"hyperliquid_private_key": "your_key"`
|
||||
4. Начните торговать!
|
||||
|
||||
См. [Руководство по конфигурации](#-альтернатива-использование-биржи-hyperliquid).
|
||||
|
||||
#### **Биржа Aster DEX** (НОВОЕ! v2.0.2)
|
||||
|
||||
Децентрализованная биржа бессрочных фьючерсов, совместимая с Binance!
|
||||
|
||||
**Ключевые особенности:**
|
||||
- ✅ API в стиле Binance (легкая миграция с Binance)
|
||||
- ✅ Web3 аутентификация кошелька (безопасно и децентрализованно)
|
||||
- ✅ Полная поддержка торговли с автоматической обработкой точности
|
||||
- ✅ Более низкие комиссии за торговлю чем CEX
|
||||
- ✅ Совместимость с EVM (Ethereum, BSC, Polygon и т.д.)
|
||||
|
||||
**Почему Aster?**
|
||||
- 🎯 **API совместимый с Binance** - нужны минимальные изменения кода
|
||||
- 🔐 **Система API кошелька** - отдельный торговый кошелек для безопасности
|
||||
- 💰 **Конкурентные комиссии** - ниже чем большинство централизованных бирж
|
||||
- 🌐 **Поддержка нескольких цепей** - торгуйте на вашей любимой EVM цепи
|
||||
|
||||
**Быстрый старт:**
|
||||
1. Посетите [Aster API Wallet](https://www.asterdex.com/en/api-wallet)
|
||||
2. Подключите основной кошелек и создайте API кошелек
|
||||
3. Скопируйте адрес API Signer и приватный ключ
|
||||
4. Установите `"exchange": "aster"` в config.json
|
||||
5. Добавьте `"aster_user"`, `"aster_signer"` и `"aster_private_key"`
|
||||
|
||||
---
|
||||
|
||||
## ✨ Основные возможности
|
||||
|
||||
### 🏆 Режим конкуренции нескольких AI
|
||||
@@ -308,6 +365,111 @@ cp config.json.example config.json
|
||||
|
||||
---
|
||||
|
||||
#### 🔷 Альтернатива: Использование биржи Hyperliquid
|
||||
|
||||
**NOFX также поддерживает Hyperliquid** - децентрализованную биржу бессрочных фьючерсов. Чтобы использовать Hyperliquid вместо Binance:
|
||||
|
||||
**Шаг 1**: Получите приватный ключ Ethereum (для аутентификации Hyperliquid)
|
||||
|
||||
1. Откройте **MetaMask** (или любой Ethereum кошелек)
|
||||
2. Экспортируйте приватный ключ
|
||||
3. **Удалите префикс `0x`** из ключа
|
||||
4. Пополните кошелек на [Hyperliquid](https://hyperliquid.xyz)
|
||||
|
||||
**Шаг 2**: Настройте `config.json` для Hyperliquid
|
||||
|
||||
```json
|
||||
{
|
||||
"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` для тестнета)
|
||||
|
||||
**⚠️ Предупреждение безопасности**: Никогда не делитесь приватным ключом! Используйте отдельный кошелек для торговли, а не основной.
|
||||
|
||||
---
|
||||
|
||||
#### 🔶 Альтернатива: Использование биржи Aster DEX
|
||||
|
||||
**NOFX также поддерживает Aster DEX** - децентрализованную биржу бессрочных фьючерсов, совместимую с Binance!
|
||||
|
||||
**Почему выбрать Aster?**
|
||||
- 🎯 API совместимый с Binance (легкая миграция)
|
||||
- 🔐 Система безопасности API кошелька
|
||||
- 💰 Более низкие комиссии за торговлю
|
||||
- 🌐 Поддержка нескольких цепей (ETH, BSC, Polygon)
|
||||
- 🌍 Не нужна KYC
|
||||
|
||||
**Шаг 1**: Создайте Aster API кошелек
|
||||
|
||||
1. Посетите [Aster API Wallet](https://www.asterdex.com/en/api-wallet)
|
||||
2. Подключите основной кошелек (MetaMask, WalletConnect и т.д.)
|
||||
3. Нажмите "Создать API кошелек"
|
||||
4. **Сохраните эти 3 элемента немедленно:**
|
||||
- Адрес основного кошелька (User)
|
||||
- Адрес API кошелька (Signer)
|
||||
- Приватный ключ API кошелька (⚠️ показывается только один раз!)
|
||||
|
||||
**Шаг 2**: Настройте `config.json` для Aster
|
||||
|
||||
```json
|
||||
{
|
||||
"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"` - Установите биржу на Aster
|
||||
- `aster_user` - Адрес вашего основного кошелька
|
||||
- `aster_signer` - Адрес API кошелька (из Шага 1)
|
||||
- `aster_private_key` - Приватный ключ API кошелька (без префикса `0x`)
|
||||
|
||||
**⚠️ Примечания безопасности**:
|
||||
- API кошелек отдельный от основного (дополнительный уровень безопасности)
|
||||
- Никогда не делитесь приватным ключом API
|
||||
- Вы можете отозвать доступ API кошелька в любое время на [asterdex.com](https://www.asterdex.com/en/api-wallet)
|
||||
|
||||
---
|
||||
|
||||
#### ⚔️ Экспертный режим: Конкуренция нескольких трейдеров
|
||||
|
||||
Для запуска нескольких AI трейдеров, конкурирующих друг с другом:
|
||||
|
||||
164
README.uk.md
164
README.uk.md
@@ -9,7 +9,7 @@
|
||||
|
||||
---
|
||||
|
||||
Автоматизована система торгівлі ф'ючерсами Binance на базі **DeepSeek/Qwen AI**, що підтримує **змагання кількох AI-моделей у реальній торгівлі**, з повним аналізом ринку, прийняттям рішень AI, **механізмом самонавчання** та професійним веб-інтерфейсом моніторингу.
|
||||
Автоматизована система торгівлі криптовалютними ф'ючерсами на базі **DeepSeek/Qwen AI**, що підтримує **Binance, Hyperliquid та Aster DEX біржі**, **змагання кількох AI-моделей у реальній торгівлі**, з повним аналізом ринку, прийняттям рішень AI, **механізмом самонавчання** та професійним веб-інтерфейсом моніторингу.
|
||||
|
||||
> ⚠️ **Попередження про ризики**: Ця система експериментальна. Автоматична торгівля з AI несе значні ризики. Наполегливо рекомендується використовувати лише для навчання/досліджень або тестування з невеликими сумами!
|
||||
|
||||
@@ -21,6 +21,63 @@
|
||||
|
||||
---
|
||||
|
||||
## 🆕 Останні оновлення
|
||||
|
||||
### 🚀 Підтримка кількох бірж!
|
||||
|
||||
NOFX тепер підтримує **три основні біржі**: Binance, Hyperliquid та Aster DEX!
|
||||
|
||||
#### **Біржа Hyperliquid**
|
||||
|
||||
Високопродуктивна децентралізована біржа безстрокових ф'ючерсів!
|
||||
|
||||
**Ключові особливості:**
|
||||
- ✅ Повна підтримка торгівлі (лонг/шорт, плече, стоп-лосс/тейк-профіт)
|
||||
- ✅ Автоматична обробка точності (розмір та ціна ордера)
|
||||
- ✅ Єдиний інтерфейс трейдера (безшовне перемикання бірж)
|
||||
- ✅ Підтримка мейннету та тестнету
|
||||
- ✅ Не потрібні API ключі - тільки приватний ключ Ethereum
|
||||
|
||||
**Чому Hyperliquid?**
|
||||
- 🔥 Нижчі комісії ніж на централізованих біржах
|
||||
- 🔒 Без зберігання - ви контролюєте свої кошти
|
||||
- ⚡ Швидке виконання з розрахунком на ланцюзі
|
||||
- 🌍 Не потрібна KYC
|
||||
|
||||
**Швидкий старт:**
|
||||
1. Отримайте приватний ключ MetaMask (видаліть префікс `0x`)
|
||||
2. Встановіть `"exchange": "hyperliquid"` в config.json
|
||||
3. Додайте `"hyperliquid_private_key": "your_key"`
|
||||
4. Почніть торгувати!
|
||||
|
||||
Див. [Посібник з конфігурації](#-альтернатива-використання-біржі-hyperliquid).
|
||||
|
||||
#### **Біржа Aster DEX** (НОВЕ! v2.0.2)
|
||||
|
||||
Децентралізована біржа безстрокових ф'ючерсів, сумісна з Binance!
|
||||
|
||||
**Ключові особливості:**
|
||||
- ✅ API в стилі Binance (легка міграція з Binance)
|
||||
- ✅ Web3 автентифікація гаманця (безпечно та децентралізовано)
|
||||
- ✅ Повна підтримка торгівлі з автоматичною обробкою точності
|
||||
- ✅ Нижчі комісії за торгівлю ніж CEX
|
||||
- ✅ Сумісність з EVM (Ethereum, BSC, Polygon тощо)
|
||||
|
||||
**Чому Aster?**
|
||||
- 🎯 **API сумісний з Binance** - потрібні мінімальні зміни коду
|
||||
- 🔐 **Система API гаманця** - окремий торговий гаманець для безпеки
|
||||
- 💰 **Конкурентні комісії** - нижче ніж більшість централізованих бірж
|
||||
- 🌐 **Підтримка кількох ланцюгів** - торгуйте на вашому улюбленому EVM ланцюзі
|
||||
|
||||
**Швидкий старт:**
|
||||
1. Відвідайте [Aster API Wallet](https://www.asterdex.com/en/api-wallet)
|
||||
2. Підключіть основний гаманець і створіть API гаманець
|
||||
3. Скопіюйте адресу API Signer та приватний ключ
|
||||
4. Встановіть `"exchange": "aster"` в config.json
|
||||
5. Додайте `"aster_user"`, `"aster_signer"` та `"aster_private_key"`
|
||||
|
||||
---
|
||||
|
||||
## ✨ Основні можливості
|
||||
|
||||
### 🏆 Режим змагання кількох AI
|
||||
@@ -308,6 +365,111 @@ cp config.json.example config.json
|
||||
|
||||
---
|
||||
|
||||
#### 🔷 Альтернатива: Використання біржі Hyperliquid
|
||||
|
||||
**NOFX також підтримує Hyperliquid** - децентралізовану біржу безстрокових ф'ючерсів. Щоб використовувати Hyperliquid замість Binance:
|
||||
|
||||
**Крок 1**: Отримайте приватний ключ Ethereum (для автентифікації Hyperliquid)
|
||||
|
||||
1. Відкрийте **MetaMask** (або будь-який Ethereum гаманець)
|
||||
2. Експортуйте приватний ключ
|
||||
3. **Видаліть префікс `0x`** з ключа
|
||||
4. Поповніть гаманець на [Hyperliquid](https://hyperliquid.xyz)
|
||||
|
||||
**Крок 2**: Налаштуйте `config.json` для Hyperliquid
|
||||
|
||||
```json
|
||||
{
|
||||
"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` для тестнету)
|
||||
|
||||
**⚠️ Попередження безпеки**: Ніколи не діліться приватним ключем! Використовуйте окремий гаманець для торгівлі, а не основний.
|
||||
|
||||
---
|
||||
|
||||
#### 🔶 Альтернатива: Використання біржі Aster DEX
|
||||
|
||||
**NOFX також підтримує Aster DEX** - децентралізовану біржу безстрокових ф'ючерсів, сумісну з Binance!
|
||||
|
||||
**Чому обрати Aster?**
|
||||
- 🎯 API сумісний з Binance (легка міграція)
|
||||
- 🔐 Система безпеки API гаманця
|
||||
- 💰 Нижчі комісії за торгівлю
|
||||
- 🌐 Підтримка кількох ланцюгів (ETH, BSC, Polygon)
|
||||
- 🌍 Не потрібна KYC
|
||||
|
||||
**Крок 1**: Створіть Aster API гаманець
|
||||
|
||||
1. Відвідайте [Aster API Wallet](https://www.asterdex.com/en/api-wallet)
|
||||
2. Підключіть основний гаманець (MetaMask, WalletConnect тощо)
|
||||
3. Натисніть "Створити API гаманець"
|
||||
4. **Збережіть ці 3 елементи негайно:**
|
||||
- Адреса основного гаманця (User)
|
||||
- Адреса API гаманця (Signer)
|
||||
- Приватний ключ API гаманця (⚠️ показується лише один раз!)
|
||||
|
||||
**Крок 2**: Налаштуйте `config.json` для Aster
|
||||
|
||||
```json
|
||||
{
|
||||
"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"` - Встановіть біржу на Aster
|
||||
- `aster_user` - Адреса вашого основного гаманця
|
||||
- `aster_signer` - Адреса API гаманця (з Кроку 1)
|
||||
- `aster_private_key` - Приватний ключ API гаманця (без префікса `0x`)
|
||||
|
||||
**⚠️ Примітки безпеки**:
|
||||
- API гаманець окремий від основного (додатковий рівень безпеки)
|
||||
- Ніколи не діліться приватним ключем API
|
||||
- Ви можете відкликати доступ API гаманця в будь-який час на [asterdex.com](https://www.asterdex.com/en/api-wallet)
|
||||
|
||||
---
|
||||
|
||||
#### ⚔️ Експертний режим: Змагання кількох трейдерів
|
||||
|
||||
Для запуску кількох AI трейдерів, що змагаються один з одним:
|
||||
|
||||
164
README.zh-CN.md
164
README.zh-CN.md
@@ -9,7 +9,7 @@
|
||||
|
||||
---
|
||||
|
||||
一个基于 **DeepSeek/Qwen AI** 的币安合约自动交易系统,支持**多AI模型实盘竞赛**,具备完整的市场分析、AI决策、**自我学习机制**和专业的Web监控界面。
|
||||
一个基于 **DeepSeek/Qwen AI** 的加密货币期货自动交易系统,支持 **Binance、Hyperliquid和Aster DEX交易所**,**多AI模型实盘竞赛**,具备完整的市场分析、AI决策、**自我学习机制**和专业的Web监控界面。
|
||||
|
||||
> ⚠️ **风险提示**:本系统为实验性项目,AI自动交易存在重大风险,强烈建议仅用于学习研究或小额资金测试!
|
||||
|
||||
@@ -21,6 +21,63 @@
|
||||
|
||||
---
|
||||
|
||||
## 🆕 最新更新
|
||||
|
||||
### 🚀 多交易所支持!
|
||||
|
||||
NOFX现已支持**三大交易所**:Binance、Hyperliquid和Aster DEX!
|
||||
|
||||
#### **Hyperliquid交易所**
|
||||
|
||||
高性能的去中心化永续期货交易所!
|
||||
|
||||
**核心特性:**
|
||||
- ✅ 完整交易支持(做多/做空、杠杆、止损/止盈)
|
||||
- ✅ 自动精度处理(订单数量和价格)
|
||||
- ✅ 统一trader接口(无缝切换交易所)
|
||||
- ✅ 支持主网和测试网
|
||||
- ✅ 无需API密钥 - 只需以太坊私钥
|
||||
|
||||
**为什么选择Hyperliquid?**
|
||||
- 🔥 比中心化交易所手续费更低
|
||||
- 🔒 非托管 - 你掌控自己的资金
|
||||
- ⚡ 快速执行与链上结算
|
||||
- 🌍 无需KYC
|
||||
|
||||
**快速开始:**
|
||||
1. 获取你的MetaMask私钥(去掉`0x`前缀)
|
||||
2. 在config.json中设置`"exchange": "hyperliquid"`
|
||||
3. 添加`"hyperliquid_private_key": "your_key"`
|
||||
4. 开始交易!
|
||||
|
||||
详见[配置指南](#-备选使用hyperliquid交易所)。
|
||||
|
||||
#### **Aster DEX交易所**(新!v2.0.2)
|
||||
|
||||
兼容Binance的去中心化永续期货交易所!
|
||||
|
||||
**核心特性:**
|
||||
- ✅ Binance风格API(从Binance轻松迁移)
|
||||
- ✅ Web3钱包认证(安全且去中心化)
|
||||
- ✅ 完整交易支持,自动精度处理
|
||||
- ✅ 比中心化交易所手续费更低
|
||||
- ✅ 兼容EVM(以太坊、BSC、Polygon等)
|
||||
|
||||
**为什么选择Aster?**
|
||||
- 🎯 **兼容Binance API** - 需要最少的代码修改
|
||||
- 🔐 **API钱包系统** - 独立交易钱包提升安全性
|
||||
- 💰 **有竞争力的手续费** - 比大多数中心化交易所更低
|
||||
- 🌐 **多链支持** - 在你喜欢的EVM链上交易
|
||||
|
||||
**快速开始:**
|
||||
1. 访问[Aster API钱包](https://www.asterdex.com/en/api-wallet)
|
||||
2. 连接你的主钱包并创建API钱包
|
||||
3. 复制API Signer地址和私钥
|
||||
4. 在config.json中设置`"exchange": "aster"`
|
||||
5. 添加`"aster_user"`、`"aster_signer"`和`"aster_private_key"`
|
||||
|
||||
---
|
||||
|
||||
## ✨ 核心特性
|
||||
|
||||
### 🏆 多AI竞赛模式
|
||||
@@ -371,6 +428,111 @@ cp config.json.example config.json
|
||||
|
||||
---
|
||||
|
||||
#### 🔷 备选:使用Hyperliquid交易所
|
||||
|
||||
**NOFX也支持Hyperliquid** - 去中心化永续期货交易所。使用Hyperliquid而非Binance:
|
||||
|
||||
**步骤1**:获取以太坊私钥(用于Hyperliquid身份验证)
|
||||
|
||||
1. 打开**MetaMask**(或任何以太坊钱包)
|
||||
2. 导出你的私钥
|
||||
3. **去掉`0x`前缀**
|
||||
4. 在[Hyperliquid](https://hyperliquid.xyz)上为钱包充值
|
||||
|
||||
**步骤2**:为Hyperliquid配置`config.json`
|
||||
|
||||
```json
|
||||
{
|
||||
"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配置的关键区别:**
|
||||
- 用`hyperliquid_private_key`替换`binance_api_key` + `binance_secret_key`
|
||||
- 添加`"exchange": "hyperliquid"`字段
|
||||
- 设置`hyperliquid_testnet: false`用于主网(或`true`用于测试网)
|
||||
|
||||
**⚠️ 安全警告**:切勿分享你的私钥!使用专门的钱包进行交易,而非主钱包。
|
||||
|
||||
---
|
||||
|
||||
#### 🔶 备选:使用Aster DEX交易所
|
||||
|
||||
**NOFX也支持Aster DEX** - 兼容Binance的去中心化永续期货交易所!
|
||||
|
||||
**为什么选择Aster?**
|
||||
- 🎯 兼容Binance API(轻松迁移)
|
||||
- 🔐 API钱包安全系统
|
||||
- 💰 更低的交易手续费
|
||||
- 🌐 多链支持(ETH、BSC、Polygon)
|
||||
- 🌍 无需KYC
|
||||
|
||||
**步骤1**:创建Aster API钱包
|
||||
|
||||
1. 访问[Aster API钱包](https://www.asterdex.com/en/api-wallet)
|
||||
2. 连接你的主钱包(MetaMask、WalletConnect等)
|
||||
3. 点击"创建API钱包"
|
||||
4. **立即保存这3项:**
|
||||
- 主钱包地址(User)
|
||||
- API钱包地址(Signer)
|
||||
- API钱包私钥(⚠️ 仅显示一次!)
|
||||
|
||||
**步骤2**:为Aster配置`config.json`
|
||||
|
||||
```json
|
||||
{
|
||||
"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"` - 设置交易所为Aster
|
||||
- `aster_user` - 你的主钱包地址
|
||||
- `aster_signer` - API钱包地址(来自步骤1)
|
||||
- `aster_private_key` - API钱包私钥(去掉`0x`前缀)
|
||||
|
||||
**⚠️ 安全提示**:
|
||||
- API钱包与主钱包分离(额外的安全层)
|
||||
- 切勿分享API私钥
|
||||
- 你可以随时在[asterdex.com](https://www.asterdex.com/en/api-wallet)撤销API钱包访问
|
||||
|
||||
---
|
||||
|
||||
#### ⚔️ 专家模式:多Trader竞赛
|
||||
|
||||
用于运行多个AI trader相互竞争:
|
||||
|
||||
@@ -646,6 +646,26 @@ func (t *AsterTrader) OpenShort(symbol string, quantity float64, leverage int) (
|
||||
|
||||
// CloseLong 平多单
|
||||
func (t *AsterTrader) CloseLong(symbol string, quantity float64) (map[string]interface{}, error) {
|
||||
// 如果数量为0,获取当前持仓数量
|
||||
if quantity == 0 {
|
||||
positions, err := t.GetPositions()
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
for _, pos := range positions {
|
||||
if pos["symbol"] == symbol && pos["side"] == "long" {
|
||||
quantity = pos["positionAmt"].(float64)
|
||||
break
|
||||
}
|
||||
}
|
||||
|
||||
if quantity == 0 {
|
||||
return nil, fmt.Errorf("没有找到 %s 的多仓", symbol)
|
||||
}
|
||||
log.Printf(" 📊 获取到多仓数量: %.8f", quantity)
|
||||
}
|
||||
|
||||
price, err := t.GetMarketPrice(symbol)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
@@ -673,6 +693,9 @@ func (t *AsterTrader) CloseLong(symbol string, quantity float64) (map[string]int
|
||||
priceStr := t.formatFloatWithPrecision(formattedPrice, prec.PricePrecision)
|
||||
qtyStr := t.formatFloatWithPrecision(formattedQty, prec.QuantityPrecision)
|
||||
|
||||
log.Printf(" 📏 精度处理: 价格 %.8f -> %s (精度=%d), 数量 %.8f -> %s (精度=%d)",
|
||||
limitPrice, priceStr, prec.PricePrecision, quantity, qtyStr, prec.QuantityPrecision)
|
||||
|
||||
params := map[string]interface{}{
|
||||
"symbol": symbol,
|
||||
"positionSide": "BOTH",
|
||||
@@ -693,11 +716,33 @@ func (t *AsterTrader) CloseLong(symbol string, quantity float64) (map[string]int
|
||||
return nil, err
|
||||
}
|
||||
|
||||
log.Printf("✓ 平多仓成功: %s 数量: %s", symbol, qtyStr)
|
||||
return result, nil
|
||||
}
|
||||
|
||||
// CloseShort 平空单
|
||||
func (t *AsterTrader) CloseShort(symbol string, quantity float64) (map[string]interface{}, error) {
|
||||
// 如果数量为0,获取当前持仓数量
|
||||
if quantity == 0 {
|
||||
positions, err := t.GetPositions()
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
for _, pos := range positions {
|
||||
if pos["symbol"] == symbol && pos["side"] == "short" {
|
||||
// Aster的GetPositions已经将空仓数量转换为正数,直接使用
|
||||
quantity = pos["positionAmt"].(float64)
|
||||
break
|
||||
}
|
||||
}
|
||||
|
||||
if quantity == 0 {
|
||||
return nil, fmt.Errorf("没有找到 %s 的空仓", symbol)
|
||||
}
|
||||
log.Printf(" 📊 获取到空仓数量: %.8f", quantity)
|
||||
}
|
||||
|
||||
price, err := t.GetMarketPrice(symbol)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
@@ -725,6 +770,9 @@ func (t *AsterTrader) CloseShort(symbol string, quantity float64) (map[string]in
|
||||
priceStr := t.formatFloatWithPrecision(formattedPrice, prec.PricePrecision)
|
||||
qtyStr := t.formatFloatWithPrecision(formattedQty, prec.QuantityPrecision)
|
||||
|
||||
log.Printf(" 📏 精度处理: 价格 %.8f -> %s (精度=%d), 数量 %.8f -> %s (精度=%d)",
|
||||
limitPrice, priceStr, prec.PricePrecision, quantity, qtyStr, prec.QuantityPrecision)
|
||||
|
||||
params := map[string]interface{}{
|
||||
"symbol": symbol,
|
||||
"positionSide": "BOTH",
|
||||
@@ -745,6 +793,7 @@ func (t *AsterTrader) CloseShort(symbol string, quantity float64) (map[string]in
|
||||
return nil, err
|
||||
}
|
||||
|
||||
log.Printf("✓ 平空仓成功: %s 数量: %s", symbol, qtyStr)
|
||||
return result, nil
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user