问财量化选股策略逻辑
选股逻辑为:在换手率在3%~12%之间、买一量大于卖一量的股票中,如果竞价时涨跌幅是正数并且买入大单和特大单共计买入量大于0.7千万,则选取该股票。
选股逻辑分析
该选股策略注重了股票的流动性、市场情绪以及交易行为因素,选股时综合考虑了换手率、买一量、涨跌幅、大单和特大单买入量等指标,选择出流动性好、市场情绪乐观且具有较大买入潜力的股票。
有何风险?
该选股策略可能会忽略重要的基本面因素,使得选出来的股票可能存在财务风险,也可能会忽略市场的整体趋势,从而导致选股结果的不准确性。此外,该选股策略依赖于一定的交易技巧和市场判断能力,在选股时容易受到市场的干扰和波动。
如何优化?
应该加入基本面因素,如PE、PB等,来筛选出财务状况良好的股票以降低选股风险。同时,需要严格控制风险,确保交易决策的有效性。
最终的选股逻辑
在换手率3%-12%之间、买一量>卖一量的股票中,竞价时涨跌幅买入大单和特大单共计买入量大于0.7千万的股票。
同花顺指标公式代码参考
通达信公式:MAVOL(1),MA(3),MA(5),REF(C, 1)
python代码参考
import baostock as bs
import pandas as pd
#### 登陆系统 ####
lg = bs.login()
#### 获取满足条件的股票 ####
rs = bs.query_stock_basic()
stock_list = []
while (rs.error_code == '0') & rs.next():
stock_code = rs.get_row_data()[0]
# 查询分笔数据和历史K线数据
rs_l = bs.query_history_k_data_plus(stock_code, 'date,close,turn,tradestatus', start_date='2022-06-27', end_date='2022-06-30', frequency='d', adjustflag='3')
rs_t = bs.query_history_tick(stock_code, "date,time,price,volume,tradestatus,bsflag", start_date='2022-06-30', end_date='2022-06-30')
if rs_l.error_code == '0' and rs_t.error_code == '0':
# 筛选具有涨停板的股票
close = float(rs_l.get_row_data()[1])
if close * 1.1 <= rs_t.max_price[0]:
# 判断条件2
if float(rs_t.volume[0]) > float(rs_t.volume[1]):
# 判断条件3
if float(rs_t.price[0]) > close:
# 判断条件4,选取买入大单和特大单共计买入量大于0.7千万的股票
buy_vol = 0
for i in range(len(rs_t)):
if rs_t.bsflag[i] == "B":
if float(rs_t.volume[i]) > 500:
buy_vol += float(rs_t.volume[i])
elif float(rs_t.volume[i]) > 100:
buy_vol += float(rs_t.volume[i]) * 100
if buy_vol > 7000000:
stock_list.append(stock_code)
# 转换成DataFrame格式并输出结果
df = pd.DataFrame(stock_list, columns=['stock_code'])
print(df)
#### 登出系统 ####
bs.logout()
## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。


