python flask开发的简单基金查询工具


Posted in Python onJune 02, 2021

项目地址:

https://github.com/guodongggg/fund

1) 启动方法

(非必须)修改new.csv,参照test.csv,首行为基金代码,其次为每支基金在指定日期内的操作,正值为买入金额,负值为赎回份额。具体项目参照x_alpha项目

修改code_list.json文件的prodect为你自己的基金代码,修改count为每支基金的金额,执行同级目录下的update_code_list.py,自动更新持仓百分比

执行python run.py

ps:初始化比较麻烦,我也暂时没优化,后面再说吧

2) web查看方法

打开浏览器,访问本地地址:http://127.0.0.1:8090

3) 功能说明:

  • 大盘指数实时情况查看
  • 单支基金实时、近一周、近一月、近三月的涨跌情况
  • 总持仓实际涨幅、预估涨幅
  • 持仓成本图、饼状图、收益详情图(需修改new.csv)
  • 线性回归图例
  • 外链天天基金页面
  • 外链头条大V号
  • 外链微博大V号
  • 外链比特币
  • 外链薅羊毛页面

4) 展示:

python flask开发的简单基金查询工具

python flask开发的简单基金查询工具

代码

涉及代码过多,不便全部放出,请自行下载项目查看,放出部分代码,仅供参考。

update_over_json.py     基金代码列表

import average_growth
import json
import common
import choose_api
from pathlib import Path


def over_time(detail, board):
    """
    判断当日持仓的所有基金的合计涨幅是否超过沪深300
    :param code_list: list 基金代码列表
    :return: json文件,格式如下,HS300涨幅、持仓合计涨幅、持仓涨幅是否超过沪深300
        {
            "2020-12-31": {
                "HS300": "1.91",
                "my_position": "1.35",
                "over_take": false
            },
            "2021-01-04": {
                "HS300": "1.08",
                "my_position": "1.33",
                "over_take": true
            }
        }
        ......
    """
    # 获取日期
    try:
        date = detail[0]['netWorthDate']
    except:
        date = detail[1]['netWorthDate']
    hs300 = ''
    for i in board:
        if i['name'] == '沪深300':
            hs300 = i['changePercent']

    # 判断文件是否存在,不存在则创建
    json_file_name = 'file/bj.json'
    file = Path(json_file_name)
    file.touch(exist_ok=True)

    # 此时更新的准确净值涨幅的平均值
    avg = average_growth.average_growth(detail)['average_dayGrowth']
    print('hs300:', hs300)
    print('avg:', avg)
    # 写入文件
    with open("file/bj.json", 'r+') as f:
        try:
            data = json.load(f)
            f.seek(0, 0)
            f.truncate()
        except Exception as e:
            print(e)
            data = {}
        finally:
            print(f'获取数据: {data}')
            data[date] = {
                'HS300': hs300,
                'my_position': str(avg),
                'over_take': True if float(avg) > float(hs300) else False
            }
            print(f'更新数据: {date}:{data[date]}')
            f.write(json.dumps(data, sort_keys=True, indent=4, separators=(',', ': ')))
            print(f'{json_file_name} 已更新!')


if __name__ == '__main__':
    code_list = common.get_codelist('product')
    data = choose_api.choose_api(code_list)
    detail = data['detail']
    board = data['board']
    over_time(detail, board)

nasdaq.py    sina财经数据爬虫

import requests


def nasdaq():
    """
    爬取sina财经nasdaq基础数据
    :return: 构建的标准返回格式,只包含当日的数据,无历史数据
    """
    url = "http://hq.sinajs.cn/?rn=1609213839262&list=gb_$ndx"
    r = requests.get(url)
    response = r.text
    if r.status_code == 200:
        data = response.split('=')[1].split(',')
        nasdaq_data = {'name': data[0].strip('"'), 'code': '040046', 'price': data[1], 'priceChange': data[4], 'expectGrowth': data[2], 'dayGrowth': data[2], 'lastWeekGrowth': '-', 'lastMonthGrowth': '-', 'lastThreeMonthsGrowth': '-', 'date': ''}
        return nasdaq_data
    else:
        print(f'nasdaq return error: \n {response}')


