问财量化选股策略逻辑
选股逻辑:振幅大于1, 底部抬高, 竞价时涨跌幅买入大单,特大单共计买入量大于0.7千万。
选股逻辑分析
综合运用了技术面指标、市场情绪指标和资金面指标,能够更全面地反映股票价格的涨跌情况。引入竞价时涨跌幅和大单、特大单买入量的判断,可以更加准确地发现主力资金的操作行为,提高选股的有效性。
有何风险?
该选股逻辑关注的主要是短期的市场情况和资金流向,存在忽略公司基本面的风险。同时,选取的时间段和选股策略的具体参数也可能影响选股效果。此外,选取的数据可能存在不准确或虚假的情况,需要注意筛选数据的可靠性。
如何优化?
为提高该选股逻辑的可靠性和有效性,可结合其他技术面指标、市场情绪指标和基本面指标进行综合判断。比如加入成交量、均线、KDJ等技术面指标,以及市盈率、市净率等基本面指标,进一步提高选股的准确性。同时,还可以考虑采用机器学习、深度学习等方法对指标进行优化和筛选,提高选股效率和准确性。
最终的选股逻辑
基于以上分析,完善的选股逻辑如下:
1.振幅大于1;
2.底部抬高;
3.竞价时涨跌幅买入大单,特大单共计买入量大于0.7千万;
4.综合考虑其他技术面指标、市场情绪指标和基本面指标。
同花顺指标公式代码参考
以下是同花顺实现该选股策略的指标公式代码:
C1 = AMP() > 1;
C2 = BOTTOM(HIGH, 2) > BOTTOM(HIGH, 3) > BOTTOM(HIGH, 4);
C3 = TA['DIFF'][-1] > TA['DIFF_SIGNAL'][-1] and TA['DIFF'][-2] <= TA['DIFF_SIGNAL'][-2] and TA['DIFF'][-3] <= TA['DIFF_SIGNAL'][-3];
C4 = SUM(IF(C > 0, C * VOL, 0), 30) > 7e7;
SELECTOR = C1 AND C2 AND C3 AND C4;
RESULT = SELECTOR;
Python代码参考
以下是Python实现该选股策略的部分代码:
# 筛选符合条件的股票
def select_stocks(start_date, end_date):
selected_stocks = []
for stock in stocks:
# 获取该股票在指定时间内的历史K线数据
df_kline = get_price(stock, start_date=start_date, end_date=end_date, frequency='daily', fields=['open', 'high', 'low', 'close', 'volume'], skip_paused=True, fq='pre')
# 计算振幅和底部抬高指标,判断是否符合选股逻辑
c1 = df_kline['high'].std() > 1
c2 = BOTTOM(df_kline['high'], 2) > BOTTOM(df_kline['high'], 3) > BOTTOM(df_kline['high'], 4)
# 计算MACD指标,判断是否符合选股逻辑
c3 = macd(df_kline)['macd'].iloc[-1] > macd(df_kline)['signal'].iloc[-1] and macd(df_kline)['macd'].iloc[-2] <= macd(df_kline)['signal'].iloc[-2] and macd(df_kline)['macd'].iloc[-3] <= macd(df_kline)['signal'].iloc[-3]
# 计算大单和特大单买入量,判断是否符合选股逻辑
c4 = pd.Series(sum(np.where(df_kline.loc[:,'close'] - df_kline.loc[:,'open'] > 0, df_kline.loc[:,'volume'], 0) * df_kline.loc[:,'volume']))
# 判断是否符合选股逻辑
if c1 and c2 and c3 and c4 > 7e7:
selected_stocks.append(stock)
return selected_stocks
result = select_stocks('2022-01-01', '2022-12-31')
print(result)
以上代码仅供参考,具体实现还需要根据自身需求进行调整。
## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。
