今日重点
- 项目概述
- 股票相关概念
- 项目开发流程(项目生命周期)
- 项目开发的环境
一、项目概述
项目介绍和亮点
项目介绍:今日指数是一款基于股票交易实时产生的数据分析产品,旨在为特定用户和机构提供定制化的股票数据分析和展示服务。
项目亮点:今日指数可以为用户提供个性化股票实施查询,用户可以只关注自己的股市数据,更方便的查询想要的数据。
功能概述
- 股票采集系统
核心功能是周期性采集股票数据,并刷入数据库;
借助xxljob提供完善的任务监控机制;
- 国内指数服务
主要统计国内大盘实时数据信息;
- 板块分析服务
主要统计国内各大行业板块行情数据信息;
- 涨幅榜展示功能
根据个股涨幅排序,提供热点股票数据展示;
- 涨停跌停数展示功能
统计股票涨停跌停的数量;
- 成交量对比展示功能
综合对比真个股市成交量的变化趋势;
- 个股详情展示功能
包含分时行情、日k线、周K线图、个股描述服务等
- 报表导出服务
根据涨幅排序导出热点股票数据信息;
- 其它
用户信息管理;
角色管理;
权限管理等。
技术概述
前端
- 基本骨架(前端核心技术架构)
vue-cli+vue+element+axios
- 报表(股票数据报表展示,比如折线图、柱状图、K线图等)
echartsjs
- 前端支持(脚手架支持)
node webpack
后端
- 基础框架(项目基础骨架)
SpringBoot、Mybatis、SpringMVC
- 安全框架(认证与授权)
SpringSecurity+Jwt+Token
- 缓存(数据缓存)
Redis+CaffienCache
- excel表格导出(导出股票相关热点数据)
EasyExcel
- 小组件(生产力工具)
Jode-Time 、hutool 、Guava 、HttpClient | RestTemplate 、线程池
- 定时任务(定时采集股票数据)
Xxljob
- 分库分表(股票数据分库分表方案落地)
Sharding-JDBC
- 资源部署(前端静态资源部署,代理访问后端功能接口)
Nginx+Linux+jenkins+docker
二、股票相关概念
股票核心参数
- 开盘价
称开市价,是证券交易所在每个交易日开市后的第一笔股票买卖成交的价格;
开盘价是在9点15分至9点25分买卖双方的竞价撮合产生(了解);
开盘价一般会参考前一个股票交易日收盘价;
- 收盘价
又称收市价,是指股票在每个交易日里最后一笔买卖成交价格;
昨收:上一个交易日的收盘价格;
- 当前价
当前股票实时的最新成交价格;
- 涨跌值
涨跌值=最新价格-前收盘价格 ;
股票涨跌值主要用于反应股票的涨跌情况,单位是元(A股);
一般用“+”或“-”号表示,正值为涨,负值为跌,否则为持平;
- 涨跌幅度(涨幅)
股票涨幅=(最新成交价-前收盘价)÷ 前收盘价×100%
- 涨停与跌停
股市涨跌停的机制与生活中电路过载保护思想一致,在股票市场中为了防止股价过分的暴涨暴跌,同时抑制过度投机行为,证券交易所给股价的涨跌做了相关限制;
在A股市场中,股价的涨跌幅度范围:-10%~+10%;
打新-对于新上市股票第一天交易中股价涨幅不设限,第二天才会有限制(了解);
- 振幅
股票振幅=(当日最高价-当日最低价)÷ 前收盘价 ×100%;
股票振幅在一定程度上反应了股票的活跃程度;
- 成交量
成交量指当天成交的股票总手数(1手=100股);
- 成交金额
股票成交金额是成交量和成交价格的累加,由证券交易锁计算得出;
示例投资者以每股10元的价格买入50手,那么此时成交金额为:10X50X100=5w;
- 股票编码
每个上市公司的股票都一个唯一的编码,通过这个编码就可定义具体股票;
沪市A股的代码是以600、601或603打头(6打头);
深市A股 深市A股的代码是以000打头(0打头);
其它:创业板股票代码以300打头,沪市B股代码以900打头,深圳B股代码以200打头等等。
K线图核心参数
K线(英语:Candlestick chart)又称阴阳烛、蜡烛线,是反映价格走势的一种图线,其特色在于将一段时间内标的价格走势做浓缩整理,并用不同的颜色和形态来透露价格讯息及市场情绪,以便投资者进行分析,相当易读易懂且实用有效,广泛用于股票、期货、贵金属、数字货币等行情的技术分析,称为K线分析。
分时图:统计当天每分钟的交易数据(当前价格、均价、涨跌、涨幅、成交量和成交金额等)
日K线图:统计每天交易数据(最高、最低、开盘、收盘、涨跌、涨幅等)
周K线图:统计每周交易数据(最高、最低、开盘、收盘、涨跌、涨幅等)
月K线图:统计每月交易数据(最高、最低、开盘、收盘、涨跌、涨幅等)
大盘指数
股市的大盘指数是由证券交易所经过一系列专业计算得出的一个反应股市行情健康状态的指数。
国内A股公司的大盘指数有上海证券交易所(上交所)和深圳证券交易(深交所)所提供;
总之,大盘指数整体反应了股市的行情信息。
国内大盘信息
国外大盘信息
板块指数
大盘指数反应了整体的市场行情,不能反应具体某个行业,而板块指数可以更加细粒度的反应具体某个行业股市的活跃程度;根据定义板块的方式主要分为:地域板块、行业板块、概念板块等。
三、项目开发流程(项目生命周期)
补充:软件开发角色分工
四、项目开发的环境
软件开发中为了各个角色协作过程中产生不必要的干扰,一般会使用不同的环境加以隔离:** 开发环境、测试环境、生产环境。**接下来,我们分别介绍一下这三套环境的作用和特点。
1. 开发环境
我们作为软件开发人员,在开发阶段使用的环境,就是开发环境,一般外部用户无法访问。
比如,我们在开发中使用的MySQL数据库和其他的一些常用软件,我们可以安装在本地, 也可以安装在一台专门的服务器中, 这些应用软件仅仅在软件开发过程中使用, 项目测试、上线时,我们不会使用这套环境了,这个环境就是开发环境。
2. 测试环境
当软件开发工程师,将项目的功能模块开发完毕,并且单元测试通过后,就需要将项目部署到测试服务器上,让测试人员对项目进行测试。那这台测试服务器就是专门给测试人员使用的环境, 也就是测试环境,用于项目测试,一般外部用户无法访问。
3. 生产环境
当项目开发完毕,并且由测试人员测试通过之后,就可以上线项目,将项目部署到线上环境,并正式对外提供服务,这个线上环境也称之为生产环境。