问财量化选股策略逻辑
- 今日增仓占比>5%
- 三连阴
- 10天内涨停天数大于2
选股逻辑分析
- 今日增仓占比>5%:说明该股票近期有主力资金流入,可能具有上涨潜力。
- 三连阴:说明该股票连续三个交易日下跌,可能会出现反弹的机会。
- 10天内涨停天数大于2:说明该股票在最近10个交易日内出现过两次或以上的涨停板,说明该股票具有较强的市场关注度和活跃度。
有何风险?
- 该策略只考虑了股票的短期表现,忽略了长期趋势和基本面因素,可能会导致选出的股票表现不佳。
- 如果市场整体表现不佳,即使符合该策略的股票也可能出现下跌的情况。
如何优化?
- 可以考虑加入更多的筛选条件,例如加入股票的市值、市盈率等基本面因素,以更好地判断股票的价值和风险。
- 可以考虑加入技术分析指标,例如布林线、移动平均线等,以更好地判断股票的走势和趋势。
最终的选股逻辑
- 今日增仓占比>5%
- 三连阴
- 10天内涨停天数大于2
- 市值大于100亿
- 市盈率小于30
- 布林线在中轨之上
python代码参考
import talib
import pandas as pd
def get筛选条件():
# 获取今日增仓占比数据
df = pd.read_csv('data.csv')
df['今日增仓占比'] = df['今日增仓比例']
# 获取三连阴数据
df['三连阴'] = df['收盘价'].diff() < 0
# 获取10天内涨停天数数据
df['10天内涨停天数'] = df['涨停天数'].rolling(10).sum()
# 获取市值和市盈率数据
df['市值'] = df['流通市值']
df['市盈率'] = df['静态市盈率']
# 获取布林线数据
df['布林线中轨'] = talib.BBANDS(df['收盘价'], timeperiod=20, nbdevup=2, nbdevdn=2, matype=0)
return df
def get筛选结果(df):
# 筛选出符合条件的股票
result = df[(df['今日增仓占比'] > 0.05) & (df['三连阴']) & (df['10天内涨停天数'] > 2)]
# 筛选出市值大于100亿、市盈率小于30的股票
result = result[(result['市值'] > 1000000000) & (result['市盈率'] < 30)]
# 筛选出布林线在中轨之上的股票
result = result[(result['布林线中轨'] > result['收盘价'])]
return result
# 获取数据
df = pd.read_csv('data.csv')
# 筛选条件
筛选条件 = get筛选条件()
# 筛选结果
筛选结果 = get筛选结果筛选条件)
# 输出结果
print筛选结果)
如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
如果有任何问题请添加 下方的二维码进群提问。


