问财量化选股策略逻辑
选股逻辑为:振幅大于1,企业性质,机构动向大于0。
选股逻辑分析
选股逻辑中,振幅大于1表示对短期波动相对敏感,企业性质体现了基本面的关注,机构动向大于0则体现了市场资金的追逐。这三个因素综合考虑可以达到在相对长时间内获得较为稳健的收益的目的。
有何风险?
选股逻辑中,仅考虑市场基本面情况和市场趋势,如果没有对未来市场预期、行业趋势等进行分析,可能会导致选股结果在未来表现不佳。另外,若市场处于大幅波动的情况下,股票选取过于关注趋势,则在短时期内可能会出现亏损。
如何优化?
可以从以下两个方面优化选股逻辑:
- 在考虑股票趋势的同时,加入更多短期波动的判断因素,如波动率等。
- 在考虑市场基本面和股票趋势的同时,加入行业、政策等因素的分析,以综合判断股票的真实价值和价格波动情况。
最终的选股逻辑
经过优化,最终的选股逻辑如下:
- 振幅大于1;
- 企业性质符合标准;
- 机构动向大于0;
- 60日波动率高于历史均值;
同花顺指标公式代码参考
选股逻辑的同花顺指标公式如下:
/* 选股公式 */
A:(HIGH-LOW)/REF(CLOSE,1)>0.01;
B:XX企业性质;
C:__________; /* 机构动向的计算公式 */
D:__________; /* 60日波动率高于历史均值的计算公式 */
A AND B AND C AND D;
其中,XX企业性质
可以根据具体行业选择不同的企业性质判断标准。对于第三个判断因素,可以根据机构投资者的持股变动情况计算得出。对于第四个判断因素,可以根据历史数据计算得出。
Python代码参考
适用于tushare库的Python选股代码如下:
import tushare as ts
def is_selected(code):
# 判断股票是否满足选股逻辑
hist_data = ts.get_hist_data(code)
if hist_data is None or len(hist_data) < 250:
return False
if (hist_data['high'] - hist_data['low']).mean() / hist_data['close'].mean() <= 0.01:
return False
if not XX企业性质:
return False
if ts.inst_tops(code).iat[0, -1] <= 0:
return False
if ldv(hist_data['close'][:-1], 60).std() <= ldv(hist_data['close'][:-1], 60).mean():
return False
return True
def ldv(data, period):
# 计算数据的n日移动标准差
return pd.Series(data).rolling(window=period, min_periods=period).std(ddof=0)
# 获取股票列表,遍历股票进行选股
stocks = ts.get_stock_basics()
selected_stocks = []
for code, row in stocks.iterrows():
if is_selected(code):
selected_stocks.append(code)
# 利用选股结果进行股票交易
for code in selected_stocks:
pass # 参考其他策略
其中 XX企业性质
可以根据具体行业选择不同的企业性质判断标准,get_stock_basics
函数可以获取股票的基本面信息,get_hist_data
函数可以获取股票历史交易数据,inst_tops
函数可以获取股票机构投资者的持股变动情况,ldv
函数可以计算数据的n日移动标准差。
## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。
