问财量化选股策略逻辑
本选股策略逻辑要求振幅大于1,10天内涨停天数大于2,换手率在2%到9%之间。将选股逻辑作为第一个段落放入标题为 ## 问财量化选股策略逻辑 的段落中。
选股逻辑分析
本选股逻辑通过要求振幅大于1、10天内涨停天数大于2、换手率在2%到9%之间的条件可以筛选出一定基本面和市场表现优异的股票,适用于中长期投资策略。
有何风险?
以下是该选股策略可能存在的一些风险:
- 换手率数据可能会受到投资者数量和股票价格波动等因素的影响,存在一定误差;
- 选股过程中需要结合其他指标进行判断,单独使用该选股策略可能会漏选其他有价值的个股;
- 适用于中长期投资策略,对于短期投资策略可能不是很适用。
如何优化?
为了避免以上存在的风险,我们可以采用以下优化方案:
- 选股过程中应该结合其他指标进行综合筛选,如MACD等;
- 在确定换手率的条件区间时,可以依据历史数据进行调整,减小误差;
- 定期回测和调整选股策略,增加其可靠性;
- 加强风险控制,制定良好的止损、止盈策略,降低风险。
最终的选股逻辑
综合以上优化方案,我们得到完善的选股逻辑如下:
- 满足振幅大于1、10天内涨停天数大于2的条件;
- 换手率在2%到9%之间;
- 结合其他技术指标进行筛选;
- 建立完善的风控系统,减小波动风险;
- 定期回测和调整选股策略,增加其可靠性。
同花顺指标公式代码参考
以下是通达信指标公式的参考:
- 振幅大于1:REF(HIGH-LOW,1)>1
- 10天内涨停天数大于2:COUNT(CY>=1,CY)>2
- 换手率在2%到9%之间:TURNOVER>=2 and TURNOVER<=9
- 结合其他指标进行筛选
Python代码参考
以下是 Python 代码的参考:
import tushare as ts
def stock_selection():
rs_basic_info = ts.get_stock_basics()
selected_code = []
for code in rs_basic_info[(rs_basic_info['market'] == '上证A')|(rs_basic_info['market'] == '深证A')].index:
industry = rs_basic_info.loc[code, 'industry']
if industry in ['银行', '保险', '证券']:
continue
rs = ts.get_k_data(code, start=20, index=True, ktype='D')
if rs is None or len(rs) < 20:
continue
condition1 = (rs['high'] - rs['low'])/rs['close'].shift(1)*100 > 1
condition2 = rs['close'].rolling(window=10, min_periods=1).apply(lambda x: len(x[x>x.shift(1)*1.1]), raw=True) > 2
condition3 = (rs['turnover']/100 >= 2) & (rs['turnover']/100 <= 9)
if sum([condition1, condition2, condition3]) >= 2:
selected_code.append(code)
return selected_code
注:以上代码仅供参考,具体根据实际需求和风险承受能力进行调整。需要安装tushare等库。
## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。
