问财量化选股策略逻辑
选股逻辑为:振幅大于1,企业性质良好,换手率在2%至9%之间。
选股逻辑分析
该选股逻辑综合考虑了价格波动、企业基本面和交易量等多个方面,可以筛选出具有一定投资价值的股票。其中振幅大于1表明股票价格有一定波动性,企业性质良好则保障了其投资价值,换手率在2%至9%之间则表明该股票市场流通性适中,容易买卖且不受大单交易的影响,是一个相对较好的选择。
有何风险?
该选股逻辑存在的风险是只考虑了振幅、企业基本面和交易量等因素,没有更进一步地考虑公司的财务状况、行业竞争等因素,可能会忽略重要的基本面指标,导致选股结果不准确。同时,该选股策略对股票交易流通性的选择较为狭窄,可能会忽略一些市场交易流通性较好但价值不可忽视的投资标的。
如何优化?
可以增加一些筛选条件,如市盈率、盈利增长率、ROE等指标,以更好地筛选具有投资价值的股票;同时可以结合技术指标、基本面指标和市场宏观指标等多个方面进行综合判断,更全面地评估股票的价值和风险。可以通过其他信源获取更多的公司财务状况、行业竞争等信息,以更好地评估公司的风险;同时可以考虑利用机器学习、人工智能等技术进行选股优化。
最终的选股逻辑
综合以上分析,最终的选股逻辑如下:
- 振幅大于1;
- 企业性质良好,包括但不限于盈利能力强、成长性、市值、ROE等;
- 换手率在2%至9%之间;
- 根据市场情况和个人风险偏好,选择适当的排名范围;
- 结合技术指标、基本面指标和市场宏观指标等多个方面进行综合判断,选取符合策略的股票。
同花顺指标公式代码参考
该选股逻辑的同花顺指标公式如下:
/* 选股公式 */
A:(HIGH-LOW)/REF(CLOSE,1)>0.01;
B:XX企业性质;
C:(TURNOVERRATE>=2 AND TURNOVERRATE<=9);
A AND B AND C <= N; /* N为排名范围 */
其中,A:(HIGH-LOW)/REF(CLOSE,1)>0.01
表示振幅大于1,B:XX企业性质
表示企业性质良好, C:(TURNOVERRATE>=2 AND TURNOVERRATE<=9)
表示换手率在2%至9%之间,A AND B AND C <= N
表示逻辑与且排名不高于N。
Python代码参考
适用于tushare库的Python选股代码如下:
import tushare as ts
import numpy as np
def is_selected(code, eps=1, rank_range=(1, 50)):
# 判断股票是否满足选股逻辑
df_basic = ts.get_stock_basics()
if not XX企业性质:
return False
price = ts.get_realtime_quotes(code)['price']
if not (np.abs(float(price) - 18.5) < eps):
return False
df_hist = ts.get_hist_data(code)
if (df_hist['high'] - df_hist['low']).mean() / df_hist['close'].iloc[-1] <= 0.01:
return False
df_moneyflow = ts.get_money_flow(code)
if df_moneyflow.iloc[-1]['net_big_order'] < np.percentile(df_moneyflow['net_big_order'], 80):
return False
rank = ts.top_list(df_moneyflow.index[0])['code'].tolist().index(code) + 1
if rank < rank_range[0] or rank > rank_range[1]:
return False
return True
# 获取热度排名前N的股票列表,遍历股票进行选股
stocks = ts.top_list()
selected_stocks = []
for i in range(N):
code = stocks['code'].iloc[i]
if is_selected(code, rank_range=(1, N)):
selected_stocks.append(code)
# 利用选股结果进行股票交易
for code in selected_stocks:
pass # 参考其他策略
其中需要根据选股策略修改参数,通过tushare库实时获取股票的价格、历史行情和大单净量等信息进行计算判断,并利用选股结果进行股票交易。
## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。
