探索金融市场数据的利器 —— Duka
2024-05-22 00:57:44作者:段琳惟
在金融数据分析领域,获取高质量且经济实惠的数据源是一项挑战。Dukascopy银行提供了一款强大的在线工具,允许用户下载包括外汇、CFD和商品在内的多种资产的历史交易数据。为了解决通过网页一次性只能下载一天数据的不便,我们引荐一个开源项目——Duka。
项目简介
Duka 是一款轻量级命令行应用程序,能够帮助您批量快速地从Dukascopy历史数据服务中下载指定日期范围内的交易数据。通过利用Python的多线程和协程技术,Duka显著提升了数据下载速度。只需大约10分钟,即可完成一年内特定交易品种的数据下载,非常高效!

如图所示,Duka还提供了实时剩余时间预估,对处理大规模数据特别有用。
技术剖析
Duka基于Python 3.5构建,并依赖于requests库。它采用多线程技术和异步I/O(协程),实现高效的并发下载。数据可导出为CSV格式,支持不同时间框架(1分钟到1天)的烛形图表格式。
应用场景
- 金融研究:对于那些试图深入研究外汇市场的分析师或个人投资者,Duka提供了一个便捷的数据来源。
- 机器学习:在训练交易策略模型时,大量的历史数据至关重要。Duka可以快速提供这些数据。
- 教学与学术研究:教育机构或研究人员在进行金融市场教学和研究时,也会发现Duka是一个宝贵的工具。
项目特点
- 包含交易量的tick级别数据
- 支持不同周期的烛形图表(M1至D1)
- 输出CSV文件格式,易于处理
- 多线程支持,加快下载速度
- 广泛的交易品种选择
- 用户友好的命令行接口
- 自定义下载目录
- 提供进度估算
安装与使用
使用pip即可轻松安装:
pip install duka
运行示例:
# 显示帮助信息
duka -h
# 下载昨日EURUSD和GBPUSD的最新数据
duka EURUSD GBPUSD
# 下载2016年2月2日的EURUSD数据
duka EURUSD -d 2016-02-02
# 下载2015年1月1日至2016年12月31日的EURUSD数据
duka EURUSD -s 2015-01-01 -e 2016-12-31
若需了解更多选项,参考项目的readme文档。
社区参与
如果您发现了bug或者有新功能建议,请随时打开GitHub上的问题或提交Pull Request。让我们一起完善这个项目。
许可协议
Duka遵循MIT许可协议,详情请查看项目许可证文件。
结语
Duka是金融数据爱好者的理想工具,它既可以帮助研究人员快速收集资料,也可以作为开发人员的数据准备平台。立即安装并探索无限可能吧!
登录后查看全文
热门项目推荐
GLM-5智谱 AI 正式发布 GLM-5,旨在应对复杂系统工程和长时域智能体任务。Jinja00
GLM-5-w4a8GLM-5-w4a8基于混合专家架构,专为复杂系统工程与长周期智能体任务设计。支持单/多节点部署,适配Atlas 800T A3,采用w4a8量化技术,结合vLLM推理优化,高效平衡性能与精度,助力智能应用开发Jinja00
jiuwenclawJiuwenClaw 是一款基于openJiuwen开发的智能AI Agent,它能够将大语言模型的强大能力,通过你日常使用的各类通讯应用,直接延伸至你的指尖。Python0220- QQwen3.5-397B-A17BQwen3.5 实现了重大飞跃,整合了多模态学习、架构效率、强化学习规模以及全球可访问性等方面的突破性进展,旨在为开发者和企业赋予前所未有的能力与效率。Jinja00
AtomGit城市坐标计划AtomGit 城市坐标计划开启!让开源有坐标,让城市有星火。致力于与城市合伙人共同构建并长期运营一个健康、活跃的本地开发者生态。01
AntSK基于.Net9 + AntBlazor + SemanticKernel 和KernelMemory 打造的AI知识库/智能体,支持本地离线AI大模型。可以不联网离线运行。支持aspire观测应用数据CSS01
热门内容推荐
最新内容推荐
项目优选
收起
deepin linux kernel
C
27
13
OpenHarmony documentation | OpenHarmony开发者文档
Dockerfile
626
4.12 K
Ascend Extension for PyTorch
Python
463
554
本项目是CANN提供的数学类基础计算算子库,实现网络在NPU上加速计算。
C++
929
801
🎉 (RuoYi)官方仓库 基于SpringBoot,Spring Security,JWT,Vue3 & Vite、Element Plus 的前后端分离权限管理系统
Vue
1.49 K
843
暂无简介
Dart
869
207
🔥LeetCode solutions in any programming language | 多种编程语言实现 LeetCode、《剑指 Offer(第 2 版)》、《程序员面试金典(第 6 版)》题解
Java
69
21
华为昇腾面向大规模分布式训练的多模态大模型套件,支撑多模态生成、多模态理解。
Python
130
189
openEuler内核是openEuler操作系统的核心,既是系统性能与稳定性的基石,也是连接处理器、设备与服务的桥梁。
C
380
261
昇腾LLM分布式训练框架
Python
136
160