Skip to content

null12138/binance_bot

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

币安量化交易机器人

一个使用 Go 语言开发的币安量化交易机器人,支持Web界面操作,可连接测试网进行安全的策略测试。

功能特性

  • 📊 实时数据获取: 从币安API获取实时K线数据
  • 💹 历史数据展示: 可视化图表展示价格走势
  • 🤖 量化策略: 支持自定义交易策略
  • 🌐 Web界面: 直观的Web UI操作界面
  • 🧪 测试网支持: 连接币安测试网,无风险测试
  • 💾 数据存储: MySQL数据库存储历史数据和交易记录

快速开始

1. 环境要求

  • Go 1.21+
  • MySQL 5.7+
  • 币安测试网API密钥

2. 安装依赖

go mod init binance-quant-bot
go mod tidy

3. 配置环境

复制环境配置文件:

cp .env.example .env

编辑 .env 文件,配置你的API密钥:

BINANCE_API_KEY=your_testnet_api_key
BINANCE_SECRET_KEY=your_testnet_secret_key

4. 数据库设置

创建数据库:

CREATE DATABASE binance_bot CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

5. 运行程序

go run cmd/main.go

访问 http://localhost:8080 查看Web界面。

项目结构

binance-quant-bot/
├── cmd/                    # 入口文件
├── config/                 # 配置管理
├── internal/
│   ├── api/               # Web API处理器
│   ├── binance/           # 币安API客户端
│   ├── database/          # 数据库操作
│   ├── models/            # 数据模型
│   └── strategy/          # 交易策略
├── web/
│   ├── static/            # 静态资源
│   └── templates/         # HTML模板
├── .env.example           # 环境配置示例
└── go.mod                 # Go模块文件

API接口

获取K线数据

GET /api/v1/klines/{symbol}?interval=1h&limit=100

获取账户信息

GET /api/v1/account

创建策略

POST /api/v1/strategies
{
  "name": "策略名称",
  "symbol": "BTCUSDT",
  "interval": "1h",
  "config": "{\"buyThreshold\": 0.02, \"sellThreshold\": 0.02}"
}

更新策略状态

PUT /api/v1/strategies/{id}/status
{
  "status": "RUNNING"
}

交易策略

目前实现了简单的买低卖高策略:

  • 买入条件: 价格下跌超过阈值(默认2%)
  • 卖出条件: 价格上涨超过阈值(默认2%)
  • 风险控制: 设置最大持仓限制

策略配置示例:

{
  "buyThreshold": 0.02,    // 买入阈值(2%下跌)
  "sellThreshold": 0.02,   // 卖出阈值(2%上涨)
  "amount": 100,           // 每次交易金额(USDT)
  "maxPosition": 1000      // 最大持仓(USDT)
}

安全说明

  1. 测试网优先: 建议先在测试网环境测试策略
  2. API密钥管理: 不要在代码中硬编码API密钥
  3. 风险控制: 设置合理的止损和仓位控制
  4. 监控日志: 关注系统日志,及时发现异常

获取测试网API

  1. 访问 币安测试网
  2. 注册账户并登录
  3. 创建API密钥
  4. 将密钥配置到 .env 文件中

许可证

MIT License

免责声明

本项目仅供学习和研究使用。量化交易存在风险,请确保充分理解相关风险后再进行实际交易。作者不承担因使用本项目而造成的任何损失。

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors