同花顺backtest量化策略-昨日压力位除以90%成本上限、涨幅2%-7%、10日均线≥

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

问财量化选股策略逻辑

在选股过程中,我们采用了以下策略来筛选股票:

  1. 昨日压力位除以90%成本上限:我们通过计算每个股票的昨日压力位与90%成本上限的比值,挑选出比值在2%-7%之间的股票,表示其在短期内有一定的上涨空间。

  2. 涨幅2%-7%:我们选取过去10个交易日的涨幅在2%-7%之间的股票,以筛选出近期表现较好的股票。

  3. 10日均线≥180日均线:我们通过比较股票的10日均线和180日均线,挑选出10日均线高于180日均线的股票,表示股票的短期趋势较好。

通过以上策略,我们筛选出了符合要求的股票。

选股逻辑分析

以上选股策略逻辑的主要目的是筛选出短期内具有上涨潜力和较好短期趋势的股票。然而,这种策略也存在一定的风险。

有何风险?

  1. 市场风险:股票市场受多种因素影响,包括宏观经济、政策、市场情绪等,这些因素都可能影响到股票的价格。

  2. 技术风险:选股策略是基于历史数据和技术的,不能保证未来的表现。

  3. 选股偏差:选股策略可能无法捕捉到所有符合要求的股票,也可能选出一些不符合要求的股票。

如何优化?

为了优化选股策略,我们可以考虑以下方法:

  1. 结合其他指标:除了上述的选股策略,我们还可以结合其他技术指标和基本面指标来进一步筛选股票。

  2. 调整参数:我们可以调整上述策略中的参数,如涨幅的範圍、均线的周期等,以优化选股策略。

如何优化?

  1. 结合其他指标:在选股策略中,我们可以结合其他技术指标和基本面指标来进一步筛选股票,以提高选股的准确性。

  2. 调整参数:我们可以调整上述策略中的参数,如涨幅的範圍、均线的周期等,以优化选股策略。

最终的选股逻辑

在经过多次调整和优化后,我们的最终选股逻辑如下:

  1. 计算每个股票的昨日压力位与90%成本上限的比值,挑选出比值在2%-7%之间的股票。

  2. 选取过去10个交易日的涨幅在2%-7%之间的股票。

  3. 比较股票的10日均线和180日均线,挑选出10日均线高于180日均线的股票。

通过以上策略,我们筛选出了符合要求的股票。

常见问题

  1. 选股策略是否能够捕捉到所有符合要求的股票?

答:选股策略可能无法捕捉到所有符合要求的股票,也可能选出一些不符合要求的股票。

  1. 选股策略是否存在技术风险?

答:选股策略是基于历史数据和技术的,不能保证未来的表现,存在技术风险。

  1. 如何调整选股策略的参数?

答:我们可以调整上述策略中的参数,如涨幅的範圍、均线的周期等,以优化选股策略。

  1. 选股策略是否存在市场风险?

答:选股策略受到了市场风险的影响,股票市场受多种因素影响,包括宏观经济、政策、市场情绪等,这些因素都可能影响到股票的价格。

指标公式代码参考

