问财量化选股策略逻辑
选股逻辑:振幅大于1,反包,60开头的股票。
选股逻辑分析
该选股逻辑继承了前两个逻辑的优点,并且选择了股票代码开头为60的股票进行筛选。这种选股逻辑可以有效地排除低市值、低流动性的股票,同时在振幅和反包两个技术指标的基础上,降低了一定的风险。
有何风险?
60开头的股票相对于全市场是较少的,可能会导致选股范围过小,选出的股票品种不够丰富,难以达到分散化的投资目的。此外,该选股逻辑仍然没有考虑市场风险和基本面因素,无法保证选出的股票会持续表现优良。
如何优化?
在进行选股时,可以考虑融合市场情况、技术因素以及基本面因素,以便更全面地筛选股票。例如,在技术因素的基础上,可以考虑加入各种技术指标,如动量指标、趋势指标等。同时,选择股票时不仅可以考虑代码,还可以根据行业、市值等因素进行筛选,以更全面地考虑和比较。
最终的选股逻辑
在以上分析基础上,提出完善后的选股逻辑:
- 振幅大于1;
- 近3天内出现反包形态;
- 股票代码以60开头;
- 筛选出优质股票。
同花顺指标公式代码参考
使用通达信指标计算,以下是该选股策略的通达信指标公式代码:
F01: HIGH/LOW - 1 > 0.01; // 振幅大于1
F02: NOT(SIGN(CLOSE - REF(CLOSE, 1)) == SIGN(REF(CLOSE, 1) - REF(CLOSE, 2))); // 反包
F03: LEFT(INDEX, 2) == '60'; // 股票代码以60开头
FILTER: F01 AND F02 AND F03;
SELECT(IF(1, 1, 0), "选股"); // 输出选中的股票
python代码参考
以下是 Python 实现该策略的选股逻辑:
def stock_filter(dv, symbols):
# 获取数据,计算指标
close = dv.get_ts('close', symbol=symbols)
high = dv.get_ts('high', symbol=symbols)
low = dv.get_ts('low', symbol=symbols)
price_filter = (close.iloc[:, -1] > close.iloc[:, -2]) # 当前收益率大于0
amp = (close / close.shift(1) - 1).abs() > 0.01
ta_func_renko = Ta('CDLTRISTAR', 0, dv.get_ts('open', symbol=symbols), high, low, close)
rt_filter = (ta_func_renko == 100)
rt_filter = rt_filter.iloc[:, :-1].sum(axis=1) > 0
code_filter = [code.startswith('60') for code in symbols]
selected_stocks = (price_filter & amp & rt_filter & code_filter)
selected_stocks = selected_stocks.sort_values(by='pct_chg', ascending=False)
return selected_stocks.index.tolist()
该代码实现了选股策略的核心部分,使用CDLTRISTAR函数计算反包形态,选择以60开头的股票,符合振幅条件的股票,并根据当天的收益率排序。
## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。
