问财量化选股策略逻辑
选取振幅大于1、机构动向大于0、近一个月内有过涨停的股票进行买入。
选股逻辑分析
该选股逻辑主要是基于技术分析和市场热度来进行股票的选取。振幅和机构资金动向是代表技术面的指标,可以作为股票价格强弱的参考;近一个月内有过涨停则代表市场对该股票的关注度较高,可以反映市场情绪和热度。
有何风险?
该选股逻辑存在风险,因为通过涨停来筛选股票,可能会导致选出的股票存在抱团效应和炒作情况。同时,涨停股票可能在连续涨停之后出现暴跌或出现退潮的情况。
如何优化?
可以增加其他市场指标的参考,比如市场流通市值、市盈率等,同时加入对于股票基本面的分析,以更全面的角度观察股票的情况,减少可能的风险。
最终的选股逻辑
选取振幅大于1、机构动向大于0、近一个月内有过涨停的股票进行买入,同时加入市场流通市值、市盈率和股票基本面等因素进行综合分析,降低风险。
同花顺指标公式代码参考
// 筛选振幅大于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
// 筛选近一个月内有过涨停的股票
count_limit_up = COUNT(REF(HIGH, 1) == REF(HIGH_LIMIT,1), 20)
limit_up_bool = count_limit_up > 0
// 筛选符合条件的股票
result = amplitude_bool & fund_trend_bool & limit_up_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().fillna(0)
fund_trend_bool = sum_fund_net_amount > 0
# 筛选条件3:近一个月内有过涨停
limit_data = ts.cap_tops()
limit_up_bool = limit_data.groupby('code')['count'].sum().fillna(0) > 0
# 筛选符合条件的股票
result = amplitude_bool & fund_trend_bool & limit_up_bool
# 输出筛选结果
final_result = today_data.loc[result].sort_values(by=["turnoverratio"],ascending=False)
print(final_result)
注:以上为示例代码,请根据实际情况进行调整。
## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。
