通达信 剔除“68”“ST”“8”“4”“*”开头的股票源码
时间: 2023-06-26 13:07:34 浏览: 1358
以下是剔除“68”、“ST”、“8”、“4”、“*”开头的股票的通达信源码:
```text
C1: STREND:=BARSLAST(CLOSE>REF(CLOSE,1));
C2: STFLAG:=STREND=0 AND REF(STREND,1)=1;
C3: STFILTER:=MA(VOL,5)/MA(VOL,20)>1.5 AND STFLAG=0;
C4: STFILTER:=STFILTER AND LEFT(DATE,1)<>'6' AND LEFT(DATE,1)<>'8' AND LEFT(DATE,1)<>'4' AND LEFT(DATE,1)<>'*' AND LEFT(CODE,2)<>'ST' AND LEFT(CODE,1)<>'8';
FILTER:=STFILTER;
```
这段源码中,首先定义了一个变量`STREND`,它表示收盘价大于昨日收盘价的天数;然后定义了一个变量`STFLAG`,它表示今天是收盘价小于等于昨日收盘价的第一天;接着定义了一个变量`STFILTER`,它表示成交量5日均线除以20日均线的比值大于1.5且`STFLAG`为0(即今天不是收盘价小于等于昨日收盘价的第一天);最后通过判断股票代码和日期的前缀是否为“68”、“ST”、“8”、“4”、“*”来过滤掉不符合条件的股票。
相关问题
通达信选股中,剔除‘68’‘4’‘83’‘ST’开头的股票的源码?
以下是剔除以'68'、'4'、'83'、'ST'开头的股票的通达信选股代码:
```
市场=SH,SZ;
上市天数>60;
不含(SZ002,SH688,SH900,SH688,SZ300,SZ200);
市场=SH;
剔除(LEFT(证券代码,2)== '68' OR LEFT(证券代码,1)=='4' OR LEFT(证券代码,3)=='83' OR LEFT(证券代码,2)=='ST');
市场=SZ;
剔除(LEFT(证券代码,2)== '68' OR LEFT(证券代码,1)=='4' OR LEFT(证券代码,3)=='83' OR LEFT(证券代码,2)=='ST');
```
这段代码首先选择SH和SZ市场的股票,然后剔除上市天数不足60天的新股。接下来,使用不含函数剔除特定的股票代码(包括SH002、SH688、SH900、SH688、SZ300、SZ200)。最后,在SH和SZ市场中分别使用剔除函数以'68'、'4'、'83'、'ST'开头的股票代码。
用通达信写688开头的股票,跌停源码?
以下是用通达信编写的判断688开头股票跌停的代码:
```text
//判断是否为688开头的股票
IF (LEFT(CODE,3)=="688") THEN
//获取当前价格和昨收价格
CUR_PRICE=REF(CLOSE,0);
YESTERDAY_PRICE=REF(CLOSE,1);
//计算跌停价
LIMIT_DOWN=ROUND(YESTERDAY_PRICE*0.9,2);
//判断当前价格是否小于等于跌停价
IF (CUR_PRICE<=LIMIT_DOWN) THEN
//输出跌停提示信息
ALERT("当前价已跌停!");
ENDIF;
ENDIF;
```
在通达信的公式编辑器中,将以上代码复制到一个新的公式中,并保存。然后在实时行情界面中以688开头的股票上应用该公式,即可实时判断该股票是否跌停,并给出提示信息。