问财量化选股策略逻辑
选股逻辑为 MACD 技术指标零轴以上、价格小于 12 元、三个技术指标同时金叉的股票。选股时间为每个交易日开盘前进行。
选股逻辑分析
该选股逻辑综合考虑了技术面和市场情况,以 MACD 技术指标和技术指标金叉作为选股指标,同时对股票价格做出限制。三个指标相辅相成,综合考虑了短期和长期的市场变化,选股条件相对较严格,选出的股票整体风险相对较小。
有何风险?
- 过于依赖技术面指标,可能存在市场结构变化导致选股逻辑失效的风险。
- 过于依赖价格限制条件,可能因市场情况波动较大,存在选股因素过于单一的风险。
- 选股逻辑中的技术指标金叉可能存在因股票交易量较小导致的误判风险。
如何优化?
- 增加基础面数据的考虑,如市盈率、市净率等。
- 尝试其他技术面指标的组合,以提高选股逻辑的准确性。
- 调整选股逻辑中技术指标的参数,适当降低选股的门槛和限制条件。
最终的选股逻辑
综合考虑 MACD 技术指标和技术指标金叉,选取出表现较好、风险相对较小的股票。
同花顺指标公式代码参考
以下是 MACD 指标的同花顺指标公式:
MACD(CLOSE, 12, 26, 9);
以下是技术指标金叉的同花顺指标公式:
CROSS(MA(CLOSE, 5), MA(CLOSE, 10)) AND CROSS(MA(CLOSE, 5), MA(CLOSE, 20)) AND CROSS(MA(CLOSE, 10), MA(CLOSE, 20))
python代码参考
以下是 Python 的选股筛选代码,仅供参考:
import akshare as ak
import talib
data_stock_price = ak.stock_zh_a_minute(symbol="sh601988", period="D") # 获取股票日 K 线数据
close_price = data_stock_price["close"].tolist()
ma_5 = talib.MA(np.array(close_price), timeperiod=5) # 计算 5 日均线
ma_10 = talib.MA(np.array(close_price), timeperiod=10) # 计算 10 日均线
ma_20 = talib.MA(np.array(close_price), timeperiod=20) # 计算 20 日均线
short, long, m = 12, 26, 9
dif, dea, macd = talib.MACD(np.array(close_price), fastperiod=short, slowperiod=long, signalperiod=m)
data_stock_quote = ak.stock_zh_a_quote(symbol="sh601988") # 获取股票实时行情数据
if macd[-1] > 0 and data_stock_quote["现价"].iloc[-1] < 12 and talib.CROSS(ma_5, ma_10) and talib.CROSS(ma_5, ma_20) and talib.CROSS(ma_10, ma_20):
filtered = data_stock_info.loc[
(data_stock_info["type"] == "主板")
# 其他条件
]
result = filtered[["代码", "名称"]] # 最终选股结果
注意,由于数据在运行时需要更新,因此具体代码需要实际情况调整。同时需要根据实际情况查询对应的 AKShare 数据接口。
## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。


