链上韭菜保护协议 Logo
链上韭菜保护协议已通过

# 🔄 链上韭菜保护协议:Trade your Monad, Smartly> 基于机器学习的 Monad 链上智能交易系统 | AI-Powered Trading System for Monad Blockchain## 📋 项目概述### 项目定位Trade your Monad, Smartly 是一个端到端的量化交易系统,专门为 Monad 区块链生态设计。系统通过机器学习算法分析加密货币市场数据,生成交易信号,并支持在 Monad 主网的 Uniswap V4 上执行自动化交易。### 主要亮点✨ **核心优势**- 🤖 AI 驱动决策: 使用 XGBoost 分类器预测价格走势,准确率更高- 🧬 智能特征工程: 遗传算法自动挖掘高价值特征因子,无需人工设计- 🎯 自动超参数优化: 贝叶斯优化算法自动调参,提升模型性能- 📊 完整回测系统: 内置回测引擎,支持策略验证和绩效分析- 🔗 链上交易集成: 无缝对接 Monad 主网 Uniswap V4,支持实时交易- 🎨 零代码操作: 基于 Streamlit 的 Web 界面,无需编程即可使用### 使用场景- 📈 **量化交易者**: 需要自动化交易策略和信号生成- 🔬 **算法研究员**: 研究和测试机器学习交易模型- 💼 **DeFi 投资者**: 在 Monad 链上进行 MON/USDC 交易- 🎓 **学习者**: 学习量化交易和机器学习在金融领域的应用---## 🚀 快速开始### 环境要求- Python 3.10+ (推荐 3.10 或 3.11)- pip 包管理器### 安装步骤1. **克隆项目** ```bash git clone <your-repo-url> cd Monad_MHF_ML ```2. **安装依赖** ```bash pip install -r requirements.txt ```3. **配置环境变量** 创建 `.env` 文件: ```env MONAD_RPC_URL=https://rpc.monad.xyz ```4. **启动应用** ```bash streamlit run src/main.py ``` 应用将在浏览器中自动打开:`http://localhost:8501`### 运行步骤1. **数据采集** → 从币安 API 获取 MONUSDT 5 分钟 K 线数据2. **数据清洗** → 自动处理缺失值和异常值3. **数据预处理** → 去极值处理和标准化4. **特征工程** → 生成技术指标和统计特征5. **模型训练** → 训练 XGBoost 分类器(自动调参)6. **绩效分析** → 回测验证和策略评估7. **实时预测** → 生成交易信号8. **链上交易** → (可选)在 Monad 主网执行交易---## 🛠️ 技术栈### 核心技术| 类别 | 技术 | 用途 ||------|------|------|| **机器学习** | XGBoost, scikit-learn | 价格方向预测模型 || **优化算法** | scikit-optimize (Bayesian Optimization) | 超参数自动调优 || **特征工程** | 遗传算法 (GA) | 自动挖掘高价值特征 || **数据处理** | pandas, numpy | 数据清洗和预处理 || **数据源** | CCXT | 币安 API 数据获取 || **Web 框架** | Streamlit | 交互式 Web 界面 || **区块链** | Web3.py, eth-account | Monad 链上交易 || **可视化** | Plotly, Matplotlib | 数据可视化 |### 项目结构```Monad_MHF_ML/├── src/ # 源代码│ ├── main.py # Streamlit 主应用│ ├── data_loading.py # 数据采集模块│ ├── XGB_predict.py # 模型训练和预测│ └── performance_analysis.py # 回测和绩效分析├── data/ # 数据存储├── models/ # 模型文件├── results/ # 分析结果├── .streamlit/ # Streamlit 配置└── requirements.txt # 依赖列表```---## ⭐ 主要功能### 1. 数据采集与处理- ✅ 支持币安现货和合约市场数据- ✅ 可配置交易对、时间周期、回溯时间- ✅ 自动数据清洗和预处理- ✅ CSV 格式持久化存储### 2. 智能特征工程- ✅ 技术指标计算(RSI, MACD, 布林带等)- ✅ 统计特征提取(均值、标准差、偏度、峰度)- ✅ 遗传算法自动特征挖掘- ✅ 特征重要性分析### 3. 机器学习模型- ✅ XGBoost 二分类模型(涨/跌预测)- ✅ 贝叶斯优化自动调参- ✅ 类别权重平衡- ✅ 模型持久化保存### 4. 回测与绩效分析- ✅ 完整的历史回测系统- ✅ 交易记录分析- ✅ 绩效指标计算(收益率、夏普比率、最大回撤)- ✅ 权益曲线可视化- ✅ 特征重要性可视化### 5. 实时预测- ✅ 基于最新数据生成交易信号- ✅ 预测下一个 5 分钟周期价格方向- ✅ 实时市场信息显示### 6. 链上交易(可选)- ✅ 集成 Uniswap Widget- ✅ 支持 Monad 主网 MON/USDC 交易- ✅ Web3 钱包连接---## 🌐 部署### Streamlit Cloud 部署1. 将代码推送到 GitHub2. 访问 [Streamlit Cloud](https://share.streamlit.io/)3. 连接 GitHub 仓库4. 设置 Main file: `src/main.py`5. 配置环境变量:`MONAD_RPC_URL=https://rpc.monad.xyz`6. 点击 Deploy### 本地部署```bash# 使用启动脚本bash run_streamlit.sh# 或直接运行streamlit run src/main.py```---## ⚙️ 配置说明### 环境变量| 变量名 | 说明 | 默认值 ||--------|------|--------|| `MONAD_RPC_URL` | Monad RPC 端点 | `https://rpc.monad.xyz` || `PRIVATE_KEY` | 钱包私钥(可选) | - || `WALLET_ADDRESS` | 钱包地址(可选) | - |### Monad 主网配置- **链 ID**: 143- **交易对**: MON/USDC- **池子地址**: `0x18a9fc874581f3ba12b7898f80a683c66fd5877fd74b26a85ba9a3a79c549954`- **手续费率**: 0.05%---## 📊 模型说明### XGBoost 分类器- **任务**: 二分类(预测下一个 5 分钟周期涨/跌)- **特征**: 技术指标 + 统计特征 + GA 挖掘特征- **优化**: 贝叶斯优化(scikit-optimize)- **评估**: F1-score, Precision, Recall### 工作流程```数据采集 → 数据清洗 → 特征工程 → 模型训练 → 回测验证 → 实时预测 → 交易执行```---## 🔒 安全提示⚠️ **重要安全事项**- 🔐 私钥和敏感信息存储在 `.env` 文件中,**切勿提交到 Git**- 💰 链上交易涉及真实资金,请谨慎操作- 🧪 建议先在测试环境充分验证策略- 📝 本项目仅供学习和研究使用---## 📚 相关资源- 📖 [Monad 文档](https://docs.monad.xyz)- 📖 [Streamlit 文档](https://docs.streamlit.io)- 📖 [Uniswap 文档](https://docs.uniswap.org)- 📖 [XGBoost 文档](https://xgboost.readthedocs.io)---## 📄 许可证本项目采用 MIT 许可证 - 详见 [LICENSE](LICENSE) 文件## 🤝 贡献欢迎提交 Issue 和 Pull Request!---**免责声明**: 本项目仅供学习和研究使用。加密货币交易存在风险,请谨慎操作。作者不对任何交易损失负责。

项目截图

截图 1
截图 2
截图 3
截图 4
截图 5

创建者:WesleyWu

创建时间:2026年1月24日