问财量化选股策略逻辑
选股条件为:振幅大于1、机构抄底、未清偿可转债简称不可为空,选出符合条件的个股。在每日开盘后选股票。
选股逻辑分析
该选股策略考虑了交易数据(振幅大于1)、资金流向(机构抄底)和债券市场信息(未清偿可转债简称不可为空)等因素,选取了同时满足多个因素的个股。振幅大于1意味着股票在较短时间内的波动较大,机构抄底预示着市场资金流向,而选择未清偿可转债简称不可为空可以过滤掉一部分风险较高的股票。该选股策略的运作逻辑清晰,选股条件较为合理,适合短期投资。
有何风险?
该选股策略存在一定的风险,主要体现在考虑因素过于单一。选股条件较为简单,无法考虑到其他重要因素的影响,如宏观经济、行业板块等因素。同时,选股条件只考虑了未清偿可转债简称不可为空,未必能够避免全部风险。该选股策略应注意适度风险管理。
如何优化?
增加研究和深度挖掘不同因素的影响,建立更加全面的选股策略。建议选取更有代表性、权重更大的市场指数、股票池等大数据源进行筛选,以提高选股策略的覆盖面和精度。同时,选择适合自己的选股区间和策略,进行合理风险管理。
最终的选股逻辑
选股条件为:振幅大于1(SYNJZ('AMO', 5) > 1)、机构抄底(ABS(ORG_TODAY_PARTICIPATE_RATE - ORG_YESTERDAY_PARTICIPATE_RATE) > 0.05)、未清偿可转债简称不可为空(B_EVENT('NOTICE', 'N', 'CONVERT_BOND')),选出符合条件的个股。在每日开盘后选股票。
同花顺指标公式代码参考
振幅大于1:SYNJZ('AMO', 5) > 1 ;
机构参与度:ABS(ORG_TODAY_PARTICIPATE_RATE - ORG_YESTERDAY_PARTICIPATE_RATE) > 0.05 ;
未清偿可转债简称不可为空:B_EVENT('NOTICE', 'N', 'CONVERT_BOND');
最终选股条件:SYNJZ('AMO', 5) > 1 AND ABS(ORG_TODAY_PARTICIPATE_RATE - ORG_YESTERDAY_PARTICIPATE_RATE) > 0.05 AND B_EVENT('NOTICE', 'N', 'CONVERT_BOND')。
Python代码参考
import tushare as ts
def get_selected_stocks():
# 振幅大于1
condition1 = SYNJZ('AMO', 5) > 1
# 机构抄底
org_data = ts.pro_bar()
org_data['ORG_TODAY_PARTICIPATE_RATE'] = org_data['buy_l'] / (org_data['buy_l'] + org_data['sell_l'])
org_data['ORG_YESTERDAY_PARTICIPATE_RATE'] = org_data.groupby('ts_code')['ORG_TODAY_PARTICIPATE_RATE'].shift(1)
condition2 = abs(org_data['ORG_TODAY_PARTICIPATE_RATE'] - org_data['ORG_YESTERDAY_PARTICIPATE_RATE']) > 0.05
# 未清偿可转债简称不可为空
bond_data = ts.new_cbonds()
condition3 = bond_data['short_name'].notnull()
# 获取符合条件的股票
selected_data = ts.get_stock_basics()[condition1 & condition2 & condition3].index.tolist()
return selected_data
result = get_selected_stocks()
print(result)
注:以上代码仅供参考,实际选股可结合具体情况进行适度修改。
## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。
