问财量化选股策略逻辑
本选股策略为:RSI指标小于65,今日上涨幅度大于1%,主板股票,今日控盘比例大于等于21%。期望通过技术面、市场情绪和资金面控制,找到具备较强市场表现的低风险股票。
选股逻辑分析
本选股策略在原有策略上增加了今日控盘比例大于等于21%的选股条件。控盘比例是指当日该股票交易量中,成交量大于卖出量部分的比例。控盘比例大于等于21%代表该股票当前有资金靠前的投资者在控制买卖,具有一定资金面支撑。技术面方面,RSI指标小于65代表股票处于超卖区间,可以预期股票将会反弹;今日上涨幅度大于1%代表股票动能较强,预期未来将继续上涨;选择主板股票,代表该股票具备较强的市场地位和良好的基本面。期望长期内能够获得具有较好市场表现的投资收益,同时避免行业、技术面和资金面的风险。
有何风险?
由于增加了今日控盘比例大于等于21%的选股条件,可能会限制选股范围,忽略其他具备投资价值的股票。此外,控盘比例大于等于21%仅代表当日合格,可能无法反映出长期资金面状况。
如何优化?
可以结合其他资金面指标、技术指标或基本面指标,综合判断股票的投资价值。同时,在风险控制的前提下,尽量扩大选股范围,提高选股的灵活性。
最终的选股逻辑
本选股策略为:RSI指标小于65,今日上涨幅度大于1%,主板股票,今日控盘比例大于等于21%。期望通过技术面、市场情绪和资金面控制,找到具备较强市场表现的低风险股票。
同花顺指标公式代码参考
今日控盘:(VOL - SVOL) / (B1_V + S1_V) >= 0.21
python代码参考
# 导入需要使用的库
import pandas as pd
import tushare as ts
import talib
# 选股函数
def stock_picking():
# 获取RSI指标小于65、今日上涨幅度大于1%、主板股票、今日控盘比例大于等于21%的股票
market_data = ts.get_today_all()
market_data.dropna(inplace=True)
market_data['circulating_market_value'] = market_data['mktcap'] - market_data['nmc']
market_data['circul'] = market_data['circulating_market_value'] / market_data['settlement'] / 100000000
tick_data = ts.get_today_ticks()
merge_data = pd.merge(market_data, tick_data, on='code', how='inner')
merge_data.drop(merge_data[merge_data['volume'] <= 0].index, inplace=True)
merge_data['control_ratio'] = abs(merge_data['volume'] - merge_data['selloff']) / (merge_data['b1_v'] + merge_data['s1_v'])
filter_data = merge_data[(merge_data['rsi'] < 65) & (merge_data['changepercent'] > 1.0) & (merge_data['stock_type'] == '主板') & (merge_data['control_ratio'] >= 0.21)]
filter_data = filter_data[['name', 'industry', 'open', 'price', 'outstanding', 'totals', 'totalAssets', 'liquidAssets', 'fixedAssets', 'reserved','reservedPerShare', 'esp', 'bvps', 'pb', 'timeToMarket']]
return filter_data
## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。


