问财量化选股策略逻辑
选股逻辑为:振幅大于1,10天内涨停天数大于2,2019分红比例>25%。将选股逻辑作为第一个段落放入标题为 ## 问财量化选股策略逻辑 的段落中。
选股逻辑分析
该选股策略基于以下几个条件来筛选股票:
- 振幅大于1,说明该股票存在较大波动性,有更高的交易机会;
- 10天内涨停天数大于2,说明该股票存在一定的热度;
- 2019分红比例>25%,说明公司具有盈利能力并有足够的现金流支付分红。
有何风险?
该选股策略可能存在以下风险:
- 选股策略基于历史数据,不能保证未来股价表现;
- 过于追求热点且量化要求过于简单,可能忽略某些重要的基本面和技术面风险;
- 只考虑分红比例不能完全代表公司盈利能力,同时高分红率也可能是公司资金链紧张的迹象。
如何优化?
为降低可能存在的风险和提升选股效果,可以考虑以下优化措施:
- 添加其他的技术指标、基本面指标、资金流向指标等,进行综合选股;
- 通过更精确的筛选条件来挑选接下来一段时间内具有显著上涨潜力的个股;
- 将分红率结合其他的公司财务指标进行评价,如净利润增长率、利润率等;
- 定期检查选股策略的性能并在必要时作出相应的调整。
最终的选股逻辑
经过上述优化,得到以下完善版的选股策略:
- 振幅大于1,10天内涨停天数大于2,选取质量更高的个股;
- 在满足上述条件的基础上,加入其他基本面指标,如PE、PB等,结合技术指标进行综合筛选;
- 将分红率作为一个辅助指标,结合其他财务指标进行判断;
- 考虑设置止损策略以随时进行风险控制;
- 定期评估选股策略的性能,进行相应调整。
注:以上选股策略仅供参考,具体可以根据实际需求和风险承受能力进行调整。
同花顺指标公式代码参考
以下是同花顺指标公式代码的参考:
- 振幅大于1:REF(HIGH-LOW,1) > 1
- 10天内涨停天数大于2:COUNT(CY>=1,CY) >= 2
- 2019分红比例>25%:YY1>=0.25*YY3
注:以上同花顺指标公式代码仅供参考,具体可以根据实际需求和风险承受能力进行调整。
Python代码参考
以下是Python代码的参考:
import tushare as ts
import pandas as pd
from datetime import datetime, timedelta
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.tolist():
#### 获取股票数据 ####
rs = ts.get_hist_data(code, start=(datetime.now() - timedelta(days=300)).strftime('%Y-%m-%d'),
end=datetime.now().strftime('%Y-%m-%d'))
if rs is None or len(rs)<250:
continue
#### 获取选股条件 ####
condition1 = (rs['high'] - rs['low'].shift(1))/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.098]), raw=True) > 2
condition3 = rs_basic_info.at[code, 'esp'] / rs_basic_info.at[code, 'bvps'] * 100 > 25
#### 综合评估 ####
if sum([condition1, condition2, condition3]) == 3:
selected_code.append(code)
return selected_code
注:以上Python代码需要安装tushare等库,仅供参考,具体根据实际需求和风险承受能力进行调整。
## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。
