问财量化选股策略逻辑
选股逻辑为:振幅大于1,流通市值大于100亿元,昨日竞价换手率大于0.26。该选股策略同时考虑了市场交易情况和公司规模,以及股票的交投活跃度。
选股逻辑分析
该选股策略主要考虑了市场交易情况和公司规模,以及股票的流动性因素。振幅和流通市值反映了市场的交投活跃度和公司的规模,而换手率则反映了股票的流动性。对于股票的选择,更加注重股票流动性和交投活跃度等因素,对于短期的操作具有一定的参考价值。
有何风险?
该选股策略依然忽略了公司的基本面和财务数据等重要因素,过于依赖股票流动性和交投活跃度等因素,存在一定程度上的盲目跟风和投资风险。同时,股票的换手率也可能受到市场热度的影响,可能存在市场风险。
如何优化?
在股票的选择上,要更加全面的考虑股票的基本面、技术面、行业前景等多方面因素,避免单方面依赖某一种因素的判断。在挑选股票时,应该加强风险控制,建立科学有效的风控机制以减少风险。同时,可以加入机器学习和人工智能等技术手段来辅助股票的挑选和判断。
最终的选股逻辑
选股条件为:振幅大于1,流通市值大于100亿元,昨日竞价换手率大于0.26。该选股策略同时考虑了市场交易情况和公司规模,以及股票的交投活跃度。
同花顺指标公式代码参考
C1: ABS((HIGH/LOW-1)*100)>=1; //振幅大于1
C2: CIRC_MV>10000000000; //流通市值大于100亿元
C3: JBP_N>0.26; //昨日竞价换手率大于0.26
SYMBOL: C1 AND C2 AND C3;
python代码参考
import pandas as pd
import tushare as ts
def select_stocks(length):
ts.set_token('your_token')
pro = ts.pro_api()
# 获取所有股票数据
data = pro.stock_basic(exchange='', list_status='L', fields='ts_code,name')
# 筛选符合条件的股票
df_list = []
for i in range(len(data)):
code = data.iloc[i]['ts_code']
# 判断是否符合要求
k_data = pro.daily(ts_code=code, start_date='20220101', end_date='20220601')
if k_data.empty:
continue
if abs((k_data.iloc[-1]['high'] / k_data.iloc[-1]['low'] - 1) * 100) < 1: # 振幅小于1
continue
circ_mv = pro.query('daily_basic', ts_code=code, trade_date=k_data.iloc[-1]['trade_date'], fields='circ_mv').iloc[0]['circ_mv'] # 流通市值
if circ_mv < 10000000000: # 流通市值小于100亿元
continue
jbp_data = pro.top_list(trade_date=k_data.iloc[-2]['trade_date'], fields='ts_code,jbp').set_index('ts_code')
if code not in jbp_data.index or jbp_data.loc[code]['jbp'] < 0.26: # 昨日竞价换手率小于0.26
continue
info = {}
info['ts_code'] = code
info['name'] = data.iloc[i]['name']
df_list.append(info)
# 随机选择一定数量的股票
selected_stocks = pd.DataFrame(df_list)
selected_stocks = selected_stocks.sample(n=length)
return selected_stocks
## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。
