(iwencai选股策略)近25个交易日有单日涨幅大于等于百分之10_、按个股热度从大到小

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

问财量化选股策略逻辑

选股逻辑:选取RSI小于65、按个股热度从大到小排序、近25个交易日中至少有一天单日涨幅大于等于10%的股票进行选股。

选股逻辑分析

该选股策略在之前的选股基础上,增加了单日涨幅大于等于10%的条件。这一条件可以通过挖掘近期有具有爆发力的股票,从而获得更高的收益。同时也保留了之前的RSI指标和个股热度排序以保证选取的股票优势明显。

有何风险?

该选股策略的风险在于,单日涨幅大于等于10%需要考虑到市场波动性,可能会漏选一些质量较好但波动不大的股票。此外,该策略依然没有包含基本面分析和市场分析的因素,需要投资者进行谨慎评估。

如何优化?

可以结合使用其他技术指标如MACD、KDJ等,以便更加全面地判断股票的趋势。同时,可以对单日涨幅的基准值进行调整并优化选股策略。此外,需要注意该选股策略需要投资者根据市场实际情况进行调整,结合基本面和市场分析,进一步筛选出具有爆发力且质量良好的股票。

最终的选股逻辑

基于之前的选股策略,选择RSI小于65和按个股热度排序的条件下,近25个交易日中至少有一天单日涨幅大于等于10%的限制,来进行选股。同时,在应用该选股策略时,需要进一步结合个人风险偏好和市场实际情况进行调整和优化。

同花顺指标公式代码参考

RSI指标:RSI(CLOSE,14),其中14为计算周期。

python代码参考

import akshare as ak
import talib
import pandas as pd

获取个股日线数据

def get_daily_data(stock_code):
stock_zh_a_daily_hfq_df = ak.stock_zh_a_daily(symbol=stock_code,adjust="hfq")
return stock_zh_a_daily_hfq_df

判断近25个交易日中是否有单日涨幅大于等于10%

def is_up10(stock_df):
up10 = stock_df[-25:]['pct_chg'] >= 10
return up10.sum() > 0

获取个股RSI指标

def get_RSI(stock_df, w):
rsi = talib.RSI(stock_df['close'].values, w)[-1]
return rsi

选取符合条件的个股

def select_stocks(num):
stock_list = ak.stock_zh_a_spot()
stock_list = stock_list[stock_list['热度值'].notnull()]
stock_list = stock_list.sort_values(by='热度值', ascending=False)
result = []
for stock_code in stock_list['代码'].values:
stock_df = get_daily_data(stock_code)
if is_up10(stock_df):
rsi = get_RSI(stock_df, 14)
if rsi < 65:
result.append(stock_code)
if len(result) >= num:
break
return result

print(select_stocks(20))

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

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

    模板如何使用?

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


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

评论