(supermind)振幅大于1、昨天3连板、昨日9_15匹配价跌停_

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

问财量化选股策略逻辑

选股逻辑:振幅大于1、昨天有3连板、昨日9:15匹配价跌停。

选股逻辑分析

该选股逻辑主要是以市场活跃度、资金流向和一定的技术分析为参考因素。振幅大于1是反映市场活跃度的指标之一,昨天有3连板更加表明该股票当前有一定的市场关注度。昨日9:15匹配价跌停是反映股票当前的价格变动趋势和市场风险的指标之一。该选股逻辑选择了多个指标进行筛选,但仍可能存在筛选效率和精度不高、风险难以控制等问题。

有何风险?

以下是该选股策略存在的风险:

  1. 筛选指标较多,容易出现反复筛选导致的选股精度不高;
  2. 过度依赖技术分析,忽略了公司基本面和行业趋势对股票价格的影响;
  3. 选股标准较为单一,不能充分考虑个股之间的差异性和行业差异性。

如何优化?

为了优化该选股逻辑,可以考虑以下优化方案:

  1. 加入资产负债表、利润表等财务指标作为选股指标之一,综合考虑选股的精度;
  2. 同时考虑行业指标和公司基本面,将技术指标和基本面混合考虑;
  3. 在选股标准中加入相对估值、板块轮动等指标,更加综合考虑股票的筛选。

最终的选股逻辑

改进后的选股逻辑如下:

  1. 筛选振幅大于1的股票;
  2. 在1的基础上,筛选昨天有3连板的股票;
  3. 在2的基础上,筛选昨日9:15匹配价跌停的股票;
  4. 在3的基础上,综合考虑较好的公司基本面、行业趋势、相对估值和板块轮动等,选取业绩稳定、有一定盈利能力和相对估值较低的股票。

同花顺指标公式代码参考

该选股逻辑的通达信指标公式如下:

C1 := (HIGH - LOW) > 1;
C2 := (REF(CLOSE, 1) > REF(CLOSE, 2)) AND (REF(CLOSE, 2) > REF(CLOSE, 3));
C3 := (T[1]=LLV(LASTBAR,1,LOWEST));
SELECTOR := C1 AND C2 AND C3;

其中 T[1] 代表9:15这根K线的匹配价,LASTBAR 代表当前的K线索引,LOWEST 代表当日价格的最低价。

python代码参考

import pandas as pd
from tqsdk import TqApi, TqAuth

api = TqApi(auth=TqAuth("YOUR_ACCOUNT", "YOUR_PASSWORD"))

klines = api.get_kline_serial("SHFE.rb2101", 24 * 60 * 60, data_length=300) # 获取 df 数据,周期为日K线
df = pd.DataFrame(klines)

C1 = (df['high'] - df['low'] >= 1)
C2 = df.groupby('contract.symbol')['close'].apply(lambda x: (x.shift(1) > x.shift(2)) & \
                                                             (x.shift(2) > x.shift(3))).astype(int)
C3 = (df['datetime'].dt.time == datetime.time(9, 15)) & \
     (df['close'] == df['low'].rolling(min_periods=1, window=LASTBAR).min())
selector = (C1 & C2 & C3).astype(int)
result = df[selector == 1].index.tolist()
    ## 如何进行量化策略实盘?
    请把您优化好的选股语句放入文章最下面模板的选股语句中即可。

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

    模板如何使用?

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


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

评论