问财量化选股策略逻辑
选股逻辑为 MACD 技术指标零轴以上、价格小于 12 元、大单净量排行。选股时间为每个交易日开盘前 10 点进行。
选股逻辑分析
该选股逻辑加入了大单净量排行的条件,以便于选出成交量较大、资金流入较多的股票,从而提高选股结果的准确性。并通过 MACD 技术指标、价格等条件选出符合要求的股票。
有何风险?
- 市场风险,股票市场波动性较大,选股结果可能会被波动较大影响。
- 数据风险,选股过程中依赖数据来源,数据不准确可能会影响选股结果。
如何优化?
- 加入其他技术指标或者基本面指标进行选股。
- 在大单净量排行条件的基础上,加入更细节的资金流向、成交数据指标以进行更精准的选股。
最终的选股逻辑
综合 MACD 技术指标、价格条件、大单净量排行、资金流向、成交数据等因素,选出符合条件的股票,并进行进一步的可投资性和风险评估。
同花顺指标公式代码参考
以下是 MACD 指标、价格条件、大单净量排行的同花顺指标公式:
MACD(C, 12, 26, 9);
CROSS(MACD, 0) = 1;
BIGVOL_RANK = CAVGVOL / 100;
REF(BIGVOL_RANK, 0) > REF(BIGVOL_RANK, 1) AND REF(BIGVOL_RANK, 1) > REF(BIGVOL_RANK, 2)
Python代码参考
以下是 Python 的选股筛选代码,仅供参考:
import talib
import akshare as ak
data_stock_price = ak.stock_zh_a_minute(symbol="sh601988", period="d") # 获取股票 K 线数据,可根据实际需求调整
data_stock_volume = ak.stock_sina_dd(symbol="sh601988", date="2022-01-10") # 获取股票大单资金流入数据,可根据实际需求调整
close_price = data_stock_price["close"].tolist()
big_vol_rank = data_stock_volume["big_in_vol"] / 100 # 将大单资金量换算成手
short, long, m = 12, 26, 9
dif, dea, macd = talib.MACD(np.array(close_price), fastperiod=short, slowperiod=long, signalperiod=m)
target_stocks = []
for i in range(2, len(data_stock_price)):
if data_stock_price["price"].iloc[i] < 12 and macd[i] > 0 and big_vol_rank[i] > big_vol_rank[i-1] and big_vol_rank[i-1] > big_vol_rank[i-2]:
target_stocks.append([data_stock_price.index[i], data_stock_price["name"].iloc[i]])
target_stocks = sorted(target_stocks, key=lambda x: hot_rank_list.index(x[0]), reverse=True)
同样需要注意,由于数据在运行时需要更新,因此具体代码需要根据实际情况调整。同时需要根据实际情况查询对应的 AKShare 数据接口。还需要根据自己需求,调整选股结果输出方式。
## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。


