当前位置: 首页 > news >正文

基于Django的个性化股票交易管理系统

本项目基于Python3.6、Django2.1、MySql8.0(最好不要使用5.6,字符集等方面均不兼容,否则导入数据库会出错)与股票信息工具包TuShare实现。

创建或激活对应Python开发环境
这里使用了conda来管理环境,强烈推荐,避免不同环境包干扰、依赖的问题。

$ conda activate Webdev
(Webdev)$

或者

$ conda create -n Webdev python=3.6
$ conda activate Webdev
(Webdev)$
安装所需要的依赖包
pip install -r requirements.txt
本项目依赖的核心包有:Django 2.1.15与tushare pro,前者作为主要开发框架,后者是爬取股票数据的核心包。tushare需要依赖pandas等包,用于数据分析和处理。 my-fake-useragent用于生成伪请求头,爬取相应的新闻数据。 django-mptt用于生成树形多级评论。

创建对应数据库(stocktrading)和用户(trading)
create database stocktrading;
create user ‘trading’@‘localhost’ identified by trading;
grant all privileges on stocktrading to ‘trading’@‘localhost’;
flush privileges;
执行迁移命令,创建模型数据表映射
改命令会根据models.py文件中定义的模型创建数据表结构(无数据)。

$ python manage.py makemigrations
$ python manage.py migrate
将config/下的sql文件导入数据库中
在mysql环境中执行,会将stocktrading.sql中定义的表结构和数据全部导入。

use stocktrading;
source stocktrading.sql;
开始运行和测试
python manage.py runserver
打开localhost:8000端口即可查看应用。

运行情况
登录界面
login
在这里插入图片描述
在这里插入图片描述

可以点击上方注册按钮注册。

注册页面
register
在这里插入图片描述

输入相应信息即可完成注册。 但是考虑到已经导入数据库sql文件,那么数据库中应该有了相当数量可以直接登录的用户。可以任取一个进行测试。

username: 10071539640 password: 65815609

用户首页
index1index2
在这里插入图片描述
在这里插入图片描述

首页可以分为4个模块,传递的信息也是比较的丰富。分别是:

热门牛股:根据每天的股票收盘价格和次日的开盘价格计算差值和涨幅,按照涨幅进行排序得到的前10只热门牛股;
重大新闻:管理员自己发布或者通过爬虫获取到东方财富网上刊登的重大新闻简要信息,筛选后推荐给用户。可以点击换一波瞅瞅查看更多其他感兴趣的新闻资讯。有可以点击新闻标题进入新闻详情。
看大盘模块:展示了通过tushare模块抓取的上证指数变化情况。
我的评论模块:展示了我(该登录用户)近期所发布的对股票的评论信息。也可以点击评论标题进入评论详情。
左侧的控制菜单面板,可通过该面板进入其他模块进行管理。
个人信息管理
myprofile
在这里插入图片描述

点击左侧用户信息或者上方导航栏的头像,可以进入用户信息界面,在此查看个人信息,并可以进行修改。若修改需要输入密码并确认密码。

点击修改头像可以修改头像。

change_avatar
在这里插入图片描述

查看股票列表
stock_list
在这里插入图片描述

点击左侧股票列表即可查看股票列表,采用了DataTable组件进行列表展示。其中红色表示股价上涨的股票, 绿色表示下跌的股票。用户可以点击详情页面进行查看股票详情。

股票详情
stock_detailstock_detail2
在这里插入图片描述
在这里插入图片描述

用户在此页面可以进行买入操作,也可以查看返回到上级页面查看股票列表。 左上方图表显示了这支股票的股价变化日K线图与实时股价,右侧是该股票的股权占比,均是通过tushare 提供接口进行抓取获得的。

下方是关于股票的评论信息,同时用户可以发表自己关于这支股票的评论信息。

管理我的股票
mystock_list
在这里插入图片描述

点击管理我的股票,即可查看已经购入的股票列表。 点击详情页面,进入抛售股票页面。

out_stock
在这里插入图片描述

