问财量化选股策略逻辑
本选股策略要求振幅大于1,10天内涨停天数大于2,今日最低价小于昨日最低价。将选股逻辑作为第一个段落放入标题为 ## 问财量化选股策略逻辑 的段落中。
选股逻辑分析
本选股策略逻辑要求选择振幅较大、涨势较好的股票,并且该股票今日的最低价低于昨日的最低价。振幅大于1能够保证股价波动较大,交易机会较多;10天内涨停天数大于2说明该股票有较强的上涨趋势,今日最低价小于昨日最低价可以体现出该股票的相对强势。通过本选股策略,可以进一步筛选出具有上涨趋势和相对强势的股票。
有何风险?
以下是该选股策略可能存在的一些风险:
- 市场波动性过大,振幅大于1容易造成投资者的心理恐慌。
- 今日最低价低于昨日最低价并不能完全反映出股票的实际走势,有可能会选出一些虽然相对强势,但实际处于下降趋势的股票。
如何优化?
对于以上存在的风险,可以考虑对选股逻辑进行以下优化:
- 设置动态的振幅阈值,避免因为市场波动性而导致的恐慌行为。
- 在今日最低价低于昨日最低价的基础上,结合其他技术指标进行选股,如相对强度指标和 K 线分析等。
最终的选股逻辑
综合以上优化方案,我们得出完善后的选股逻辑如下:
- 振幅大于当前市场振幅均值。
- 10天内涨停天数大于等于2。
- 今日最低价小于昨日最低价。
- 在其他条件一定的情况下,结合其他技术指标进行选股。
同花顺指标公式代码参考
以下是通达信公式参考:
C1: = HIGH-LOW > MA(HIGH-LOW, 20);
C2: = COUNT(HIGH/REF(HIGH, 1)>1.1, 10) >= 2;
C3: = LOW < REF(LOW, 1);
SELECTED: = C1 AND C2 AND C3;
Python代码参考
以下是Python代码参考:
import tushare as ts
def stock_selection():
rs_basic_info = ts.get_stock_basics()
selected_code = []
for code in rs_basic_info.index:
rs = ts.get_day_ticks(code)
if rs is None or len(rs) < 50:
continue
threshold = rs['high'] - rs['low'].mean()
condition1 = rs['high'] - rs['low'] > threshold
condition2 = rs['price'].rolling(window=10, min_periods=1).apply(lambda x: len(x[x>x.shift(1)*1.1]), raw=True) >= 2
condition3 = rs['low'][-1] < rs['low'][-2]
if sum([condition1, condition2, condition3]) != 3:
continue
selected_code.append(code)
return selected_code
注:以上代码仅供参考,具体根据实际需求和风险承受能力进行调整。需要安装tushare库。
## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。
