问财量化选股策略逻辑
首先,我们来分析一下这个策略的逻辑:
- 至少5根均线重合的股票:这个条件意味着股票的短期和中期趋势是相一致的,表明股票价格的波动比较稳定,有利于投资者进行长期投资。
- 10日涨幅大于0小于35:这个条件意味着股票在最近10天内有上涨的趋势,但涨幅不是很大,表明股票价格还没有达到过高的水平,还有上涨的空间。
- 近25个交易日有单日涨幅大于等于百分之10:这个条件意味着股票在最近25天内有过单日涨幅超过10%的情况,表明股票价格波动较大,有可能存在短期投资机会。
综合以上三个条件,我们可以筛选出那些短期和中期趋势稳定、有上涨空间且短期波动较大的股票,这些股票可能会成为潜在的投资机会。
选股逻辑分析
这个策略的逻辑看起来比较简单,但也有一定的风险。首先,这个策略过于侧重于短期的股票价格波动,而忽略了长期趋势和公司的基本面情况。因此,投资者可能会因为短期的市场波动而做出错误的决策。其次,这个策略没有考虑股票的估值水平,可能会导致投资者选择高估的股票进行投资,从而增加投资风险。
有何风险?
这个策略的潜在风险包括:
- 过度侧重于短期市场波动,忽略了长期趋势和公司基本面情况。
- 没有考虑股票的估值水平,可能会导致投资者选择高估的股票进行投资。
如何优化?
为了优化这个策略,我们可以考虑加入一些其他的因素,例如:
- 考虑加入公司的基本面数据,例如市盈率、市净率等,以更好地评估股票的价值水平。
- 考虑加入技术分析指标,例如移动平均线、布林线等,以更好地分析股票的价格趋势。
最终的选股逻辑如下:
- 股票的短期和中期趋势相一致,即至少5根均线重合。
- 股票在最近10天内有上涨的趋势,但涨幅不是很大,即10日涨幅大于0小于35。
- 股票在最近25天内有过单日涨幅超过10%的情况,即近25个交易日有单日涨幅大于等于百分之10。
- 考虑加入公司的基本面数据,例如市盈率、市净率等,以更好地评估股票的价值水平。
- 考虑加入技术分析指标,例如移动平均线、布林线等,以更好地分析股票的价格趋势。
python代码参考
以下是使用pandas和numpy库实现上述策略的Python代码:
import pandas as pd
import numpy as np
def get策略数据():
# 获取股票数据
df = pd.read_csv('stock_data.csv')
# 计算移动平均线
df['ma10'] = df['close'].rolling(window=10).mean()
df['ma20'] = df['close'].rolling(window=20).mean()
df['ma50'] = df['close'].rolling(window=50).mean()
# 计算布林线
df['upper'] = df['ma20'] + (2 * (df['ma20'] - df['ma10']))
df['lower'] = df['ma20'] - (2 * (df['ma20'] - df['ma10']))
# 筛选出符合条件的股票
df = df[(df['ma10'] > df['ma20']) & (df['ma10'] < df['ma50']) & (df['close'] > df['ma10']) & (df['close'] < df['upper']) & (df['close'] > df['lower']) & (df['close'] > df['ma20'] - df['ma10']) & (df['close'] < df['upper'] - df['ma20'])]
# 筛选出符合条件的股票
df = df[df['close'] > df['ma10'] - df['ma20']]
# 筛选出符合条件的股票
df = df[df['close'] < df['upper'] - df['ma20']]
# 筛选出符合条件的股票
df = df[df['close'] > df['ma20'] - df['ma10']]
# 筛选出符合条件的股票
df = df[df['close'] < df['upper'] - df['ma20']]
# 筛选出符合条件的股票
df = df[df
## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。


