002:如何画出收盘价的曲线图

接着《001:如何获取A股个股的前复权K线数据》,继续画出曲线图。

我们已经得到了文件002885.csv,大略如下:

要获取收盘价的列表,然后可视化show出来,这里可以用matplot库,先安装:

sudo pip3 install matplotlib

然后新建test2.py,其内容如下:

import pandas as pd
import matplotlib.pyplot as plt

# 读取CSV文件
data = pd.read_csv('002885.csv', sep=',')

# 提取收盘价数据
close_prices = data['收盘']

# 绘制折线图
plt.plot(close_prices)

# 添加标题和标签
plt.title('Closing Prices')
plt.xlabel('Date')
plt.ylabel('Closing Price')

# 显示图形
plt.show()

然后在和002885.csv文件同一目录下运行命令

python3 test2.py

效果图:

里面还可以有一些拖拽功能,可以自行摸索

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
以下是实现上述要求的代码: ```python import pandas as pd import numpy as np import matplotlib.pyplot as plt # 读取十只股票的数据,假设存在一个名为 stock_data 的 DataFrame # 其中每一列的列名为股票代码,包含期、开盘价、收盘价等信息 # 假设存在一个名为 selected_stocks 的列表,包含要进行计算的股票代码 # 计算每个股票的 MA5 和 ratio ma5 = stock_data.loc[:, selected_stocks].rolling(window=5).mean() ratio = (stock_data.loc[:, selected_stocks] - ma5) / ma5 # 挑选 ratio 为负的个股 selected_ratio = ratio < 0 selected_ratio = selected_ratio.apply(lambda x: x.astype(int)) # 转换为 0/1 数组 # 计算等权持仓收益率 daily_return = stock_data.loc[:, selected_stocks].pct_change() * selected_ratio.shift(1) daily_return = daily_return.mean(axis=1) # 每的等权持仓收益率 # 计算策略净值曲线 nav = (1 + daily_return).cumprod() # 读取茅台指数的数据,假设存在一个名为 maotai 的 DataFrame # 其中包含期和茅台指数的收盘价信息 maotai_return = maotai['closePrice'].pct_change() # 茅台指数的每收益率 maotai_nav = (1 + maotai_return).cumprod() # 茅台指数的净值曲线 # 绘制策略净值曲线和茅台指数净值曲线 plt.plot(nav.index, nav, label='Strategy') plt.plot(maotai_nav.index, maotai_nav, label='Maotai') plt.legend() plt.show() ``` 解释一下代码的实现过程: 1. 通过 rolling 方法计算每个股票的 5 均值 MA5; 2. 根据 MA5 计算每个股票的偏离程度 ratio; 3. 挑选出 ratio 为负的个股,并将其转换为 0/1 数组; 4. 根据等权持仓的原则,计算每的等权持仓收益率; 5. 根据每的等权持仓收益率计算策略净值曲线; 6. 读取茅台指数的数据,计算茅台指数的每收益率和净值曲线; 7. 绘制策略净值曲线和茅台指数净值曲线。 这段代码仅供参考,具体实现要根据实际情况进行调整和优化。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值