问财量化选股策略逻辑
选股逻辑:振幅大于1,机器人概念且流通市值小于100亿,流通市值大于100亿元。
选股逻辑分析
该选股策略在基本面因素的振幅、机器人概念、流通市值的基础上,通过流通市值大于100亿元的条件来进一步筛选出具有一定规模的公司,并且流通市值小于100亿的条件可以进一步筛选出那些市值明显过大或过小的股票。该策略在筛选股票时对基本面和市值进行了结合,同时考虑到了股票流通性。
有何风险?
同样的,该选股策略仍然依赖基本面因素的选择以及市场热度的测量,同时,该策略可能会排除一些市值小于100亿元但具有高成长性、高分红率等优质股票,而对于流通市值大于100亿元的公司,过大的市值可能会影响其未来的成长空间。
如何优化?
可以考虑进一步优化该选股策略,例如增加更多的基本面因素、技术面因素和市场热度因素来提高选股的准确度和可靠性,或者在选股过程中增加动态调整的功能,以便及时根据市场走势和基本面变化进行股票的调整和替换。
最终的选股逻辑
综合以上分析,我们提出一种改进的选股逻辑:
- 振幅大于1;
- 机器人概念;
- 流通市值小于100亿元,并且大于10亿元。
同花顺指标公式代码参考
以下是通达信指标的代码示例:
F01:HIGH / LOW - 1 > 0.01; // 振幅大于1
F02:CONCEPT("机器人概念"); // 机器人概念
F03:CAPITALIZATION < 100000000; // 流通市值小于100亿
F04:CAPITALIZATION > 1000000000; // 流通市值大于10亿
FILTER:F01 AND F02 AND F03 AND F04;
SYMBOL_SORT("热度", SORT_DESCEND);
SELECT IF(F05, 1, 0) AS GOTO;
python代码参考
以下是用 Python 代码实现该策略的选股逻辑:
def stock_filter(dv, symbol):
high = dv.get_ts('high', symbol=symbol)
low = dv.get_ts('low', symbol=symbol)
concept_robot = dv.get_ts('concept', symbol=symbol).apply(lambda x: "机器人" in x)
circulation_market_cap = dv.get_ts('circulation_market_cap', symbol=symbol)
# 计算标志:振幅大于1、流通市值10亿到100亿之间、机器人概念
selected_stocks = (
(high / low - 1 > 0.01).any(axis=0) &
concept_robot &
(circulation_market_cap > 1000000000) &
(circulation_market_cap < 10000000000)
)
#按照热度排名进行排序
selected_stocks = selected_stocks[selected_stocks].sort_values(by='heat_rank', ascending=False)
return selected_stocks.index.tolist()
该代码示例使用 Python 实现了该选股逻辑,同样综合考虑了振幅、机器人概念、流通市值等因素,但将流通市值的筛选条件调整为小于100亿并且大于10亿,以更好地筛选出市值适中的股票。
## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。
