问财量化选股策略逻辑
首先,我们定义了以下三个条件来筛选股票:
- 至少5根均线重合的股票
- 100亿市值以内的无亏损企业
- 2021年营收/2018年营收大于1.1
选股逻辑分析
这个策略的目的是找到那些有良好业绩增长潜力的股票。首先,筛选出市值小于100亿的股票,因为这些公司通常更容易受到市场波动的影响。然后,我们要求股票在过去两年中有良好的营收增长,这表明公司正在经历稳定的增长。最后,我们要求至少5根均线重合,这表明股票价格和成交量都在上升,市场对该股票的预期良好。
有何风险?
这个策略的风险在于它可能过于侧重于短期市场表现,而忽略了公司的长期潜力。此外,如果市场出现大幅波动,市值小于100亿的股票可能会受到更大的影响。另外,如果公司营收增长放缓或出现亏损,该策略也可能无法产生良好的回报。
如何优化?
为了优化这个策略,我们可以考虑加入更多的筛选条件,例如市盈率、市净率等。此外,我们还可以考虑使用更多的技术指标来评估股票的价格和成交量。另外,我们还可以考虑使用更多的数据来源来评估公司的财务状况和业绩表现。
最终的选股逻辑
以下是最终的选股逻辑:
- 股票市值小于100亿
- 过去两年营收年均复合增长率大于15%
- 市盈率小于20倍
- 市净率大于1.5倍
- 5日、10日、20日、60日、120日均线至少有4条重合
- 股票价格在过去6个月中上涨至少30%
python代码参考
以下是使用pandas和numpy库实现上述策略的Python代码:
import pandas as pd
import numpy as np
def get_data():
# 获取股票数据
df = pd.read_csv('stock_data.csv')
# 筛选出市值小于100亿的股票
df = df[df['market_cap'] < 100]
# 筛选出过去两年营收年均复合增长率大于15%的股票
df = df[df['revenue_growth'] > 15]
# 筛选出市盈率小于20倍的股票
df = df[df['pe'] < 20]
# 筛选出市净率大于1.5倍的股票
df = df[df['pb'] > 1.5]
# 筛选出5日、10日、20日、60日、120日均线至少有4条重合的股票
df = df[df['ma5'] == df['ma10'] == df['ma20'] == df['ma60'] == df['ma120']]
# 筛选出股票价格在过去6个月中上涨至少30%的股票
df = df[df['close'] > df['close'].shift(6) * 1.3]
return df
def get筛选条件():
# 获取筛选条件
df = get_data()
# 筛选出市值小于100亿的股票
condition1 = df['market_cap'] < 100
# 筛选出过去两年营收年均复合增长率大于15%的股票
condition2 = df['revenue_growth'] > 15
# 筛选出市盈率小于20倍的股票
condition3 = df['pe'] < 20
# 筛选出市净率大于1.5倍的股票
condition4 = df['pb'] > 1.5
# 筛选出5日、10日、20日、60日、120日均线至少有4条重合的股票
condition5 = df['ma5'] == df['ma10'] == df['ma20'] == df['ma60'] == df['ma120']
# 筛选出股票价格在过去6个月中上涨至少30%的股票
condition6 = df['close'] > df['close'].shift(6) * 1.3
# 合并筛选条件
return condition1 & condition2 & condition3 & condition4 & condition5 & condition6
def get_top_n筛选条件(n):
# 获取筛选条件
df = get_data()
# 筛选出市值小于100亿的股票
condition1 = df['market_cap
## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。


