Vue 编码基础
2.1.1. 组件规范
2.1.2. 模板中使用简单的表达式
2.1.3 指令都使用缩写形式
2.1.4 标签顺序保持一致
2.1.5 必须为 v-for 设置键值 key
2.1.6 v-show 与 v-if 选择
2.1.7 script 标签内部结构顺序
2.1.8 Vue Router 规范
Vue 项目目录规范
2.2.1 基础
2.2.2 使用 Vue-cli 脚手架
2.2.3 目录说明
2.2.4注释说明
2.2.5 其他
DataFrame.resample(rule, how=None, axis=0, fill_method=None, closed=None, label=None, convention='start',kind=None, loffset=None, limit=None, base=0)
代码
# 频率为1周, 取最后的值
data.resample("1w").last().head()
输出结果:
时间窗口
需求
- 以 20 为长度制作窗口序列
- 统计窗口各个常用指标结果
rolling 函数
格式:
DataFrame.rolling(window, min_periods=None, center=False, win_type=None, on=None, axis=0, closed=None)
| 参数 | 内容 |
|---|---|
| window | 表示时间窗的大小,注意有两种形式(int or offset)。如果使用int,则数值表示计算统计量的观测值的数量即向前几个数据。如果是 offset 类型,表示时间窗的大小。 |
| min_periods | 每个窗口最少包含的观测值数量,小于这个值的窗口结果为 NA。值可以是int,默认None。offset情况下,默认为1。 |
| center | 把窗口的标签设置为居中。布尔型,默认 False,居右。 |
| win_type | 窗口的类型。截取窗的各种函数。字符串类型,默认为 None。 |
| axis | int、字符串,默认为0,即对列进行计算 |
| closed | 定义区间的开闭,支持int类型的window。对于offset类型默认是左开右闭的即默认为right。可以根据情况指定为left both等。 |
代码
# 去除na
data_new = data.copy().dropna()
# 用第一只股票
stock = stock_list[0]
# 窗口为20天
windows = 20
data_new['min'] = data_new[stock].rolling(window=windows).min() # 最小值
data_new['max'] = data_new[stock].rolling(window=windows).max() # 最大值
data_new['mean'] = data_new[stock].rolling(window=windows).mean() # 平均值
data_new['std'] = data_new[stock].rolling(window=windows).std() # 标准差
# 调试输出
print(data_new.tail())
输出结果:
601766.XSHG 601155.XSHG 600482.XSHG 002456.XSHE 600763.XSHG \
date
2020-12-25 5.37 33.94 17.55 13.83 269.08
2020-12-28 5.32 33.81 17.48 13.05 269.13
2020-12-29 5.32 34.31 17.28 13.10 274.20
2020-12-30 5.27 33.80 17.43 12.83 275.16
2020-12-31 5.31 34.83 17.92 13.18 276.52
002460.XSHE 601877.XSHG 601988.XSHG 601390.XSHG 300408.XSHE \
date
2020-12-25 108.88 38.53 3.18 5.30 35.99
2020-12-28 107.01 37.50 3.17 5.21 36.10
2020-12-29 96.31 36.97 3.17 5.22 35.88
2020-12-30 101.00 36.92 3.17 5.22 37.05
2020-12-31 101.20 39.16 3.18 5.27 37.25
min max mean std
date
2020-12-25 5.29 5.78 5.4880 0.142075
2020-12-28 5.21 5.78 5.4660 0.149540
2020-12-29 5.21 5.78 5.4425 0.149416
2020-12-30 5.21 5.71 5.4145 0.134574
2020-12-31 5.21 5.65 5.3925 0.118760
股票序列分析策略
需求
- 短期平均计算
- 长期平均计算
- 黄金交叉与死亡交叉绘图展示
代码
# 这里我们以洋河股份和伊利股份为例
data = get_price(["600887.XSHG"], start_date=start_date, end_date=end_date,fields="close", expect_df=True)
print(data.head())
# 短期平均 (7天)
data["7_day_moving_average"] = data["close"].rolling(window=7).mean()
# 长期平均 (50天)
data["50_day_moving_average"] = data["close"].rolling(window=50).mean()
# 调试输出
print(data.tail().round(2))
# 画图
data[60:].plot(figsize=(16,12))
# 标记黄金交叉和死亡交叉位置
data["positions"] = np.where(data["7_day_moving_average"] > data["50_day_moving_average"], 1, -1)
# 画图
data[60:].plot(figsize=(16,12), secondary_y="positions")
输出结果:
close
order_book_id date
600887.XSHG 2019-01-02 21.3696
2019-01-03 21.1985
2019-01-04 21.4076
2019-01-07 21.6453
2019-01-08 21.4837
close 7_day_moving_average 50_day_moving_average
order_book_id date
600887.XSHG 2020-12-25 40.00 40.94 39.83
2020-12-28 41.89 41.02 39.86
2020-12-29 41.87 41.19 39.87
2020-12-30 43.96 41.54 39.91
2020-12-31 44.37 42.02 39.96
回归分析
需求
- 洋河和伊利之间的关系
- 绘图展示他们之间的变化情况
- 回归与相关系数计算
- 随着年份的变化,计算相关系数的变化情况,并展示
代码
# 取出数据
data = get_price(["600887.XSHG","600597.XSHG"], start_date=start_date, end_date=end_date,fields="close")
print(data.head())
# 画图 (子图)
data.plot(subplots=True)
# 画图 (合并)
data.plot(secondary_y="002304.XSHE")
# 获得连续增长率
rets = np.log(data/data.shift(1))
# 调试输出
rets.head()
pd.plotting.scatter_matrix(rets,
alpha = 0.2,
diagonal='hist',
hist_kwds={'bins':50},
figsize=(10,6)
)
pd.plotting.scatter_matrix(rets,
alpha = 0.2,
diagonal='kde',
figsize=(10,6)
)
输出结果:
构建回归方程
需求
- 去除空置
- 构建回归 (seaborn)
代码
import seaborn as sns
# 去除空值
### 最后
javascript是前端必要掌握的真正算得上是编程语言的语言,学会灵活运用javascript,将对以后学习工作有非常大的帮助。掌握它最重要的首先是学习好基础知识,而后通过不断的实战来提升我们的编程技巧和逻辑思维。这一块学习是持续的,直到我们真正掌握它并且能够灵活运用它。如果最开始学习一两遍之后,发现暂时没有提升的空间,我们可以暂时放一放。继续下面的学习,javascript贯穿我们前端工作中,在之后的学习实现里也会遇到和锻炼到。真正学习起来并不难理解,关键是灵活运用。
**[开源分享:【大厂前端面试题解析+核心总结学习笔记+真实项目实战+最新讲解视频】](https://docs.qq.com/doc/DSmRnRGxvUkxTREhO)**

