问财量化选股策略逻辑
选股逻辑:振幅大于1、昨天连续3日上涨、上市时间大于一年。
选股逻辑分析
该选股逻辑主要考虑了以下几个方面:1. 振幅大于1,可以过滤出市场活跃的高热度标的;2. 昨天连续3日上涨,作为股票持续上涨的判断条件之一,选出稳定涨幅的标的;3. 上市时间大于一年,可以过滤出风险较小并有一定历史数据支撑的标的,剔除了一些潜在炒作风险。
有何风险?
以下是该选股策略存在的风险:
- 忽略公司的基本面和长期投资价值;
- 过于注重短期数据和现象,无法反映企业具体的内外部环境变化;
- 时间较长的强势股难以被筛选出来,如一些历史上表现不稳定但最近表现良好的标的可能无法被选中。
如何优化?
为了优化该选股逻辑,可以考虑以下优化方案:
- 结合公司的基本面、估值、盈利预期等因素更全面地分析股票价值,避免只注重短期数据和现象;
- 区分短期和长期的投资需求,合理配置资产,分散风险,以稳健为先;
- 如果需要选出一些历史上表现不稳定但最近表现良好的标的,可以适当加入一些技术指标如RSI等。
最终的选股逻辑
改进后的选股逻辑如下:
- 振幅大于1;
- 连续3日上涨;
- 上市时间大于一年;
- 结合公司的基本面、估值、盈利预期等因素综合分析。
同花顺指标公式代码参考
该选股逻辑的通达信指标公式如下:
暂无
python代码参考
import pandas as pd
from tqsdk import TqApi, TqAuth
api = TqApi(auth=TqAuth("YOUR_ACCOUNT", "YOUR_PASSWORD"))
klines = api.get_kline_serial("SHFE.rb2101", 24 * 60 * 60, data_length=300) # 获取 df 数据, 周线为周期
df = pd.DataFrame(klines)
C1 = (df['high'] - df['low'] >= 1)
C2 = df.groupby('contract.symbol')['close'].apply(lambda x: (x.shift(1) == x.max()) & \
(x.shift(2) == x.max()) & \
(x.shift(3) == x.max())).astype(int)
C3 = (df['datetime'] - df['datetime'][0]).apply(lambda x: x.days >= 365).astype(int)
selector = (C1 & C2 & C3).astype(int)
result = df[selector == 1].index.tolist()
## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。
