【亲测免费】 Futu Algorithmic Trading Solution (Python) 使用教程
1. 项目介绍
Futu Algorithmic Trading Solution (Python) 是一个基于富途OpenAPI开发的量化交易程序。该项目旨在为香港股票市场的用户提供一个全面的量化交易解决方案,支持FutuNiuNiu和FutuMooMoo用户。项目的主要功能包括历史K线数据下载、回测交易策略、实时低延迟交易、高级股票筛选器以及即将推出的GUI支持。
2. 项目快速启动
2.1 安装依赖
首先,确保你已经安装了conda环境管理工具。然后,使用以下命令安装项目的依赖:
conda env create -f environment.yml
2.2 安装FutuOpenD
根据你的操作系统(Windows/MacOS/CentOS/Ubuntu),从以下链接下载并安装FutuOpenD:
https://www.futunn.com/download/OpenAPI
确保你至少有一个LV1的订阅级别,以便获取所需的行情数据。
2.3 配置文件
在项目根目录下创建一个config.ini文件,并根据以下模板进行配置:
[FutuOpenD Config]
Host = <OpenD Host>
Port = <OpenD Port>
WebSocketPort = <OpenD WebSocketPort>
WebSocketKey = <OpenD WebSocketKey>
TrdEnv = <SIMULATE or REAL>
[FutuOpenD Credential]
Username = <Futu Login Username>
Password_md5 = <Futu Login Password Md5 Value>
[FutuOpenD DataFormat]
HistoryDataFormat = ["code", "time_key", "open", "close", "high", "low", "pe_ratio", "turnover_rate", "volume", "turnover", "change_rate", "last_close"]
SubscribedDataFormat = None
[TradePreference]
LotSizeMultiplier = <# of Stocks to Buy per Signal>
MaxPercPerAsset = <Maximum % of Capital Allocated per Asset>
StockList = <Subscribed Stocks in List Format>
[Backtesting Commission HK]
FixedCharge = <Fixed Transaction Fee and Tax in HKD - 15.5>
PercCharge = <Percentage Transaction Fee in % - 0.1097>
[Email]
Port = <Server SMTP Setting>
SmtpServer = <Server SMTP Setting>
Sender = <Sender Email Address - account1@example.com>
Login = <Sender Email Address - account1@example.com>
Password = <Sender Email Password>
SubscriptionList = ["account1@example.com", "account2@example.com"]
[TuShare Credential]
token = 2134342ABC2D03780772038A7816
2.4 下载历史数据
使用以下命令下载历史K线数据:
python main_backend.py --force_update
2.5 执行算法交易
使用以下命令执行预定义的交易策略:
python main_backend.py --strategy MACD_Cross
3. 应用案例和最佳实践
3.1 回测交易策略
用户可以使用Pyfolio等工具对历史数据进行回测,生成总结报告和可视化结果。对于更高级的用户,可以使用Amibroker等商业解决方案进行回测。
3.2 实时交易
项目支持实时低延迟交易,用户可以根据自己的偏好为每个股票指定交易策略。例如,使用MACD、KDJ和收盘价三个技术指标来决定买入或卖出订单。
3.3 高级股票筛选器
用户可以使用自定义的股票筛选策略筛选高质量的股票,并通过邮件订阅功能通知朋友。
4. 典型生态项目
4.1 Pyfolio
Pyfolio是一个用于金融时间序列分析和回测的Python库,可以与Futu Algorithmic Trading Solution结合使用,进行策略回测和性能分析。
4.2 Amibroker
Amibroker是一个专业的量化交易平台,支持复杂的策略回测和优化,适合高级用户使用。
4.3 TuShare
TuShare是一个用于获取中国股票市场数据的Python库,可以与Futu Algorithmic Trading Solution结合使用,获取更多的市场数据。
通过以上步骤,你可以快速启动并使用Futu Algorithmic Trading Solution (Python)进行量化交易。
GLM-5智谱 AI 正式发布 GLM-5,旨在应对复杂系统工程和长时域智能体任务。Jinja00
GLM-5-w4a8GLM-5-w4a8基于混合专家架构,专为复杂系统工程与长周期智能体任务设计。支持单/多节点部署,适配Atlas 800T A3,采用w4a8量化技术,结合vLLM推理优化,高效平衡性能与精度,助力智能应用开发Jinja00
jiuwenclawJiuwenClaw 是一款基于openJiuwen开发的智能AI Agent,它能够将大语言模型的强大能力,通过你日常使用的各类通讯应用,直接延伸至你的指尖。Python0201- QQwen3.5-397B-A17BQwen3.5 实现了重大飞跃,整合了多模态学习、架构效率、强化学习规模以及全球可访问性等方面的突破性进展,旨在为开发者和企业赋予前所未有的能力与效率。Jinja00
AtomGit城市坐标计划AtomGit 城市坐标计划开启!让开源有坐标,让城市有星火。致力于与城市合伙人共同构建并长期运营一个健康、活跃的本地开发者生态。01
awesome-zig一个关于 Zig 优秀库及资源的协作列表。Makefile00