问财量化选股策略逻辑
选股策略为:在元宇宙行业中,选定开盘价在十日线左右的股票,且股票当前高点为两日最高。
选股逻辑分析
本选股策略旨在选择当前走势相对较强的股票,借助技术面因素判断其短期趋势的走势方向。选股逻辑包含三个要素:元宇宙行业、开盘价在十日线左右和当前高点为两日最高。
首先,我们选择元宇宙行业的股票。之后,筛选出开盘价在十日均线左右的股票。然后,进一步通过判断股票当前高点是否为两日最高,优先选股短期表现较好的个股。
有何风险?
本选股策略也是比较单一的技术面因素选股,忽略了基本面和行业因素等影响。此外,由于选股策略具有短期性,容易受到市场短期波动的影响,存在选择买进被套等风险。
如何优化?
可以增加基本面和行业因素等影响,并尝试以不同的时间窗口和不同的技术指标对个股进行评估和筛选。此外,完善风险控制等方面问题,以降低买进被套的情况。
最终的选股逻辑
在元宇宙行业中,筛选出当前开盘价在十日线左右、且当前高点为两日最高的个股。
同花顺指标公式代码参考
1、选出符合元宇宙行业的股票:INDUSTRY == '元宇宙';
2、选出当前开盘价在十日均线左右的股票:
REF(CLOSE,1)<MA(CLOSE,10) AND OPEN>MA(CLOSE,10) AND REF(OPEN,1)<REF(MA(CLOSE,10),1);
3、选出当前高点为两日最高:
HHV(HIGH,2)==HIGH;
4、合并选股条件:(INDUSTRY == '元宇宙') AND \
(REF(CLOSE,1)<MA(CLOSE,10) AND OPEN>MA(CLOSE,10) AND REF(OPEN,1)<REF(MA(CLOSE,10),1)) AND \
(HHV(HIGH,2)==HIGH);
Python代码参考
import tushare as ts
import datetime as dt
def get_eligible_stocks():
eligible_stocks = []
stock_data = ts.get_today_all()
for stock_code, row in stock_data.iterrows():
if '元宇宙' in row['industry_name'] and row['exchange'] != 'SSESTAR' and row['exchange'] != 'SZSEEM':
daily_k_data = ts.get_k_data(stock_code, start=(dt.datetime.now()-dt.timedelta(days=2)).strftime('%Y-%m-%d'))
if len(daily_k_data) >= 2:
if daily_k_data.iloc[-1]['high'] >= daily_k_data['high'].max():
open_prices = ts.get_k_data(stock_code, start=(dt.datetime.now()-dt.timedelta(days=10)).strftime('%Y-%m-%d'), end=(dt.datetime.now()-dt.timedelta(days=1)).strftime('%Y-%m-%d'))['open'].values
ten_day_ma = open_prices.mean()
if daily_k_data.iloc[-2]['changepercent'] > 0 and daily_k_data.iloc[-1]['open'] > ten_day_ma:
fund_flow = ts.get_sina_dd(stock_code).get('vol', 0)
if fund_flow > 0:
eligible_stocks.append((stock_code, fund_flow))
eligible_stocks.sort(key=lambda x: x[1], reverse=True)
return [x[0] for x in eligible_stocks]
print(get_eligible_stocks())
上述 Python 代码同样使用了 tushare 包获取实时行情数据,同时还涉及到后续数据处理和计算等问题。需要注意技术面指标的使用和时间窗口的选取,以及异常处理等问题。
## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。


