问财量化选股策略逻辑
- 今日增仓占比>5%
- 周线MA5金叉MA10
- 10日涨幅大于0小于35
选股逻辑分析
上述三个条件分别代表了以下含义:
- 今日增仓占比>5%:说明该股票近期有资金流入,可能具有上涨潜力。
- 周线MA5金叉MA10:说明该股票的短期和长期趋势是向上的,表明市场对该股票的未来走势较为乐观。
- 10日涨幅大于0小于35:说明该股票在最近10天内有上涨趋势,但涨幅不大,可能具有较好的投资价值。
综合以上三个条件,我们可以筛选出那些近期有资金流入、短期和长期趋势向上的股票,并且在最近10天内有上涨趋势但涨幅不大,这些股票可能具有较好的投资价值。
有何风险?
尽管上述三个条件可以筛选出一些具有投资价值的股票,但仍然存在一定的风险。首先,市场走势是不确定的,即使股票有上涨潜力,也可能出现回调或下跌的情况。其次,资金流入并不代表该股票一定会上涨,资金流入可能是由于市场整体趋势向好,也可能是由于短期投机行为导致的。最后,股票的涨幅受到多种因素的影响,包括公司业绩、行业趋势、政策环境等,因此涨幅不大并不一定代表该股票具有投资价值。
如何优化?
为了进一步降低风险,我们可以考虑增加一些其他条件来筛选股票。例如,我们可以考虑筛选出那些具有稳定盈利能力、良好发展前景、低市盈率等条件的股票。此外,我们还可以考虑结合技术分析和基本面分析来筛选股票,以更加准确地判断股票的走势和投资价值。
最终的选股逻辑
最终的选股逻辑如下:
import talib
def get筛选条件():
# 今日增仓占比
ma5 = talib.MA(close, timeperiod=5)
ma10 = talib.MA(close, timeperiod=10)
today_buy_volume = close[-1] / close[0]
today_buy_volume_ratio = today_buy_volume / ma5[-1]
if today_buy_volume_ratio > 0.05:
return True
# 周线MA5金叉MA10
if ma5[-1] > ma10[-1] and ma5[-2] < ma10[-2]:
return True
# 10日涨幅大于0小于35
if close[-1] - close[0] > 0 and close[-1] - close[0] < 0.35:
return True
return False
def get_top_n筛选条件(n):
# 获取所有满足筛选条件的股票
stocks = get_stocks()
filtered_stocks = [stock for stock in stocks if get筛选条件()]
# 按照涨幅从大到小排序
filtered_stocks.sort(key=lambda x: x[-1] - x[0], reverse=True)
# 获取前n个股票
top_n_stocks = filtered_stocks[:n]
return top_n_stocks
def get_stocks():
# 获取所有股票的收盘价
close_prices = get_prices()
# 获取所有股票的代码
codes = get_codes()
# 获取所有股票的成交量
volume = get_volume()
# 将收盘价、代码和成交量组合成一个列表
stocks = list(zip(close_prices, codes, volume))
return stocks
def get_prices():
# 获取历史行情数据
data = get_data()
# 获取收盘价
close_prices = data['close']
return close_prices
def get_codes():
# 获取所有股票的代码
codes = get_codes()
return codes
def get_volume():
# 获取历史行情数据
data = get_data()
# 获取成交量
volume = data['volume']
return volume
def get_data():
# 获取行情数据
data = get_data()
return data
def get_top_n筛选条件(n):
# 获取所有满足筛选条件的股票
stocks = get_stocks()
filtered_stocks = [stock for stock in stocks if get筛选条件()]
# 按照涨幅从大到小排序
filtered_stocks.sort(key=lambda x: x[-1] - x[0], reverse=True)
# 获取前n个股票
top_n_stocks = filtered_stocks[:n]
return top_n_stocks
def get_stocks():
# 获取所有股票的收盘价
close_prices = get_prices()
# 获取所有股票的代码
codes = get_codes()
# 获取所有股票的成交量
volume =
## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。


