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

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

问财量化选股策略逻辑

选股逻辑包括三个条件:元宇宙板块中的股票、昨日股价大于250日均线、市值在100亿以内的无亏损企业。通过筛选出符合条件的股票进行投资。

选股逻辑分析

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

  1. 元宇宙板块中的股票:选择热门板块中的个股。
  2. 昨日股价大于250日均线:判断个股目前的价格是否相对稳定且接近长期均线。
  3. 市值在100亿以内的无亏损企业:筛选市值相对合理的个股,并且财务状况良好,有一定的投资价值。

综合以上三个条件,选择合适的、有投资价值的个股进行投资。

有何风险?

  1. 过于关注市场热点和短期趋势,忽视公司长期价值和发展潜力。
  2. 仅依靠个别指标进行选股,容易忽略其他重要的因素和信息。
  3. 过于强调市值,可能会忽略一些低市值但有潜力的企业。
  4. 筛选企业的财务数据可能不够准确和全面,存在误判空间和统计误差。

如何优化?

  1. 综合考虑多个因素进行选股,包括股票价格、市盈率、市净率、ROE、净利润增长率、负债率等财务指标,以及行业和公司基本面等因素。
  2. 增加财务数据的准确性和全面性,可以借助第三方数据库和工具进行辅助分析。
  3. 对于筛选出的个股,要进行深入的研究和分析,了解其基本面及未来发展潜力。
  4. 对于近期股价波动大的个股,应该综合考虑多个时间段的涨跌幅,避免被短期波动影响判断。
  5. 选股策略应该具有稳定性和可持续性,避免频繁调整和潜在风险。

最终的选股逻辑

该选股策略选择元宇宙板块中,昨日股价大于250日均线,市值在100亿以内的无亏损企业进行投资。

同花顺指标公式代码参考

元宇宙:GNBK("gnxq")

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

市值在100亿以内:MCAP < 10000000000

无亏损企业:AND(PTG<0,NOT(FOR(PTG,3,0,0)))

Python代码参考

import pandas as pd
import tushare as ts

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

    # 获取所有元宇宙板块中的个股
    gnxq = pro.index_basic(
        fields='category',
        identifying_code='9650',
        market='SSE'
    )
    gnxq_stocks = gnxq.loc[gnxq['category'] == 'GN023']

    data_selected = pd.DataFrame()
    for code in gnxq_stocks['con_code']:
        _basic = pro.query(
            'stock_basic',
            ts_code=code,
            fields=['name', 'industry', 'exchange', 'list_date', 'market_cap', 'total_profit']
        )
        if len(_basic) == 0:
            continue
        if ('ST' not in _basic['name'].values[0]) and (_basic['exchange'].values[0] != 'SZSE') and \
                (_basic['list_date'].values[0] >= '20210101') and (_basic['total_profit'].values[0] > 0) and \
                (_basic['market_cap'].values[0] < 10000000000):
            df = pro.query(
                'daily',
                ts_code=code,
                fields='trade_date, close, high, low, open, pct_chg, vol, amount'
            )
            if len(df) < 10:
                continue
            if df.iloc[-2]['close'] >= df['close'].rolling(250).mean()[249]:
                data_selected = data_selected.append(
                    df.tail(1).assign(
                        name=_basic['name'].values[0],
                        industry=_basic['industry'].values[0],
                        market_cap=_basic['market_cap'].values[0],
                        list_date=_basic['list_date'].values[0],
                        total_profit=_basic['total_profit'].values[0]
                    )
                )

    data_selected = data_selected.sort_values(by=['amount'], ascending=False)
    return data_selected[['name', 'industry', 'market_cap', 'list_date']]
    ## 如何进行量化策略实盘?
    请把您优化好的选股语句放入文章最下面模板的选股语句中即可。

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

    模板如何使用?

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


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

评论