(supermind量化投资)task13/a/元宇宙、竞价主力净买大于0、三个技术指标同

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

问财量化选股策略逻辑

该选股策略包含元素“元宇宙”、“竞价主力净买大于0”和“三个技术指标同时金叉”。

选股逻辑分析

该选股策略主要考虑市场热点、资金流向和股票走势等因素,筛选出符合条件的个股。其中,“元宇宙”反映市场热点,有望吸引资金进入;竞价主力净买反映资金流向情况,有助于我们把握市场资金的动向;同时金叉表示三个技术指标达到了一种市场走势的共识,具有较高的市场表现。综合这些因素,筛选出符合条件的股票,以期获得较好的投资收益。

有何风险?

  1. 数据风险:该策略基于市场行情和历史数据,存在数据风险;
  2. 操作风险:该策略需要及时调整选股因子及其加权方式,因此存在一定的操作风险;
  3. 技术指标的失效:技术指标的失效是该策略的一个难点,如果市场走势与技术指标出现背离,可能导致投资收益下降。

如何优化?

  1. 加入基本面因素:除了短期技术指标,加入公司基本面的分析因素,以判断公司的盈利能力、发展潜力等,降低风险;
  2. 加入量价因素:加入股票的量价关系因素,以掌握市场资金的流向和股票的成交情况;
  3. 加入其他技术指标:除了三个技术指标,加入其他技术指标进行比较,以提高选股的精度。

最终的选股逻辑

综合考虑市场热点板块、资金流向和股票走势等因素,筛选出符合条件的个股。同时,加入基本面、量价关系和其他技术指标作为协调因素。

同花顺指标公式代码参考

元宇宙:SELECTEDINDUSTRY("gnxq")

竞价主力净买:(VOL - 3 - 5 + 1) * 50 / 10000

技术指标金叉:CROSS(MA(CLOSE,5), MA(CLOSE,10)) AND CROSS(MA(CLOSE,10), MA(CLOSE,20)) AND CROSS(MA(CLOSE,20), MA(CLOSE,30))

Python代码参考

import pandas as pd
import tushare as ts

def stock_selector():
    ts.set_token('your_token')
    pro = ts.pro_api()

    # 获取符合条件的所有股票的代码
    data = pro.query('stock_basic',
                fields=['ts_code','name','industry','concept_name'], 
                where={'market':'SSE','list_status':'L','is_hs':'N'})
    data['jbmoneysum'] = pro.moneyflow(ts_code=data['ts_code'], start_date='20190101',
                                       end_date='20211022', fields='jb').groupby('ts_code')['jb'].sum()
    data['tooprec'] = pro.daily_basic(trade_date='20211022', 
                                      fields='ts_code,turnover_rate_f').set_index('ts_code')['turnover_rate_f']
    data['ma5_close'] = pro.daily(ts_code=data['ts_code'], start_date='20211015',
                                  end_date='20211022', fields='close').groupby('ts_code').apply(lambda x: x['close'].rolling(window=5).mean().iloc[-1])
    data['ma10_close'] = pro.daily(ts_code=data['ts_code'], start_date='20211008',
                                  end_date='20211022', fields='close').groupby('ts_code').apply(lambda x: x['close'].rolling(window=10).mean().iloc[-1])
    data['ma20_close'] = pro.daily(ts_code=data['ts_code'], start_date='20210928',
                                  end_date='20211022', fields='close').groupby('ts_code').apply(lambda x: x['close'].rolling(window=20).mean().iloc[-1])
    data['ma30_close'] = pro.daily(ts_code=data['ts_code'], start_date='20210917',
                                  end_date='20211022', fields='close').groupby('ts_code').apply(lambda x: x['close'].rolling(window=30).mean().iloc[-1])
    data['jbmoneysum_positive'] = data['jbmoneysum'] > 0
    data['ma_cross_positive'] = pro.daily(ts_code=data['ts_code'], start_date='20211022',
                                  end_date='20211022', fields='close').groupby('ts_code').apply(lambda x: x['close'].rolling(window=5).mean().iloc[-1] > x['close'].rolling(window=10).mean().iloc[-1] > x['close'].rolling(window=20).mean().iloc[-1] > x['close'].rolling(window=30).mean().iloc[-1])
    selected = data[data['yyzbl'] & data['jbmoneysum_positive'] & data['ma_cross_positive']]

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

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

    模板如何使用?

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


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

评论