DeepSeek解析通达信股票指标:从代码到策略的深度理解
DeepSeek解析通达信股票指标:从代码到策略的深度理解
本文将通过DeepSeek对一个复杂的通达信股票筛选指标进行深度解析,帮助投资者更好地理解该指标的筛选逻辑和潜在优化方向。
一、公式拆解与逻辑诊断
用户提供的股票筛选公式包含多个过滤条件,让我们逐步解析每个条件的含义:
- 市值约束:
FINANCE(40)/100000000>20 AND FINANCE(40)/100000000<500
- 这里
FINANCE(40)
可能指的是公司的流通市值,除以1亿后,条件要求市值在20亿到500亿之间。这说明用户希望筛选中等规模的上市公司,排除市值过小或过大的股票。
- 去ST:
NAMELIKE('ST')=0 AND NAMELIKE('*ST')=0 AND NAMELIKE('SST')=0
- 排除名称中包含ST、*ST、SST的股票。这些通常是面临退市风险或其他特殊处理的股票,风险较高,用户希望规避。
- 去停牌:
DYNAINFO(8)>0
DYNAINFO(8)
可能代表当日成交量,大于0意味着股票没有停牌,正常交易。
- 去高价股:
NOT(C>80)
- 即当前价格不超过80元。这可能是因为高价股流动性较低,或者用户认为价格过高有回调风险。
- 去除:
IF(CODELIKE('688'),0,1) AND IF(CODELIKE('300'),0,1) AND IF(CODELIKE('689'),0,1) AND 去ST AND 去停牌
- 排除科创板(688开头)、创业板(300开头)、其他特定代码(689),同时结合去ST和去停牌的条件。这可能是因为这些板块的股票波动性较大,或者用户对它们不太熟悉。
接下来是更复杂的条件:
COUNT(接近一年新高,5)>4
过去5天内有超过4天接近一年新高。这可能意味着股票处于强势上升趋势。
两个2涨停
可能是指过去一段时间内有两个连续涨停板,但用户没有明确定义,需要进一步确认。
庄家约束
这个条件没有具体定义,可能是用户自定义的指标,比如主力资金流入情况。
另外的注释中提到5天内有过涨停,使用COUNT(C/REF(C,1)*100-100>=9.9,5)>=1
,即过去5天内至少有一个涨停板。
炸板的定义是当天最高价达到涨停价(ZTPRICE计算),但收盘价低于最高价,即涨停板被打开,未能封住涨停。
涨停的定义是收盘价涨幅超过9.2%并且收盘价等于最高价,即封住涨停。
价格约束:C>REF(C,3) AND C>REF(C,4) AND MACD.DEA>0
- 当前价格高于3天前和4天前的收盘价,同时MACD的DEA线大于0,可能表示处于多头趋势。
最终的筛选条件组合了去除条件、前一日和前三日没有涨停、前两日有涨停、当前未涨停,并且满足价格约束。这可能是在寻找一种特定的形态,比如前两天有涨停,但之后没有继续涨停,同时价格仍然保持上涨趋势,MACD向好,且符合市值、价格、板块等过滤条件。
二、核心问题与优化方案
在分析过程中,发现以下潜在问题:
在“去除”条件中,排除了688、300、689开头的股票,这可能去除了科创板、创业板等,需要注意是否用户确实希望排除这些板块。
炸板和涨停的定义可能存在重复或冲突,需要确认涨停的判断条件是否准确,比如是否应该使用精确的10%涨幅,或者考虑ST股票的不同涨停幅度。
MACD.DEA>0的条件是否适用于用户的策略,需确认DEA线的计算周期是否符合预期。
此外,用户提到的“两个2涨停”未在代码中明确定义,可能需要进一步澄清。是否有遗漏的条件定义?
三、完整优化公式
基于以上分析,建议对公式进行以下优化:
变量命名清晰化:部分条件命名不够直观,如“去除”可以改为“排除板块及ST停牌”。
注释说明:部分代码有注释,但可以更详细,特别是自定义指标如“庄家约束”。
条件逻辑验证:确保各条件之间没有冲突,比如排除高价股的同时是否可能排除掉符合条件的股票。
参数优化:比如市值范围、价格上限、涨停天数等参数是否合理,是否需要根据历史数据回测调整。
四、策略逻辑示意图
五、回测建议参数
在实际应用中,建议使用历史数据对优化后的公式进行回测,以验证其有效性和稳定性。回测参数应包括:
- 时间范围:至少覆盖一个完整的市场周期
- 交易成本:考虑手续费、滑点等因素
- 风险控制:设置止损点和最大持仓比例
注意:本文内容仅供参考,不构成投资建议。