问财量化选股策略逻辑
选股策略为:在元宇宙行业中选取KDJ刚形成金叉,并且前一交易日未出现涨停板的股票。在每个交易日的10点之前进行选股,选取当日的交易股票。
选股逻辑分析
本选股策略在技术面的选股条件中,结合了KDJ指标,筛选出股票近期出现的趋势反转信号。同时,要求前一交易日未出现涨停板,减少了潜在的大幅回调风险。同时,在每个交易日的10点之前进行选股,能够减小市场波动的影响,提高选股的准确性。
有何风险?
本选股策略存在以下风险:
- 通过简单的技术分析和前一交易日的涨跌幅进行选股,忽略了其他市场宏观因素和股票公司基本面的影响,有可能导致选股结果不够全面;
- 仅考虑前一交易日涨跌幅的选股条件有较强的主观性和随机性,可能会出现选股偏差的情况;
- 选用的技术指标KDJ在不同市场环境下的表现不同,有可能造成选股结果不稳定。
如何优化?
为提高本选股策略的准确性和鲁棒性,可以:
- 综合考虑其他市场宏观因素和股票基本面数据,例如财务报表、成长性、竞争环境等,从不同层面上评估股票真实价值;
- 加强选股条件中的量化指标,例如考虑均线的多空变化、交易量的变化等因素,结合其他技术指标一同使用,提高选股策略全面性;
- 考虑KDJ指标的参数调整,结合市场特征,选择最优参数进行选股,减小选股结果受市场环境影响的风险;
- 加入其他风险控制手段,例如设置止损点、分散投资等,规避不可预测的市场波动和股票风险。
最终的选股逻辑
在元宇宙行业中选取KDJ刚形成金叉,并且前一交易日未出现涨停板的股票。在每个交易日的10点之前进行选股,选取当日的交易股票。
同花顺指标公式代码参考
# 选股条件:在元宇宙行业中选取KDJ刚形成金叉,并且前一交易日未出现涨停板的股票。
INDUSTRY == '元宇宙' AND KDJ(9,3,3)上穿KDJ(9,3,3)的DEA AND REF(MAX(CLOSE - PRECLOSE, 0), 1) < REF(HIGH - LOW, 1) * 0.8 AND HSL > 0 AND LB > 0 AND ST == 0
# 选股结果:选取当日的交易股票
选股条件:INDUSTRY == '元宇宙' AND KDJ(9,3,3)上穿KDJ(9,3,3)的DEA AND REF(MAX(CLOSE - PRECLOSE, 0), 1) < REF(HIGH - LOW, 1) * 0.8 AND HSL > 0 AND LB > 0 AND ST == 0 AND CURRENT_TIME = 1000
排序规则:EMPTY()
选股数量:EMPTY()
python代码参考
import numpy as np
import pandas as pd
from typing import List
def select_stocks(data: pd.DataFrame, industry: str) -> List[str]:
df = data[data['INDUSTRY'] == industry]
# KDJ
df['KDJ_K'], df['KDJ_D'], df['KDJ_J'] = talib.STOCH(df['HIGH'].values, df['LOW'].values, df['CLOSE'].values, fastk_period=9, slowk_period=3, slowd_period=3)
df['KDJ_金叉'] = (df['KDJ_K'] > df['KDJ_D']) & (df['KDJ_K'].shift() < df['KDJ_D'].shift())
# 前一交易日涨跌幅
df['LAST_CHG'] = (df['CLOSE'] - df['PRECLOSE']) / df['PRECLOSE']
# 选股条件
select_df = df[(df['KDJ_金叉']) & (df['LAST_CHG'] >= 0) & (df['LAST_CHG'] < 0.095) & (df['TRADE_STATUS'] == 1) & (df['TIME'] < '10:00:00')].index.tolist()
return select_df
## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。


