以下是获取支撑位和阻力位的 Python 代码:

import jointquant as jq
from jqdata import *

# 设置股票代码和时间范围
security = '000001.XSHE'
start_date = '2019-01-01'
end_date = '2021-09-30'

# 获取股票的收盘价数据
close_price = jq.get_price(security, start_date=start_date, end_date=end_date, frequency='daily', fields=['close'])

# 计算价格波动不超过3%的价格区间
price_range = close_price.rolling(20).apply(lambda x: (x.max() - x.min()) / x.min() <= 0.03).fillna(False)

# 获取支撑位和阻力位的价格
support_levels = close_price[price_range.apply(lambda x: x[::-1]).cumsum() == 1].dropna()
resistance_levels = close_price[price_range.cumsum() == 1].dropna()

# 输出支撑位和阻力位的价格
print('Support Levels:', support_levels)
print('Resistance Levels:', resistance_levels)

在上述代码中,我们首先使用jq.get_price()函数获取了股票的收盘价数据,并计算了价格波动不超过3%的价格区间。然后,我们使用cumsum()函数获取了价格区间的累加和,从而得到了支撑位和阻力位的位置。最后,我们使用dropna()函数获取了支撑位和阻力位的价格,并输出结果。

需要注意的是,该代码中的时间范围和计算价格区间的窗口大小可以根据实际情况进行调整。此外,该代码中使用了 JointQuant 数据源,需要在 QuantOS 平台上进行运行。

量化投资专家教你用 Python 代码获取股票支撑位和阻力位 (JointQuant 数据源)

原文地址: http://www.cveoy.top/t/topic/mOJh 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录