(supermind量化-)振幅大于1、昨日非涨停板、资金强度由大到小_

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

问财量化选股策略逻辑

本选股策略选取振幅大于1、昨日非涨停板、资金强度由大到小的股票。

选股逻辑分析

振幅大于1和昨日非涨停板的条件与上一个选股逻辑相同,加入资金强度由大到小的条件则更加侧重于股票的市场热度。资金强度大的股票一般意味着市场资金的热门关注,可能会使股票价格表现更好。

有何风险?

市场热度不一定能够带来好的收益,同时可能会导致选股结果偏中心化、风险较高。

如何优化?

可以结合股票行业板块、基本面数据、市场均衡等多方面信息,进行多方面筛选和确定优质股票。同时增加一些风控条件,如止损、止盈等,降低风险,保护投资。

最终的选股逻辑

本选股策略选取振幅大于1、昨日非涨停板、资金强度由大到小的股票。

同花顺指标公式代码参考

本选股策略主要采用了资金强度指标条件进行选股。

python代码参考

# 引入Tushare库
import tushare as ts

# 连接Tushare库
pro = ts.pro_api()

def select_stocks(n):
    selected_stocks = []
    today = pro.trade_cal(exchange='', is_open='1')["cal_date"].values[-1]
    yesterday = pro.trade_cal(exchange='', is_open='1', end_date=today, count=2)["cal_date"].values[0]
    for i in range(3):
        # 筛选出振幅大于1、昨日非涨停板的股票
        quote = pro.limit_list(trade_date=yesterday, limit_type='U')
        quote = quote.append(pro.limit_list(trade_date=yesterday, limit_type='D'))
        quote = quote[~quote["ts_code"].str.startswith("300")]
        quote = quote.drop_duplicates(subset="ts_code", keep=False)
        quote = quote.merge(pro.daily(trade_date=yesterday, fields='ts_code, pct_chg, high, low, close, amount'), on="ts_code")
        quote = quote[quote["pct_chg"] < 9.9]
        quote = quote.merge(pro.stock_moneyflow(trade_date=yesterday), on="ts_code")
        # 按资金强度排序
        quote = quote.sort_values(by="net_mf_amount")
        selected_stocks.extend(quote["ts_code"].tolist()[:n])
        selected_stocks = list(set(selected_stocks))
        # 削减选股结果
        if len(selected_stocks) >= n:
            break
    return selected_stocks
    ## 如何进行量化策略实盘?
    请把您优化好的选股语句放入文章最下面模板的选股语句中即可。

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

    模板如何使用?

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


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

评论