通达信选股要求:30日内有4次涨停,并且第一个涨停到第四个涨停之间的振幅在30%内
2条回答 默认 最新
极客车云 2026-03-06 01:09关注以下是使用通达信公式编辑器来实现该选股条件的公式代码:
N:=30; TT:=BARSLAST(C/REF(C,1)>=1.095 AND C=H)+1; // 计算最近涨停的周期数 ZT_COUNT:=COUNT(C/REF(C,1)>=1.095 AND C=H,N); // 计算N日内涨停次数 FIRST_ZT:=REF(TT,ZT_COUNT-3); // 第一个涨停的周期位置 LAST_ZT:=REF(TT,1); // 第四个涨停的周期位置 AMPLITUDE:=(HIGH/REF(C,FIRST_ZT)-1)*100; // 计算第一个涨停到第四个涨停之间的振幅 XG:ZT_COUNT>=4 AND AMPLITUDE<=30;代码解释:
- 定义变量:
N:=30;:定义统计的周期为30日。TT:=BARSLAST(C/REF(C,1)>=1.095 AND C=H)+1;:计算从当前向前数最近一次涨停的周期数。BARSLAST函数是返回最近一次满足条件的周期数,这里是最近一次涨停的周期数,然后加1是因为周期数从0开始计数。ZT_COUNT:=COUNT(C/REF(C,1)>=1.095 AND C=H,N);:统计N日内涨停的次数,COUNT函数用于统计在N周期内满足涨停条件(收盘价 - 昨日收盘价 >= 9.5%且收盘价等于最高价)的次数。FIRST_ZT:=REF(TT,ZT_COUNT-3);:获取第一个涨停的周期位置,通过REF函数引用前面第ZT_COUNT - 3个周期的最近涨停周期数。LAST_ZT:=REF(TT,1);:获取第四个涨停的周期位置,引用前面第1个周期的最近涨停周期数。AMPLITUDE:=(HIGH/REF(C,FIRST_ZT)-1)*100;:计算第一个涨停到第四个涨停之间的振幅,用第四个涨停的最高价除以第一个涨停的收盘价,减1后乘以100得到振幅百分比。XG:ZT_COUNT>=4 AND AMPLITUDE<=30;:条件选股的最终条件,即N日内涨停次数大于等于4次且第一个涨停到第四个涨停之间的振幅小于等于30%。
你可以将上述代码复制到通达信的公式编辑器中,创建一个新的选股公式,然后使用该公式进行选股操作。
解决 无用评论 打赏 举报- 定义变量: