问财量化选股策略逻辑
选股逻辑为:在换手率3%-12%,剔除北京A股,选出开盘价在十日线左右的股票。
选股逻辑分析
该选股逻辑主要利用了技术分析中的均线策略,期望能够挖掘出具有上涨潜力的股票。同时,也考虑了资金面因素,通过选取换手率较为活跃的股票进行筛选。
有何风险?
该选股逻辑只关注了开盘价和十日线的位置关系,并未考虑其他指标的影响,存在盲目跟风的风险。同时,均线策略有时会出现滞后性,可能会延迟选中潜在上涨股票的时间。
如何优化?
可以考虑增加其他基本面指标的筛选,例如市盈率、市净率等,综合分析选股。同时,可以结合其他技术指标进行分析,比如MACD指标等来进行选股。可以考虑引入机器学习方法进行特征工程和模型训练,提高选股的精度。
最终的选股逻辑
在换手率3%-12%,剔除北京A股,选取开盘价在十日线左右的股票,综合考虑其他的指标并分析选股。
同花顺指标公式代码参考
MA(CLOSE,10) #十日均线
FILTER:(REF(CLOSE,1)<MA(CLOSE,10) AND OPEN>MA(CLOSE,10)),0,1;
Python代码参考
import tushare as ts
import numpy as np
import pandas as pd
def select_good_stocks():
ts.set_token('your_token')
pro = ts.pro_api()
# 筛选出换手率3%-12%,剔除北京A股,选取开盘价在十日线左右的股票
df1 = pro.stock_basic(exchange='SZSE', list_status='L', fields='ts_code,name,industry,pe,pb,turnover_rate,amount,total_mv,float_mv')
df1 = df1[(df1['turnover_rate'] >= 3) & (df1['turnover_rate'] <= 12)]
df1 = df1[(df1['name'].str.contains('ST') == False)]
df1 = df1[(df1['ts_code'].str.startswith('002') == True) | (df1['ts_code'].str.startswith('000') == True)]
df2 = pro.daily(ts_code='', start_date='20220101', end_date='20220110')
df2 = df2.groupby(['ts_code']).first() # 获取开盘价
df2 = df2[['open']]
df3 = pro.daily(ts_code='', start_date='20220110', end_date='20220110')
df3 = df3.groupby(['ts_code']).last() # 获取昨日收盘价
df3 = df3[['close']]
df1 = pd.merge(df1, df2, on="ts_code", how="inner") # 将dataframe按ts_code进行连接
df1 = pd.merge(df1, df3, on="ts_code", how="inner")
df1['ma10'] = df1['close'].rolling(window=10).mean() # 计算十日均线
df1 = df1[(df1['open'] > df1['ma10']) & (df1['open'] < (1.02 * df1['ma10']))]
df1 = df1.head(20)
return df1
good_stocks = select_good_stocks()
print(good_stocks)
## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。