在选股策略中,我们使用了以下指标公式:

  1. 昨日压力位:`java.util.ArrayList pressure = new ArrayList(); pressure.add(getPrice(close[0], high[0], low[0], close[1])); pressure.add(getPrice(close[1], high[1], low[1], close[2])); pressure.add(getPrice(close[2], high[2], low[2], close[3]))); pressure.add(getPrice(close[3], high[3], low[3], close[4]))); pressure.add(getPrice(close[4], high[4], low[4], close[5]))); pressure.add(getPrice(close[5], high[5], low[5], close[6]))); pressure.add(getPrice(close[6], high[6], low[6], close[7]))); pressure.add(getPrice(close[7], high[7], low[7], close[8]))); pressure.add(getPrice(close[8], high[8], low[8], close[9]))); pressure.add(getPrice(close[9], high[9], low[9], close[10]))); pressure.add(getPrice(close[10], high[10], low[10], close[11]))); pressure.add(getPrice(close[11], high[11], low[11], close[12]))); pressure.add(getPrice(close[12], high[12], low[12], close[13]))); pressure.add(getPrice(close[13], high[13], low[13], close[14]))); pressure.add(getPrice(close[14], high[14], low[14], close[15]))); pressure.add(getPrice(close[15], high[15], low[15], close[16]))); pressure.add(getPrice(close[16], high[16], low[16], close[17]))); pressure.add(getPrice(close[17], high[17], low[17], close[18]))); pressure.add(getPrice(close[18], high[18], low[18], close[19]))); pressure.add(getPrice(close[19], high[19], low[19], close[20]))); pressure.add(getPrice(close[20], high[20], low[20], close[21]))); pressure.add(getPrice(close[21], high[21], low[21], close[22]))); pressure.add(getPrice(close[22], high[22], low[22], close[23]))); pressure.add(getPrice(close[23], high[23], low[23], close[24]))); pressure.add(getPrice(close[24], high[24], low[24], close[25]))); pressure.add(getPrice(close[25], high[25], low[25], close[26]))); pressure.add(getPrice(close[26], high[26], low[26], close[27]))); pressure.add(getPrice(close[27], high[27], low[27], close[28]))); pressure.add(getPrice(close[28], high[28], low[28], close[29]))); pressure.add(getPrice(close[29], high[29], low[29], close[30]))); pressure.add(getPrice(close[30], high[30], low[30], close[31]))); pressure.add(getPrice(close[31], high[31], low[31], close[32]))); pressure.add(getPrice(close[32], high[32], low[32], close[33]))); pressure.add(getPrice(close[33], high[33], low[33], close[34]))); pressure.add(getPrice(close[34], high[34], low[34], close[35]))); pressure.add(getPrice(close[35], high[35], low[35], close[36]))); pressure.add(getPrice(close[36], high[36], low[36], close[37]))); pressure.add(getPrice(close[37], high[37], low[37], close[38]))); pressure.add(getPrice(close[38], high[38], low[38], close[39]))); pressure.add(getPrice(close[39], high[39], low[39], close[40]))); pressure.add(getPrice(close[40], high[40], low[40], close[41]))); pressure.add(getPrice(close[41], high[41], low[41], close[42]))); pressure.add(getPrice(close[42], high[42], low[42], close[43]))); pressure.add(getPrice(close[43], high[43], low[43], close[44]))); pressure.add(getPrice(close[44], high[44], low[44], close[45]))); pressure.add(getPrice(close[45], high[45], low[45], close[46]))); pressure.add(getPrice(close[46], high[46], low[46], close[47]))); pressure.add(getPrice(close[47], high[47], low[47], close[48]))); pressure.add(getPrice(close[48], high[48], low[48], close[49]))); pressure.add(getPrice(close[49], high[49], low[49], close[50]))); pressure.add(getPrice(close[50], high[50], low[50], close[51]))); pressure.add(getPrice(close[51], high[51], low[51], close[52]))); pressure.add(getPrice(close[52], high[52], low[52], close[53]))); pressure.add(getPrice(close[53], high[53], low[53], close[54]))); pressure.add(getPrice(close[54], high[54], low[54], close[55]))); pressure.add(getPrice(close[55], high[55], low[55], close[56]))); pressure.add(getPrice(close[56], high[56], low[56], close[57]))); pressure.add(getPrice(close[57], high[57], low[57], close[58]))); pressure.add(getPrice(close[58], high[58], low[58], close[59]))); pressure.add(getPrice(close[59], high[59], low[59], close[60]))); pressure.add(getPrice(close[60], high[60], low[60], close[61]))); pressure.add(getPrice(close[61], high[61], low[61], close[62]))); pressure.add(getPrice(close[62], high[62], low[62], close[63]))); pressure.add(getPrice(close[63], high[63], low[63], close[64]))); pressure.add(getPrice(close[64], high[64], low[64], close[65]))); pressure.add(getPrice(close[65], high[65], low[65], close[66]))); pressure.add(getPrice(close[66], high[66], low[66], close[67]))); pressure.add(getPrice(close[67], high[67], low[67], close[68]))); pressure.add(getPrice(close[68], high[68], low[68], close[69]))); pressure.add(getPrice(close[69], high[69], low[69], close[70]))); pressure.add(getPrice(close[70], high[70], low[70], close[71]))); pressure.add(getPrice(close[71], high[71], low[71], close[72]))); pressure.add(getPrice(close[72], high[72], low[72], close[73]))); pressure.add(getPrice(close[73], high[73], low[73], close[74]))); pressure.add(getPrice(close[74], high[74], low[74], close[75]))); pressure.add(getPrice(close[75], high[75], low[75], close[76]))); pressure.add(getPrice(close[76], high[76], low[76], close[77]))); pressure.add(getPrice(close[77], high[77], low[77], close[78]))); pressure.add(getPrice(close[78], high[78], low[78], close[79]))); pressure.add(getPrice(close[79], high[79], low[79], close[80]))); pressure.add(getPrice(close[80], high[80], low[80], close[81]))); pressure.add(getPrice(close[81], high[81], low[81], close[82]))); pressure.add(getPrice(close[82], high[82], low[82], close[83]))); pressure.add(getPrice(close[83], high[83], low[83], close[84]))); pressure.add(getPrice(close[84], high[84], low[84], close[85]))); pressure.add(getPrice(close[85], high[85], low[85], close[86]))); pressure.add(getPrice(close[86], high[86], low[86], close[87]))); pressure.add(getPrice(close[87], high[87], low[87], close[88]))); pressure.add(getPrice(close[88], high[88], low[88], close[89]))); pressure.add(getPrice(close[89], high[89], low[89], close[90]))); pressure.add(getPrice(close[90], high[90], low[90], close[91]))); pressure.add(getPrice(close[91], high[91], low[91], close[92]))); pressure.add(getPrice(close[92], high[92], low[92], close[93]))); pressure.add(getPrice(close[93], high[93], low[93], close[94]))); pressure.add(getPrice(close[94], high[94], low[94], close[95]))); pressure.add(getPrice(close[95], high[95], low[95], close[96]))); pressure.add(getPrice(close[96], high[96], low[96], close[97]))); pressure.add(getPrice(close[97], high[97], low[97], close[98]))); pressure.add(getPrice(close[98], high[98], low[98], close[99]))); pressure.add(getPrice(close[99], high[99], low[99], close[100]))); pressure.add(getPrice(close[100], high[100], low[100], close[101]));
## 
### 指标公式代码参考

在选股策略中,我们使用了以下指标公式来筛选股票:

1. **昨日压力位**:通过计算每个股票的昨日压力位与90%成本上限的比值,挑选出比值在2%-7%之间的股票。
2. **涨幅2%-7%**:选取过去10个交易日的涨幅在2%-7%之间的股票。
3. **10日均线≥180日均线**:比较股票的10日均线和180日均线,挑选出10日均线高于180日均线的股票。

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

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

    模板如何使用?

    点击页面下方的复制按钮,复制到自己的账户即可使用模板进行回测。


    
收益&风险
源码

评论