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 相关文章推荐
python实现批量按比例缩放图片效果
Mar 30 Python
Python运行不显示DOS窗口的解决方法
Oct 22 Python
python正向最大匹配分词和逆向最大匹配分词的实例
Nov 14 Python
python实现弹窗祝福效果
Apr 07 Python
通过pycharm使用git的步骤(图文详解)
Jun 13 Python
余弦相似性计算及python代码实现过程解析
Sep 18 Python
使用Python来做一个屏幕录制工具的操作代码
Jan 18 Python
python GUI库图形界面开发之PyQt5布局控件QVBoxLayout详细使用方法与实例
Mar 06 Python
python文件及目录操作代码汇总
Jul 08 Python
python创建文本文件的简单方法
Aug 30 Python
使用Python爬虫爬取小红书完完整整的全过程
Jan 19 Python
Python 机器学习工具包SKlearn的安装与使用
May 14 Python
python爬取网页版QQ空间,生成各类图表
Python爬虫实战之爬取携程评论
Pytorch DataLoader shuffle验证方式
python 爬取吉首大学网站成绩单
python 批量压缩图片的脚本
Jun 02 #Python
python操作xlsx格式文件并读取
关于Numpy之repeat、tile的用法总结
Jun 02 #Python
You might like
随机头像PHP版
2006/10/09 PHP
用PHP实现图象锐化代码
2007/06/14 PHP
PHP截断标题且兼容utf8和gb2312编码
2013/09/22 PHP
PHP代码实现爬虫记录――超管用
2015/07/31 PHP
PHP仿微信多图片预览上传实例代码
2016/09/13 PHP
YUI 读码日记之 YAHOO.lang.is*
2008/03/22 Javascript
解析ScrollPic在ie8下只滚动一遍,然后变为空白 ie6,ie7,chrome,firefox正常
2013/06/26 Javascript
jQuery实现鼠标悬停显示提示信息窗口的方法
2015/04/30 Javascript
JS实现兼容性好,自动置顶的淘宝悬浮工具栏效果
2015/09/18 Javascript
总结jQuery插件开发中的一些要点
2016/05/16 Javascript
jQuery添加和删除输入文本框标签代码
2016/05/20 Javascript
javascript 判断是否是微信浏览器的方法
2016/10/09 Javascript
js获取当前页的URL与window.location.href简单方法
2017/02/13 Javascript
Ajax实现不刷新取最新商品
2017/03/01 Javascript
详解Angular路由之路由守卫
2018/05/10 Javascript
JS实现电话号码的字母组合算法示例
2019/02/26 Javascript
[01:12:44]VG vs Mineski Supermajor 败者组 BO3 第二场 6.6
2018/06/07 DOTA
[54:06]OG vs TNC 2018国际邀请赛小组赛BO2 第二场 8.19
2018/08/21 DOTA
[45:25]完美世界DOTA2联赛循环赛 PXG vs IO 第一场 11.06
2020/11/09 DOTA
详解python上传文件和字符到PHP服务器
2017/11/24 Python
Python中实现switch功能实例解析
2018/01/11 Python
使用pandas读取csv文件的指定列方法
2018/04/21 Python
Python多线程原理与用法详解
2018/08/20 Python
Django admin.py 在修改/添加表单界面显示额外字段的方法
2019/08/22 Python
Python PyQt5运行程序把输出信息展示到GUI图形界面上
2020/04/27 Python
常用的HTML5列表标签
2017/06/20 HTML / CSS
物流专业求职计划书
2014/01/10 职场文书
会议活动邀请函
2014/01/27 职场文书
开工典礼策划方案
2014/05/23 职场文书
社区两委对照检查材料
2014/08/23 职场文书
2014年大学生职业规划书:未来不是梦,只要勇敢冲!
2014/09/22 职场文书
财务个人年度总结范文
2015/02/26 职场文书
Go遍历struct,map,slice的实现
2021/06/13 Golang
浅谈Python协程asyncio
2021/06/20 Python
基于JavaScript实现年月日三级联动
2021/06/22 Javascript
一文了解MySQL二级索引的查询过程
2022/02/24 MySQL