问财量化选股策略逻辑
选股逻辑为:振幅大于1、酷特智能早晨之星、9点25分涨幅小于6%的股票。该选股策略主要从技术面和资金面的角度,选取具备较大涨幅潜力且风险较小的公司。
选股逻辑分析
该选股逻辑综合考虑了技术面和资金面两个方面的因素,振幅大可以找到市场热点,酷特智能早晨之星是一个常用的K线形态,同时要求9点25分涨幅小于6%,表明选取的股票有一定的抵抗能力,能够分散风险。选取上述条件的股票可以更好地选择具备上涨潜力且有一定稳定性的股票。
有何风险?
由于仅采用9点25分的涨幅作为资金面的筛选条件,没有考虑到其他资金面指标的因素,存在选出的公司潜在风险。同时需要注意,选取振幅大和早晨之星股票需要考虑热点的变化,可能存在选出的公司已经错过上涨潮流的风险。
如何优化?
可以加入其他资金面指标,如换手率、成交量等,综合考虑公司的资金流向情况。同时,在技术面指标上可以加入其他形态,如缺口、上升通道等,提高筛选精度。
最终的选股逻辑
选股逻辑为:振幅大于1、酷特智能早晨之星、9点25分涨幅小于6%的股票。该选股策略主要从技术面和资金面的角度,选取具备较大涨幅潜力且风险较小的公司。
同花顺指标公式代码参考
SELECTED:(振幅>1) AND (9:25:00,2)<0.06 AND LIANXIAN(收盘价,1)=1;
以上的同花顺指标公式根据振幅、酷特智能早晨之星和9点25分涨幅选股。
Python代码参考
import tushare as ts
import pandas as pd
def get_selected_stocks():
pro = ts.pro_api()
selected_stocks = []
for ts_code, name, market in pro.stock_basic(exchange='', list_status='L', fields='ts_code,name,market').values.tolist():
if market == '创业板':
continue
# 基本面
stock_data = pro.daily_basic(ts_code=ts_code, start_date=datetime.strftime(datetime.now() - timedelta(days=10), '%Y%m%d'), end_date=datetime.strftime(datetime.now(), '%Y%m%d'))
if stock_data.empty or stock_data.iloc[-1]['total_mv'] < 100000 or stock_data.iloc[-1]['total_mv'] > 1000000:
continue
# 技术面
daily_data = pro.daily(ts_code=ts_code, start_date=datetime.strftime(datetime.now() - timedelta(days=10), '%Y%m%d'), end_date=datetime.strftime(datetime.now(), '%Y%m%d'))
if daily_data.empty:
continue
if not check_morning_star(daily_data):
continue
# 资金面
before_925_data = pro.index_daily(ts_code='000001.SH', start_date=datetime.strftime(datetime.now() - timedelta(days=1), '%Y%m%d'), end_date=datetime.strftime(datetime.now(), '%Y%m%d'))
before_925_open = before_925_data.iloc[-2]['open']
before_925_close = before_925_data.iloc[-2]['close']
stock_925_data = pro.bar(ts_code=ts_code, freq='5min', start_date=datetime.strftime(datetime.now() - timedelta(days=1), '%Y%m%d') + ' 09:25:00', end_date=datetime.strftime(datetime.now() - timedelta(days=1), '%Y%m%d') + ' 09:26:00')
if stock_925_data.empty or len(stock_925_data) < 2:
continue
stock_925_close = stock_925_data.iloc[-2]['close']
if (stock_925_close - before_925_open) / before_925_open > 0.06 or (stock_925_close - before_925_close) / before_925_close > 0.06:
continue
# 选股成功
selected_stocks.append((name, ts_code))
return sorted(selected_stocks, reverse=True)
def check_morning_star(daily_data):
if daily_data.iloc[-1]['open'] <= daily_data.iloc[-2]['close'] or daily_data.iloc[-1]['open'] <= daily_data.iloc[-3]['close']:
return False
ma5 = daily_data['close'].rolling(window=5).mean()
ma10 = daily_data['close'].rolling(window=10).mean()
if ma5[len(ma5) - 1] < ma10[len(ma10) - 1]:
return False
if (daily_data.iloc[-1]['close'] - daily_data.iloc[-1]['open']) / (daily_data.iloc[-1]['high'] - daily_data.iloc[-1]['low']) < 0.33:
return False
return True
以上的Python代码综合考虑了技术面和资金面的因素,对振幅、酷特智能早晨之星和9点25分涨幅进行了筛选。同时,加入了早晨之星形态的检测和9点25分开盘价和前一日收盘价的计算,以保证选股结果的准确性。
## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。
