问财量化选股策略逻辑
选股逻辑:振幅大于1,机器人概念且流通市值小于100亿,换手率>2%且<9%。
选股逻辑分析
该选股策略在基本面因素的振幅、机器人概念、流通市值的基础上,增加了换手率因素,即选择具有一定热度但交易活跃度不过于快速的股票。换手率太高的股票可能已经被过度炒作,而换手率太低的股票可能缺乏市场关注度。
有何风险?
该选股策略仍然依赖基本面因素的选择以及市场热度的测量,而换手率因素本身也可能存在片面性和不准确性。另外,从长期投资的角度看,忽略某些因素可能会造成长期风险。
如何优化?
可以同时考虑更多的基本面因素,例如财务数据,市盈率等更全面的指标来提高选股的准确度和可靠性,同时开发更加符合实际情况的选股模型。此外,可以添加技术面因素,例如均线、相对强弱指标等,来进一步增强筛选股票的能力。
最终的选股逻辑
考虑到策略的可行性和稳定性,在上述选股策略的基础上,我们提出一种改进的选股逻辑:
- 振幅大于1;
- 机器人概念;
- 流通市值小于100亿元;
- 换手率大于2%且小于9%;
同花顺指标公式代码参考
以下是通达信指标的代码示例:
F01:HIGH / LOW - 1 > 0.01; // 振幅大于1
F02:CONCEPT("机器人概念"); // 机器人概念
F03:CAPITALIZATION < 10000000000; // 流通市值小于100亿
F04:TURN > 2 AND TURN < 9; // 换手率大于2%且小于9%
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)
turnover_rate = dv.get_ts('turnover_rate_value', symbol=symbol)
# 计算标志:振幅大于1、流通市值小于100亿、换手率2%-9%、机器人概念
selected_stocks = (
(high / low - 1 > 0.01).any(axis=0) &
concept_robot &
(circulation_market_cap < 10000000000) &
(turnover_rate > 0.02) & (turnover_rate < 0.09)
)
#按照热度排名进行排序
selected_stocks = selected_stocks[selected_stocks].sort_values(by='heat_rank', ascending=False)
return selected_stocks.index.tolist()
该代码示例使用 Python 实现了该选股逻辑,其中除振幅、机器人概念、流通市值外,增加了换手率因素,并综合考虑股票的基本面、技术面、市场热度等因素进行选股,以提高投资效果和安全性。
## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。
