使用tushare获取某只股票数据,计算半年内每日120日平均线,并计算半年内每日收盘价小于120平均线的概率,效率最高代码
时间: 2023-12-25 13:06:48 浏览: 123
python量化之获取股票数据.pdf
好的,以下是使用 Pandas 和 Numpy 库进行优化后的代码,可以同时计算半年内每日的120日平均线和每日收盘价小于120平均线的概率:
```python
import tushare as ts
import numpy as np
# 获取股票数据
stock_data = ts.get_hist_data('股票代码')
# 计算120日平均线
ma_120 = stock_data['close'].rolling(window=120).mean()
# 获取半年内数据
half_year_data = stock_data.tail(120)
# 计算半年内每日收盘价小于120日平均线的概率
count = np.sum(half_year_data['close'] < ma_120.tail(1).values[0])
probability = count / len(half_year_data)
print("半年内每日收盘价小于120日平均线的概率为:{:.2%}".format(probability))
```
其中,需要将代码中的股票代码替换为你所需要查询的股票代码。输出的结果为半年内每日收盘价小于120日平均线的概率。优化后的代码主要使用了 Pandas 的滚动计算和 Numpy 的计算方式,能够提高代码的执行效率。
阅读全文