管理我的评论
mycomment
在这里插入图片描述

点击管理我的评论,即可查看我已经发表过的评论信息。

详情页面可以查看所有对评论的回复信息,同时自己也可以回复自己的评论。

mycomment_detail。
在这里插入图片描述

点击回复评论的用户名,可以查看该用户的详细信息,也可以为他(她)点赞。

other_profile

同时用户可以在我的评论列表将评论删除。

查看新闻详情
view_news
在这里插入图片描述

点击新闻标题,可以进入新闻的详情页面。可以在这个页面点击查看上一条或者下一条新闻。

管理员首页
可以使用如下命令创建管理员:
在这里插入图片描述

python manage.py createsuperuser
提示输入用户名,邮箱与密码, 这里依次输入superuser1,空,superuser1。
在这里插入图片描述

这样就可以以超级管理员身份登录后台了。

super_index1super_index

管理员界面与用户界面大同小异,只是内容更加丰富了一些。

用户信息管理
点击左侧用户信息管理进入用户信息管理详情页面。可以看到全部用户列表。
在这里插入图片描述

adm_user

点击详情进入用户信息详情。
在这里插入图片描述

adm_user_detail

在此界面,管理员可以修改部分用户的信息,不包括密码。管理员可以冻结用户的账号,使其 无法参与股票交易,管理员也可以删除用户。

管理股票列表
adm_stock_list
在这里插入图片描述
在这里插入图片描述

adm_stock_detail

管理交易记录
adm_trading_list
在这里插入图片描述

股票信息维护
upholdupdate
在这里插入图片描述

在此界面,管理员可以点击面板上的按钮,进行每天股票信息的维护操作。
在这里插入图片描述

点击更新实时数据按钮后,可以在控制台看到数据库更新的打印信息。

新闻管理
adm_news
在这里插入图片描述

在新闻管理页面,管理员可以添加新闻信息,也可以使用爬虫工具自动获取一些新闻信息,当然也可以进入新闻 页面的详情,对新闻的信息进行编辑或删除。

评论管理
adm_comment
在这里插入图片描述

相关文章:

  • Web漏洞--XSS之订单系统和Shell箱子
  • <论文>(谷歌)用于时序链接预测的迁移学习
  • 解释两个 Django 命令 makemigrations和migrate
  • 基于Axure的动态甘特图设计:实现任务增删改与时间拖拽交互
  • 巴西kwai短视频推广旅游广告获客营销策略
  • 在 Java 项目中搭建和部署 Docker 的详细流程
  • WebUI可视化:第3章:Gradio入门实战
  • 将AAB转APK的两种好用方法AAB to APK Converter
  • ARM服务器与X86服务器核心区别分析
  • 【时时三省】Python 语言----函数
  • Springoot、Flowable快速学习
  • 【prompt是什么?有哪些技巧?】
  • 华为OD机试真题——推荐多样性(2025A卷:200分)Java/python/JavaScript/C++/C语言/GO六种最佳实现
  • ubuntu(28):ubuntu系统多版本conda和多版本cuda共存
  • ElementUi的Dropdown下拉菜单的详细介绍及使用
  • JAVA常用分布式锁Redisson
  • Redis相关
  • FX10(CYUSB4014)USB3.2(10Gbps)开发笔记分享(1):硬件设计与开发环境搭建
  • Go 语言 Map(集合)
  • 真.从“零”搞 VSCode+STM32CubeMx+C <2>调试+烧录
  • 上海2025年普通高等学校招生志愿填报与投档录取实施办法公布
  • 上海黄浦一季度实到外资总量全市第二,同比增速领先全市
  • 预订假期酒店却被告知无法入住,去哪儿:对违规酒店予以处罚
  • 泽连斯基提议乌俄“立即、全面和无条件”停火
  • 秭归“橘颂”:屈原故里打造脐橙全产业链,创造12个亿元村,运输用上无人机
  • 视频·世界读书日|王弘治:信息轰炸也会让文化体力透支