Alpha Dawn Star Trading Framework.
在市场的黑夜中,寻找指引方向的黎明之星。
ADS Trading 是一个现代化、高性能的开源量化交易框架。它旨在为交易员和研究者提供一个从策略研究、回测验证到实盘交易的强大一体化解决方案。
- 🚀 极致性能:基于向量化计算与异步IO,提供高速的数据处理与回测体验。
- 📈 全流程覆盖:集成数据管理、策略开发、回测分析、实盘交易与风险监控。
- 🧠 AI友好:深度整合机器学习库(如Scikit-learn, PyTorch),便于开发AI驱动的交易策略。
- 🔧 模块化设计:高度解耦的架构,让您可以轻松替换或扩展任何组件(数据接口、执行引擎等)。
- 📊 丰富可视化:内置基于Chart.js的交互式图表,深入分析策略表现与交易行为。
- 🌐 多市场支持:无缝对接股票、期货、加密货币等多个市场。
- 📱 响应式UI:现代化的Web界面,支持桌面和移动端访问。
ADS-Trading/
├── ads_trading/ # 主源码目录
│ ├── main.py # 入口文件
│ └── trader/ # 交易核心模块
│ ├── backtest/ # 回测引擎
│ ├── data/ # 数据模块
│ ├── event/ # 事件系统
│ ├── gateway/ # 交易网关
│ ├── strategy/ # 策略模块
│ ├── utility/ # 工具模块
│ └── setting.py # 配置文件
├── web-ui/ # Web界面
│ ├── public/ # 静态资源
│ ├── src/ # 源代码
│ ├── package.json # 依赖配置
│ └── .gitignore # Git忽略文件
├── docs/ # 文档目录
│ ├── README.md # 主文档
│ ├── quickstart.md # 快速开始指南
│ ├── example_strategies.md # 示例策略
│ └── api_reference.md # API参考
├── tests/ # 测试目录
├── build.py # 构建脚本
├── requirements.txt # Python依赖
└── README.md # 项目说明
详细的快速开始指南,请参考 快速开始。
-
克隆仓库
git clone https://github.com/yourusername/ADS-Trading.git cd ADS-Trading -
安装Python依赖
# 创建虚拟环境(可选但推荐)
python3 -m venv venv source venv/bin/activate # macOS/Linux
pip install -r requirements.txt ```
- 安装Web UI依赖
cd web-ui npm install cd ..
-
运行策略引擎
python -m ads_trading.main
-
运行Web UI
cd web-ui npm start -
访问Web界面 打开浏览器,访问
http://localhost:3000
我们提供了多种交易策略示例,帮助您快速上手策略开发。详细请参考 示例策略。
主要示例包括:
- 双均线策略 - 基于移动平均线交叉的趋势跟踪策略
- RSI策略 - 基于相对强弱指标的超买超卖策略
- 布林带策略 - 基于价格通道突破的策略
- 海龟交易策略 - 经典的趋势跟踪策略
ADS Trading提供了简洁而强大的策略开发API。您可以通过继承BaseStrategy类来开发自己的策略:
from trader.strategy import BaseStrategy
from trader.object import BarData, OrderData, TradeData
class MyStrategy(BaseStrategy):
def __init__(self, engine, setting=None):
super().__init__(engine, setting)
self.pos = 0
def on_bar(self, bar: BarData):
# 策略逻辑
if bar.close_price > 10000 and self.pos == 0:
self.buy(bar.symbol, bar.close_price, 0.1)
elif bar.close_price < 9000 and self.pos > 0:
self.sell(bar.symbol, bar.close_price, self.pos)
def on_trade(self, trade: TradeData):
# 处理成交事件
if trade.direction == "buy":
self.pos += trade.quantity
else:
self.pos -= trade.quantity更多策略开发的详细信息,请参考 示例策略。
您可以使用回测引擎测试策略的历史表现:
from trader.backtest import BacktestEngine
from trader.strategy.moving_average import MovingAverageStrategy
from trader.constant import Interval
from datetime import datetime
# 初始化回测引擎
engine = BacktestEngine()
# 设置回测参数
engine.set_parameters(
strategy=MovingAverageStrategy,
symbol="BTC/USDT",
interval=Interval.HOUR,
start=datetime(2023, 1, 1),
end=datetime(2023, 12, 31),
initial_capital=10000,
slippage=0.001,
commission=0.0002
)
# 运行回测
engine.run()
# 获取回测结果
results = engine.get_results()
print(f"总收益率: {results['total_return']:.2%}")
print(f"年化收益率: {results['annual_return']:.2%}")
print(f"最大回撤: {results['max_drawdown']:.2%}")ADS Trading提供了现代化的Web界面,支持:
- 实时市场数据监控
- 价格历史图表分析
- 订单管理
- 持仓查看
- 交易历史记录
- 策略表现分析
Web界面支持响应式设计,可在桌面和移动设备上使用。
ADS Trading目前支持以下市场:
- 加密货币市场(Binance, OKX, Coinbase等)
- 股票市场
- 期货市场
我们欢迎社区贡献!如果您想为ADS Trading贡献代码或文档,请:
- Fork仓库
- 创建您的功能分支 (
git checkout -b feature/AmazingFeature) - 提交您的更改 (
git commit -m 'Add some AmazingFeature') - 推送到分支 (
git push origin feature/AmazingFeature) - 打开一个Pull Request
本项目采用MIT许可证 - 查看 LICENSE 文件了解详情。
如果您有任何问题或建议,欢迎通过以下方式联系我们:
- 提交Issue:在GitHub仓库提交Issue
- 发送邮件:[email protected]
- 加入社区:我们的社区链接
感谢所有为ADS Trading做出贡献的开发者和用户!
ADS Trading - 在市场的黑夜中,寻找指引方向的黎明之星。