问财量化选股策略逻辑
选股逻辑:选取RSI小于65、按个股热度从大到小排序、9点25分涨幅小于6%的股票。
选股逻辑分析
该选股逻辑结合了技术面指标RSI和市场热度以及短期涨幅,选取RSI小于65这一技术面指标进行选股,同时选取个股热度排序,选取相对较为活跃的股票,并且限制了9点25分涨幅小于6%的股票,避免过度乐观导致回撤。
有何风险?
该选股逻辑仍然仅根据技术面指标和市场热度以及短期涨幅进行选股,可能不够全面,可能会忽略企业基本面的信息,可能会导致选择低估或高估的个股,还会漏选一些潜力股。
如何优化?
除了技术面指标和市场热度以及短期涨幅外,可以考虑纳入更具指导意义的评价指标,如市盈率、市净率等因素来筛选股票。
最终的选股逻辑
综合考虑企业基本面、技术面和市场热度以及涨幅等多方面因素来筛选个股。选取符合综合条件的股票,并进行个股热度排序,筛选出相对较为活跃的股票,并限制短期涨幅,避免回撤。
同花顺指标公式代码参考
RSI指标:RSI(CLOSE,14)
python代码参考
import tushare as ts
import datetime
import talib
import pandas as pd
# Tushare需要先调用login接口进行登陆
ts.set_token("your_tushare_token")
# 初始化pro接口对象
pro = ts.pro_api()
# 获取所有股票列表
stock_list = pro.stock_basic(exchange="", list_status="L", fields="ts_code").sort_values(by='vol3month', ascending=False)
# 循环遍历股票列表,按热度排序选取符合条件的股票
result_list = []
for stock in stock_list.ts_code.tolist():
# 获取股票日线数据
data = pro.daily(ts_code=stock, end_date="20220401", start_date="20220324")
# 计算RSI指标
rsi = talib.RSI(data["close"].values, timeperiod=14)[-1]
# 获取股票实时数据
quote = pro.realtime_quotes(ts_code=stock)
# 判断是否符合选股条件
if rsi < 65 and not pd.isnull(data.iloc[0]['notional']) and data.iloc[0]['circ_mv'] > 100000 and data.iloc[0]['vol'] > 10000 and float(quote.iloc[0]['open'])/float(quote.iloc[0]['pre_close'])-1 < 0.06:
result_list.append(stock)
# 按照个股热度排序
result_list = stock_list[stock_list['ts_code'].isin(result_list)].sort_values(by="vol3month", ascending=False)["ts_code"].tolist()
# 打印符合选股条件的股票列表
print(result_list)
## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。
