问财量化选股策略逻辑
本选股策略选择振幅大于1、2019分红比例大于25%、上市时间大于5年的股票为选股对象。
选股逻辑分析
该选股策略同样采用了技术面和基本面因素,振幅大于1可以反映出股票市场波动情况,2019分红比例大于25%可以增强投资者信心,同时加入上市时间指标,可以反映出股票的成熟程度和市场认可度,符合投资者选择的标准。
有何风险?
该策略同样可能会面对市场异常波动、特定行业或个股的风险。而且选择上市时间作为指标,可能忽略一些新上市股票的发展潜力,同时也可能过度依赖历史数据,难以反映出未来走势。同时,需要谨慎选择适合自己的投资标的,并及时调整投资组合,避免过度集中持仓。
如何优化?
可以加入更多的因素来制定选股策略,如市盈率、市净率等因素,从更多角度进行分析,以更全面的视角制定选股策略。同时,需要加强资产配置和风险控制,建立科学的投资组合,对于出现异常情况,及时割肉止损,减低损失。此外,根据个人投资需求和风险承受能力对策略进行个性化调整,才能提高投资效果。
最终的选股逻辑
最终选股策略的逻辑为:振幅大于1、2019分红比例大于25%、上市时间大于5年的股票为选股对象。
同花顺指标公式代码参考
// 筛选振幅大于1的股票
amplitude = (HIGH - LOW) / OPEN
amplitude_bool = amplitude > 0.01
// 筛选2019年度分红比例大于25%的股票
dividend_year = DIVIDENDYIELD * 100
dividend_year_bool = dividend_year > 25
// 筛选上市时间大于5年的股票
list_date = str_to_date(LISTDATE)
listing_days = DATE - list_date
listing_days_bool = listing_days > 1825
// 合并筛选条件
result = amplitude_bool & dividend_year_bool & listing_days_bool
// 输出结果
result
Python代码参考
import tushare as ts
from datetime import datetime
from dateutil.parser import parse
# 筛选条件1:振幅大于1
now_data = ts.get_today_all()
amplitude = (now_data['high'] - now_data['low']) / now_data['open']
amplitude_bool = amplitude > 0.01
# 筛选条件2:2019分红比例大于25%
basic_data = ts.get_stock_basics()
dividend_year = basic_data['dividend_yield'] * 100
dividend_year_bool = dividend_year > 25
# 筛选条件3:上市时间大于5年
basic_data['list_date'] = basic_data['timeToMarket'].apply(lambda x: datetime.strptime(str(x), '%Y%m%d'))
list_date = basic_data['list_date']
now_date = datetime.now()
listing_days = (now_date - list_date).dt.days
listing_days_bool = listing_days > 1825
# 合并筛选条件
result = amplitude_bool & dividend_year_bool & listing_days_bool
# 筛选结果
final_result = now_data.loc[result]
# 输出结果
print(final_result)
## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。
