问财量化选股策略逻辑
选取振幅大于1、前日实际换手率在3%到28%之间、换手率在3%到12%之间的股票进行买入。
选股逻辑分析
该选股逻辑关注了市场交易活跃度,振幅和实际换手率可以反映出短期的市场需求预期和交易活跃度。同时,筛选出的股票的换手率不宜过高,以免影响交易成本和资金利用率。
有何风险?
该选股逻辑仍然没有考虑到公司基本面等更长期的因素,因此筛选结果可能存在不同程度的波动,不能保证每次都能够获得高收益。
如何优化?
可以加入一些相对稳定的基础面指标,如公司财务数据和行业前景等,来作为选股的重要参考。同时,换手率的范围可以略微放宽,以取得更大的选股范围。
最终的选股逻辑
选取振幅大于1、前日实际换手率在3%到28%之间、换手率在3%到12%之间,并具备相对稳定的基础面指标的股票进行筛选。
同花顺指标公式代码参考
// 筛选振幅大于1的股票
amplitude = (HIGH - LOW) / OPEN
amplitude_bool = amplitude > 1
// 筛选前日实际换手率在3%到28%之间的股票
volume_ratio = TODAY_VOLUME / REF(YESTERDAY_VOLUME, 1)
volume_ratio_bool = (volume_ratio >= 0.03) & (volume_ratio <= 0.28)
// 筛选换手率在3%到12%之间的股票
turnover_ratio = TODAY_VOLUME / TOT_VOL * 100
turnover_ratio_bool = (turnover_ratio >= 3) & (turnover_ratio <= 12)
// 筛选符合条件的股票
result = amplitude_bool & volume_ratio_bool & turnover_ratio_bool
// 输出筛选结果
result
Python代码参考
import tushare as ts
import pandas as pd
# 筛选条件1:振幅大于1
today_data = ts.get_today_all()
amplitude = (today_data['high'] - today_data['low']) / today_data['open']
amplitude_bool = amplitude > 1
# 筛选条件2:前日实际换手率在3%到28%之间
hist_data = ts.get_hist_data('600519')
volume_ratio = hist_data['volume'] / hist_data['volume'].shift(1)
volume_ratio_bool = (volume_ratio >= 0.03) & (volume_ratio <= 0.28)
# 筛选条件3:换手率在3%到12%之间
turnover_ratio = today_data['volume'] / today_data['totals'] * 100
turnover_ratio_bool = (turnover_ratio >= 3) & (turnover_ratio <= 12)
# 筛选符合条件的股票
result = amplitude_bool & volume_ratio_bool & turnover_ratio_bool
# 输出筛选结果
final_result = today_data.loc[result].sort_values(by=["turnoverratio"],ascending=False)
print(final_result)
注:以上为示例代码,请根据实际情况进行调整。
## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。
