问财量化选股策略逻辑
选股逻辑为MACD零轴以上,今日均线向上发散,主升起动的股票。
选股逻辑分析
该选股逻辑综合运用了技术分析和基本面分析。MACD指标和均线指标可帮助我们分析股票价格趋势;主升起动则能为我们提供判断股票价格是否进入上涨阶段的信号。同时,结合股票基本面信息也是选股的重要考虑因素,如公司前景、市场环境等。
有何风险?
- 忽略了行业因素,可能选出行业表现长期不佳的股票;
- 忽略了个股特殊情况,可能出现价格跌停无法及时卖出等风险;
- 主升行情太短暂,可能造成选股结果不稳定。
如何优化?
- 结合股票所处行业,选择相对比较活跃的行业的优质股票;
- 加入其他技术指标和基本面因素作为判断股票走势的参考,如KDJ、RSI、净利润增速等。
- 使用更高级别的数据定时筛选,得到更长期稳定性更好的选股结果。
最终的选股逻辑
选股逻辑为MACD零轴以上,今日均线向上发散,主升起动的优质股票。结合行业因素、基本面因素、以及其他技术指标和基本面因素,过滤掉风险较大的股票,获取更为合理的选股结果。
同花顺指标公式代码参考
MACD指标:
DIF:EMA(CLOSE,12)-EMA(CLOSE,26)
DEA:EMA(DIF,9)
MACD:(DIF-DEA)*2
均线指标:
MA5:MA(CLOSE,5)
MA10:MA(CLOSE,10)
KDJ指标:
RSV:(CLOSE-LLV(LOW,9))/(HHV(HIGH,9)-LLV(LOW,9))*100
K:SMA(RSV,3,1)
D:SMA(K,3,1)
J:3K-2D
python代码参考
以下为python的股票筛选代码,仅供参考:
import akshare as ak
import pandas as pd
# 获取股票基本面数据
stock_info = ak.stock_board_industry_name_ths()
# 获取股票历史行情数据
df = ak.stock_zh_a_hist_sina("sh000001")
# 计算MACD指标
ema12 = df['close'].ewm(span=12).mean()
ema26 = df['close'].ewm(span=26).mean()
DIF = ema12 - ema26
DEA = DIF.ewm(span=9).mean()
MACD = (DIF - DEA) * 2
# 计算均线指标
ma5 = df['close'].rolling(5).mean()
ma10 = df['close'].rolling(10).mean()
# 计算KDJ指标
low_min = df['low'].rolling(window=9, min_periods=9).min()
high_max = df['high'].rolling(window=9, min_periods=9).max()
rsv = (df['close'] - low_min) / (high_max - low_min) * 100
k = rsv.ewm(span=3, adjust=False).mean()
d = k.ewm(span=3, adjust=False).mean()
j = 3 * k - 2 * d
# 计算主升起动
...
# 筛选MACD零轴以上
condition1 = MACD > 0
# 筛选今日均线向上发散
condition2 = (ma5 > ma10) & (ma5.shift(1) < ma10.shift(1))
# 筛选主升起动
condition3 = ...
# 筛选股票基本面
condition4 = ...
# 结合其他条件及权重
condition5 = ...
# 组合所有条件
all_conditions = condition1 & condition2 & condition3 & condition4 & condition5
# 输出选股结果
stock_list = df[all_conditions]['code']
## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。


