问财量化选股策略逻辑
选取振幅大于1、机构动向大于0、换手率大于2%小于9%的股票作为选股对象。
选股逻辑分析
该选股策略结合了市场波动、机构资金动向和流动性因素,振幅大于1可以筛选出波动性较强的股票,机构动向大于0表明大资金进入该股票,同时将流动性控制在2%~9%之间,可以筛选出市值适中,波动性较高但又流动性较好的股票。
有何风险?
该选股策略仍然存在较大的短期市场风险和技术指标风险,忽略了公司基本面因素和长期发展潜力等因素,较为依赖短期市场及技术指标的走势,存在一定的不确定性和风险。
如何优化?
可以加入更多的基本面因素和长期潜力等因素进行综合评估,同时结合技术指标和市场走势进行筛选,缩小选股的误差和风险。此外,对于投资组合进行分散化投资,并建立合理的风险控制机制,对于符合筛选标准的股票进行严格的风控和优化管理。
最终的选股逻辑
在综合考虑市场波动、机构资金动向、流动性因素和长期潜力等因素的基础上,筛选出具备投资价值的股票,并根据个人风险偏好进行分散化投资和风险控制。
同花顺指标公式代码参考
// 筛选振幅大于1的股票
amplitude = (HIGH - LOW) / OPEN
amplitude_bool = amplitude > 1
// 筛选机构动向大于0的股票
FUND_NET_AMOUNT = IF(NETFAMOUNT>0,NETFAMOUNT,0)
sum_fund_net_amount = SUM(FUND_NET_AMOUNT, 5)
fund_trend_bool = sum_fund_net_amount > 0
// 筛选换手率大于2%小于9%的股票
turnover_ratio = (AMOUNT / M_CAP) * 100
turnover_bool = (turnover_ratio > 2) & (turnover_ratio < 9)
// 筛选符合条件的股票
result = amplitude_bool & fund_trend_bool & turnover_bool
// 输出筛选结果
result
Python代码参考
import tushare as ts
# 筛选条件1:振幅大于1
today_data = ts.get_today_all()
amplitude = (today_data['high'] - today_data['low']) / today_data['open']
amplitude_bool = amplitude > 1
# 筛选条件2:机构动向大于0
fund_data = ts.fund_holdings(2020, 3)
sum_fund_net_amount = fund_data.groupby('code')['net_amount'].sum()
fund_trend_bool = sum_fund_net_amount > 0
# 筛选条件3:换手率大于2%小于9%
turnover_ratio = (today_data['amount'] / today_data['mktcap']) * 100
turnover_bool = (turnover_ratio > 2) & (turnover_ratio < 9)
# 筛选符合条件的股票
result = amplitude_bool & fund_trend_bool & turnover_bool
# 输出筛选结果
final_result = today_data.loc[result].sort_values(by=["turnoverratio"], ascending=False)
print(final_result)
注:以上为示例代码,请根据实际情况进行调整。
## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。
