(supermind量化策略)task14/a/元宇宙、开盘价在十日线左右、三连阴

用户头像神盾局量子研究部
2023-08-30 发布

问财量化选股策略逻辑

选股策略为:在元宇宙行业中,选取开盘价在十日均线左右,且连续三天收出阴线的股票。

选股逻辑分析

本选股策略同样结合了技术面和行情面两个方面的因素。选股逻辑包含三个要素:元宇宙行业、开盘价在十日均线左右、连续三天收出阴线。

首先,选取元宇宙行业的股票。之后,筛选出开盘价在十日均线左右的股票。最后,选择连续三天都收出阴线的股票,这是市场情绪的一个指标。

有何风险?

本选股策略的风险在于选股条件相对单一,忽略了一些重要的因素如财报和基本面等。同时,连续三天收出阴线虽然把握了市场情绪,但也挖掘不全面,不能代表个股长期的走势。另外,连续阴线可能也意味着股票已经过度下跌,存在反弹的风险。

如何优化?

可以加入更多的选股因素,如股票的基本面和财务指标等,从多个角度来评估个股的价值。此外,要更加细致地研究阴线的特征及其指标解释,以减少因该条件过于简单而误判的风险。针对连续阴线可能意味着已经过度下跌的情况,可以考虑设定价格均线的临界值,避免盲目追涨杀跌。

最终的选股逻辑

在元宇宙行业中,筛选出当前开盘价在十日均线左右,并且最近连续三天的收盘价均低于开盘价的股票。

同花顺指标公式代码参考

1、选出符合元宇宙行业的股票:INDUSTRY == '元宇宙';

2、选出当前开盘价在十日均线左右的股票:
REF(CLOSE,1)<MA(CLOSE,10) AND OPEN>MA(CLOSE,10) AND REF(OPEN,1)<REF(MA(CLOSE,10),1);

3、选出最近连续三天的收盘价均低于开盘价的股票:
(REF(CLOSE,1)<REF(O,1)) AND (REF(CLOSE,2)<REF(O,2)) AND (REF(CLOSE,3)<REF(O,3))

4、合并选股条件:(INDUSTRY == '元宇宙') AND \
    (REF(CLOSE,1)<MA(CLOSE,10) AND OPEN>MA(CLOSE,10) AND REF(OPEN,1)<REF(MA(CLOSE,10),1)) AND \
    (REF(CLOSE,1)<REF(O,1)) AND (REF(CLOSE,2)<REF(O,2)) AND (REF(CLOSE,3)<REF(O,3));

Python代码参考

import tushare as ts
import datetime as dt
from functools import reduce

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':
            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()
            recent_closes = ts.get_k_data(stock_code, start=(dt.datetime.now()-dt.timedelta(days=4)).strftime('%Y-%m-%d'), end=dt.datetime.now().strftime('%Y-%m-%d'))['close'].values
            three_down = reduce(lambda x, y: x and y, recent_closes < open_prices[-4:-1])
            if ts.get_k_data(stock_code, start=dt.datetime.now().strftime('%Y-%m-%d'), end=dt.datetime.now().strftime('%Y-%m-%d')).iloc[0]['open'] > ten_day_ma and three_down:
                eligible_stocks.append(stock_code)
    return eligible_stocks

print(get_eligible_stocks())

上述 Python 代码同样需要注意时间窗口的选取等问题,同时注意异常处理等问题。由于采用的是技术面指标和市场情况作为筛选标准,需要注意指标的可靠性和市场情况的稳定性,以及阴线的指标解释和特征等问题。

    ## 如何进行量化策略实盘?
    请把您优化好的选股语句放入文章最下面模板的选股语句中即可。

    select_sentence = '市值小于100亿' #选股语句。

    模板如何使用?

    点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。


    ## 如果有任何问题请添加 下方的二维码进群提问。
    ![94c5cde12014f99e262a302741275d05.png](http://u.thsi.cn/imgsrc/pefile/94c5cde12014f99e262a302741275d05.png)
收益&风险
源码

评论