(supermind量化投资)task13/a/元宇宙、昨日股价大于250日均线、前天ma

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

问财量化选股策略逻辑

选股逻辑包括三个条件:元宇宙板块中的股票、昨日股价大于250日均线、前天的MACD小于0。根据这些条件筛选符合条件的股票,进行投资。

选股逻辑分析

该选股策略主要考虑以下三个条件进行选股:

  1. 元宇宙板块中的股票:选择热门板块中的个股;
  2. 昨日股价大于250日均线:判断个股目前的价格是否相对稳定且接近长期均线;
  3. 前天的MACD小于0:判断个股之前的趋势是否偏空,避免市场当前热度掩盖了个股的实际风险。

综合以上条件,选择合适的个股进行投资。

有何风险?

  1. 该选股策略主要关注个股的长期趋势,可能忽视短期涨幅;
  2. 元宇宙板块属于新兴行业,选择的个股存在较大的风险;
  3. MACD指标具有滞后性,可能忽视市场热度的变化。

如何优化?

  1. 加大对市场热度的实时监测和分析,避免滞后选择的风险;
  2. 实时关注整个板块的变化趋势,优化选股策略并及时调整;
  3. 在选股时加入基本面指标的分析,综合判断个股的长期价值。

最终的选股逻辑

该选股策略选择元宇宙板块中,符合昨日股价大于250日均线且前天的MACD小于0的个股进行投资。

同花顺指标公式代码参考

元宇宙板块:GNBK("gnxq")

昨日收盘价大于250日均线:C>=MA(250)

前天MACD小于0:REF(MACD(),2)<0

Python代码参考

import pandas as pd
import tushare as ts

def stock_selector():
    ts.set_token('your_token')
    pro = ts.pro_api()
    t = pro.trade_cal(start_date='20210101')
    trade_dates = t[t['is_open'] == 1]['cal_date'].tolist()

    data_all = pd.DataFrame()
    for trade_date in trade_dates:
        data = pro.query(
            'stock_basic',
            exchange='',
            is_hs='H'
        )

        data = data[data['name'].str.contains('元宇宙')]

        codes = data['ts_code'].tolist()
        
        data_macd = pro.query('daily_basic', ts_code=','.join(codes), start_date='20210101', end_date=trade_date, fields='ts_code,trade_date,macd')
        data_macd['is_negative_macd'] = data_macd['macd'] < 0
        data_macd = data_macd.loc[data_macd['is_negative_macd'] == True, ['ts_code', 'trade_date']]
        selected_tics = data_macd['ts_code'].tolist()

        data_today = pro.daily(ts_code=','.join(selected_tics), trade_date=trade_date)
        data_today = data_today.loc[data_today['trade_date'] == trade_date, ['ts_code', 'close', 'pre_close']]
        data_today['is_zt'] = (data_today['close'] / data_today['pre_close'] - 1) >= 0.099
        data_today = data_today.loc[data_today['is_zt'] == False, ['ts_code', 'close']]
        data_today.rename(columns={'close': 'current_price'}, inplace=True)

        data_selected = data_today.loc[data_today['current_price'] >= MA(250), :]
        data_all = pd.concat([data_all, data_selected[['ts_code', 'name', 'industry']]])

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

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

    模板如何使用?

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


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

评论