用Python开发基金策略模拟工具

科技   2024-09-26 20:01   重庆  

添加微信号CNFeffery备注“dash学习”

即刻加入dash应用开发技术交流群

大家好我是费老师,今天要给大家分享的项目是完全基于Python编写的「基金策略模拟工具」应用,首先来看一下其主要功能的操作演示视频(玩转dash公众号后台回复「基金策略」可直接获取该项目完整源码及示例数据的下载地址):

之所以可以完全基于Python轻松开发出这个应用,要归功于Python生态中非常强大的网页应用开发框架Dash,以及其相关生态中的fac(官网地址:https://fac.feffery.tech/ )等组件库,使得我们可以轻松调用不同的功能组件,并编写相应的回调函数来实现各种用户交互反馈功能:

下面我们对这个应用实现的主要过程做简短介绍,具体技术细节欢迎扫描「文章末尾二维码」,即刻加入Dash技术学习交流群一起交流:

1 启动应用

首先,按照「文章开头提示」下载好本项目完整源码解压后,在项目根目录打开终端,激活你的Python环境,接着执行pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple,完成当前项目依赖库的安装。

然后直接在终端执行python app.py即可启动应用,按照控制台提示的信息,浏览器访问本地http://127.0.0.1:8050地址即可使用到应用:

2 应用主要功能

该应用案例比较简单,实现了基于用户上传的「基金历史行情数据」,在用户选定单个或多个「自定义策略」的情况下,结合选择模拟的时间范围,进行「范围内收益率」的计算,涉及到的主要功能有:

2.1 excel表格文件上传

通用点击或拖拽excel表格到上传区域内进行上传,上传成功后,下方操作区域会显示出策略选择模拟范围选择开始模拟按钮等操作控件,并展示初始化提示信息:

2.2 策略选择

通过左侧的下拉选择控件,选择要模拟的单个或单个投资策略,这些策略可以在应用源码中灵活的自定义相关内容及计算规则:

2.3 模拟范围选择

通过右侧的日期范围选择控件进行「模拟范围」选择,可通过左侧的预设范围进行快速选择:

2.4 执行模拟

在策略和模拟范围均选择了「有效值」后,右侧的「开始模拟」按钮将自动取消禁用状态,点击执行已设置参数下的模拟运算,在下方得到运算结果:

2.5 模拟结果

成功执行模拟运算后,下方会展示对应所选范围的历史行情交互折线图,以及对应单个或多个策略的模拟运算结果表格,其中收益率字段自带排序功能:

3 应用开发重点思路

作为一个轻量的Dash应用,其项目结构非常简单:

  • assets目录存放静态资源,即本应用中的应用图标图片等文件
  • caches目录用于缓存用户上传的文件
  • server.py中进行应用的实例化,并配合Flask内置了文件「上传」接口
  • app.py中构建了应用的全部「页面内容」,以及控制交互功能的「回调函数」逻辑
  • strategies.py中则是按照规范的格式,定义了各自定义交易模拟策略,你可以修改增加它,来自由引入自己的模拟交易策略

因为是基于Python中的Dash框架进行开发,因此该应用的实现过程全部使用Python编写,无需学习复杂的javascript等语言,在此应用基础上进行二次开发非常的灵活高效。

更多有关此应用的技术细节,欢迎添加微信号CNFeffery备注「dash学习」,即刻加入技术交流群一起学习讨论。


更多Dash应用开发干货内容,欢迎持续关注我们❤️。

扫描下方二维码加我好友备注dash学习

即刻加入dash应用开发技术交流群



点击下方卡片加入玩转Dash知识星球

用最专业最高效的方式搞定Dash应用开发


Python大数据分析
分享Python编程、数据分析、爬虫、人工智能等
 最新文章