问财量化选股策略逻辑
选取MACD值在零轴以上、价格低于12元、竞价时涨跌幅买入大单、特大单共计买入量大于0.7千万的股票。该策略主要关注技术面指标、价格水平及流动性情况,可以寻找到符合价格低、技术面指标强势、交易活跃的股票。
选股逻辑分析
该选股策略除了从技术面寻找符合要求的股票,还结合了市场流动性要素,通过大单、特大单的操作情况来判断市场资金的活跃程度。同时买入操作的原因为竞价时涨跌幅,说明在该股票存在投资热度。这样可避免选出市场波动较大或投资人气不旺的股票,更加符合短期投资的考量。
有何风险?
该选股策略忽略了公司基本面因素,有可能选出盈利较差或产业前景不明朗的企业。另外,可能存在一些投机交易的情况,股票的流动性也可能存在不同程度的波动。
如何优化?
可考虑增加其他基本面指标如PE、PB等指标进行组合筛选和鉴别。同时可结合公司基本面分析,筛选出财务状况良好、营收、利润增长稳定、估值合理的优质企业。
最终的选股逻辑
选取MACD值在零轴以上、价格低于12元、竞价时涨跌幅买入大单、特大单共计买入量大于0.7千万的股票。
同花顺指标公式代码参考
// MACD零轴以上、价格低于12元、竞价时涨跌幅买入大单、特大单共计买入量大于0.7千万的股票
MACD(12,26,9) > 0 AND CLOSE < 12 AND C/REF(C,1)-1 = MAX(AVEDEV(VOLUME,5) / MA(VOLUME,5),0.1)
AND VOLUME > 7000000;
//以上代码表示MACD值在零轴以上、价格低于12元,竞价时涨跌幅买入大单、特大单共计买入量大于0.7千万
Python代码参考
from datetime import datetime, timedelta
import jqdatasdk as jq
jq.auth('账户名', '密码')
end_date = datetime.now().strftime("%Y-%m-%d")
start_date = (datetime.now() - timedelta(days=120)).strftime("%Y-%m-%d")
q = jq.query(jq.finance.STK_CAPITAL_CHANGE).filter(jq.finance.STK_CAPITAL_CHANGE.change_ratio > 0.1)
df_change = jq.get_fundamentals(q, end_date=end_date)
df_change = df_change[df_change['volume']>7000000]
df = get_history_data(stock_code, start_date=start_date, end_date=end_date, ktype='D')
df['DIFF'], df['DEA'], df['MACD'] = ta.MACD(df['close'], fastperiod=12, slowperiod=26, signalperiod=9)
if (df['MACD'][0] > 0) & (df['close'][0] < 12) & (df_change.index.values.tolist()):
print("Selected")
在Python代码中,通过聚宽接口的STK_CAPITAL_CHANGE获取大单、特大单买入信息,筛选出买入量大于0.7千万的股票。最终比较最新一日MACD、close以及大单、特大单买入量是否同时符合选股条件,以及前一日MACD是否大于0,以确保日线MACD趋势向上。
## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。


