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

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

问财量化选股策略逻辑

选股逻辑包括三个条件:元宇宙、昨日股价大于250日均线、9点25分涨幅小于6%。通过筛选出符合条件的股票进行投资。

选股逻辑分析

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

  1. 元宇宙:选择热门板块中的个股。
  2. 昨日股价大于250日均线:判断个股目前的价格是否较稳定且接近长期均线。
  3. 9点25分涨幅小于6%:选取与昨日相比表现相对稳定或略有下跌的个股。

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

有何风险?

  1. 市场流动性波动可能影响选股效果,尤其是在大幅波动的市场中,容易受到市场情绪的干扰。
  2. 筛选条件过于简单,可能丢失部分优质个股。
  3. 9点25分涨幅过低并不能完全反映股票的表现,需要结合更多指标进行综合考虑。

如何优化?

  1. 除了考虑股票价格、涨幅等因素外,也需要结合其他财务和业绩指标进行选股,以更加全面地评估股票价值。
  2. 合理设置选股条件,避免过于简单或过于复杂,需要考虑市场流动性、行业走势等因素。
  3. 进一步考虑股票流通性、现金流等指标,并尝试运用自然语言处理技术对公司资讯进行分析,以更精准地判断个股的投资价值。

最终的选股逻辑

该选股策略选择元宇宙板块中,昨日股价大于250日均线并且9点25分涨幅小于6%的个股进行投资。

同花顺指标公式代码参考

元宇宙:GNBK("gnxq")

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

9点25分涨幅小于6%:

  • 首先需要获取当日股票交易数据,可以通过同花顺自定义公式进行获取。
  • 按照股票代码、日期分组,计算当日股票的涨幅,并筛选出9点25分涨幅小于6%的股票。

具体代码如下:

// 获取当日股票数据,包括收盘价、开盘价、日期、股票代码等
let data = GetDataTable(`SELECT code, name, date, open, close, high, low FROM xtp_hq_snapshot WHERE date='${_date}'`);

// 计算当日股票的涨幅,并筛选出9点25分涨幅小于6%的股票
let group = data.GroupBy(['code', 'date'])
                .OrderBy(['code', 'date'])
                .Select('code, date, close, close[-1] as pre_close, open', ([])=>{
        return {
            code: $.GetStr($1.code),
            date: $.GetStr($1.date),
            close: $.ToFloat($1.close),
            pre_close: $.ToFloat($1.pre_close),
            open: $.ToFloat($1.open),
        };
    })
    .Where('pre_close > 0 and (close/pre_close-1)*100 < 6 and (open/close-1)*100 < 0.3')
    .ToTable();
                        
let codes_selected = group.GetColumn('code').Distinct().ToArray();

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']:
        df = pro.query('daily', ts_code=code, fields='trade_date, close, high, low, open, pct_chg')
        if len(df) < 2:
            continue
        if (df.iloc[-2]['close'] >= df['close'].rolling(250).mean()[249]):
            if (df.iloc[-1]['pct_chg'] < 6) and (
                ((df.iloc[-1]['open'] / df.iloc[-2]['close']) - 1) * 100 < 0.3):
                _basic = pro.query(
                    'stock_basic',
                    ts_code=code,
                    fields=['name', 'industry', 'exchange', 'list_date', 'market_cap']
                )
                if ('ST' not in _basic['name'].values[0]) and (_basic['exchange'].values[0] != 'SZSE') and \
                        (_basic['list_date'].values[0] <= '20220219') and (_basic['market_cap'].values[0] < 5000000000):
                    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],
                        )
                    )

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

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

    模板如何使用?

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


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

评论