问财量化选股策略逻辑
选股逻辑:振幅大于1,近25个交易日有单日涨幅大于等于百分之10,主升起动。
选股逻辑分析
该选股策略相较于前一个策略增加了对主升起动的考虑,主要是通过量价配合,挖掘股票价格的主升情况,增加了选股策略的稳定性和准确性。然而,该策略仍然缺乏对公司基本面和行业趋势的了解,存在较大风险。同时,应该注意,主升起动的定义并不唯一,正确的主升起动定义与调整是保证该选股逻辑正确运用的前提。
有何风险?
该选股策略存在以下风险:
- 主升起动的定义不唯一,主升趋势的调整也会影响选股结果。
- 与前一个策略相同,缺乏股票基本面的考虑,选择出的股票并不一定具备投资价值。
- 对主升起动重视程度不够,更多关注股票后期走势,可能在一些主升股集中调整的时候落后于市场。
如何优化?
为了提高该选股逻辑的效率和准确性,我们建议增加以下考虑:
- 定义正确的主升起动标准,并结合成交量,确定主升起点和结束点。
- 考虑增加股票的基本面和行业趋势的考虑,增加非量化分析。
- 在选择出倾向主升趋势的个股后,结合监控量价变化,动态调整个股的主升趋势状态。
最终的选股逻辑
为了更全面地考虑股票的因素,我们建议增加以下考虑:
- 振幅大于1。
- 近25个交易日有单日涨幅大于等于10%。
- 主升上升趋势,主升起点和结束点的计算参考股票的成交量和K线形态等技术分析工具。
- 考虑增加基本面指标和行业趋势指标的关注。
- 屏蔽涨跌停的股票。
同花顺指标公式代码参考
C1 = IF(HIGH - LOW > ATR(CLOSE, 20), 1, 0);
C2 = IF(ABS(HIGH/REF(CLOSE, 1)-1)>0.1, 1, 0);
C3 = // 主升起动部分指标计算
C4 = // 增加基本面指标和行业趋势指标后的选股策略
C5 = IF(NOT(BARSLAST(DAY() ~= 0 AND DAY() ~= 4)), 1, 0);
SELECTOR = C1*C2*C3*C4*C5;
RESULT = SORT_RANK(SELECTOR, ASCEND(SEARCH_RANK()));
python代码参考
import pandas_ta as ta
df = pd.read_csv('your_data.csv', index_col='date')
C1 = np.where(df['high'] - df['low'] > ta.atr(), 1, 0)
C2 = np.where(np.abs(df['high'] / df['close'].shift(1) - 1) > 0.1, 1, 0)
C3 = // 主升起动部分指标计算
C4 = // 增加基本面指标和行业趋势指标后的选股策略
C5 = np.where(~((df.index.dayofweek == 0) | (df.index.dayofweek == 4)), 1, 0)
selector = C1 * C2 * C3 * C4 * C5
result = np.argsort(np.argsort(selector))
## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。