if __name__ == '__main__':
    nasdaq_data = nasdaq()
    for k, v in nasdaq_data.items():
        print(f'{k}: {v}')

以上就是python flask开发的简单基金查询工具的详细内容,更多关于python 基金查询工具的资料请关注三水点靠木其它相关文章!

Python 相关文章推荐
使用setup.py安装python包和卸载python包的方法
Nov 27 Python
python制作企业邮箱的爆破脚本
Oct 05 Python
Python实现的径向基(RBF)神经网络示例
Feb 06 Python
Python XML转Json之XML2Dict的使用方法
Jan 15 Python
Python使用while循环花式打印乘法表
Jan 28 Python
Python3中exp()函数用法分析
Feb 19 Python
Django在pycharm下修改默认启动端口的方法
Jul 26 Python
Windows平台Python编程必会模块之pywin32介绍
Oct 01 Python
Python实现socket非阻塞通讯功能示例
Nov 06 Python
python爬虫数据保存到mongoDB的实例方法
Jul 28 Python
使用Pytorch搭建模型的步骤
Nov 16 Python
K近邻法(KNN)相关知识总结以及如何用python实现
Jan 28 Python
python爬取网页版QQ空间,生成各类图表
Python爬虫实战之爬取携程评论
Pytorch DataLoader shuffle验证方式
python 爬取吉首大学网站成绩单
python 批量压缩图片的脚本
Jun 02 #Python
python操作xlsx格式文件并读取
关于Numpy之repeat、tile的用法总结
Jun 02 #Python
You might like
PHP生成月历代码
2007/06/14 PHP
php导入大量数据到mysql性能优化技巧
2014/12/29 PHP
php基于表单密码验证与HTTP验证用法实例
2015/01/06 PHP
简单的pgsql pdo php操作类实现代码
2016/08/25 PHP
php redis实现文章发布系统(用户投票系统)
2017/03/04 PHP
基于jquery的页面划词搜索JS
2010/09/14 Javascript
jquery 查找iframe父级页面元素的实现代码
2011/08/28 Javascript
jquery validate poshytip 自定义样式
2012/11/26 Javascript
jQuery获取节点和子节点文本的方法
2014/07/22 Javascript
基于jquery实现放大镜效果
2015/08/17 Javascript
浅谈时钟的生成(js手写简洁代码)
2016/08/20 Javascript
Vue在页面右上角实现可悬浮/隐藏的系统菜单
2018/05/04 Javascript
微信小程序实现星级评分和展示
2018/07/05 Javascript
微信小程序ibeacon三点定位详解
2018/10/31 Javascript
如何使用pm2快速将项目部署到远程服务器
2019/03/12 Javascript
vue+导航锚点联动-滚动监听和点击平滑滚动跳转实例
2019/11/13 Javascript
React Native中ScrollView组件轮播图与ListView渲染列表组件用法实例分析
2020/01/06 Javascript
原生JS实现萤火虫效果
2020/03/07 Javascript
Vue 的 v-model用法实例
2020/11/23 Vue.js
keep-alive保持组件状态的方法
2020/12/02 Javascript
Vue基本指令实例图文讲解
2021/02/25 Vue.js
python中使用smtplib和email模块发送邮件实例
2014/04/22 Python
Python Socket传输文件示例
2017/01/16 Python
Python利用Beautiful Soup模块修改内容方法示例
2017/03/27 Python
python中对_init_的理解及实例解析
2019/10/11 Python
Python tkinter常用操作代码实例
2020/01/03 Python
详解pycharm的python包opencv(cv2)无代码提示问题的解决
2021/01/29 Python
自主招生自荐信格式
2013/12/03 职场文书
一年级语文教学反思
2014/02/13 职场文书
会计员岗位职责
2014/03/15 职场文书
优质服务活动实施方案
2014/05/02 职场文书
融资合作协议书范本
2014/10/17 职场文书
离职员工给领导和同事的感谢信
2015/11/03 职场文书
2019求职信大礼包
2019/05/15 职场文书
Python-OpenCV教程之图像的位运算详解
2021/06/21 Python
js判断两个数组相等的5种方法
2022/05/06 Javascript