Rss & SiteMap

金字塔客服中心 - 专业程序化交易软件提供商 http://www.weistock.com/bbs/

专业程序化软件提供商
共37 条记录, 每页显示 10 条, 页签: [1] [2][3][4]
[浏览完整版]

标题:inblock函数有时返回不正确的结果

1楼
a141027 发表于:2015/5/15 8:54:26
我想检测当前品种是否在某个自建的板块当中,使用方法如下

建新板块A,这个板块把已经退市的品种都过滤掉了;
建立一个独立公式“检测”,仅一行代码:通过:=inblock('A');
在当前品种中执行 stkindi('','A.通过',0,6,0);

绝大部分品种的结果都是对的,但总是有些不在板块中的品种却莫名其妙地通过了检测。这会导致我的策略总是有出错的地方,因为不知道哪里出了问题,想容错都不知道从哪着手。

为何inblock函数会出现这样的结果?
2楼
a141027 发表于:2015/5/15 9:16:04
还补充一个更无法理解的问题,为了节省计算资源,我限定仅当todaybar=2的时候进行检测,结果返回至某个全局变量并显示,到收盘时间自动重置该全局变量。大部分品种的运行结果都是稳定的,但那些inblock返回结果不正确的品种的返回值在todaybar>2的时候会莫名其妙地无规则跳动,我仔细观察了,仅仅是inblock返回值不正确的品种会出现这种情况,返回值正常的都不会这样。情况很吓人,甚至你不动光标,光标停在任何一根K线上时,该全局变量也会自己不断上下跳动。你inblock执行结果不对也就算了,怎么todaybar>2的时候它的值还会变?那if todaybar=2 then语句为什么不起作用?
3楼
yukizzc 发表于:2015/5/15 9:34:57
你直接通过:=inblock('A');这个输出到那些品种上看呢,输出结果是1还是0
4楼
a141027 发表于:2015/5/15 9:45:03
直接到那些品种上看时结果是对的,是0,而且也不会自己跳。见图。
此主题相关图片如下:未命名图片_1.png
按此在新窗口浏览图片
5楼
yukizzc 发表于:2015/5/15 10:05:37

我这边用了没发现不对额

总是有些不在板块中的品种却莫名其妙地通过了检测,您把你这边设置的板块以及里面品种说下,并注明在哪个品种下返回结果不对。

我们这边看下。

6楼
a141027 发表于:2015/5/15 10:53:00

行,我把步骤罗列如下,请你复制代码到你电脑上重复一遍看看结果是否跟我说的一样。出问题的不止一个品种,这里只提了其中一个,J03,焦炭1603,为简单化查找错误的过程,我简化了公式。

 

1、建立公式”筛选“,在条件选择中以该公式的结果建立板块A,代码如下。执行公式的时候不要点选”停牌的品种“。

 

非连续:=not(strfind(stkname(),'连续',1)),nodraw;
非指数:=not(strfind(stkname(),'指数',1)),nodraw;
通过:非连续 and 非指数;

 

2、建立公式”检测“,检测当前品种是否包括于板块A当中,代码如下。

 

通过:inblock('A'),nodraw;

 

3、另建公式”读结果“,在1分钟线下运行于任何连续合约都行,代码如下:

variable:AA=drawnull;

 

if todaybar=2 then AA:=stkindi('J03','检测.通过',0,6,0);

 

通过:AA,nodraw;

 

if time()=closetime(0) then AA=drawnull;

 

4、观察结果,我这里的情况就是上面说的那样,”通过“字段返回的结果是很奇怪的数字,而且不断自己跳动,即时光标不动,它也时不时自己在那里跳动。

 

 

7楼
a141027 发表于:2015/5/15 10:55:58

上面第3步那句if...then的代码还可以改成这样,你就能更清楚看到J03通过了检测,并且返回结果不断自己跳。

 

if todaybar=2 then AA:=if(stkindi('J03','检测.通过',0,6,0),stkindi('J03','检测.通过',0,6,0),drawnull);

8楼
a141027 发表于:2015/5/15 10:59:17

上面“读结果”公式最后一行AA后面我打漏了一个冒号,但系统里的公式是对的。

 

if time()=closetime(0) then AA:=drawnull;

9楼
a141027 发表于:2015/5/15 11:07:44
忘了说,筛选品种进A板块的时候,范围全选上期,郑期和大期三个交易所。
10楼
FexTel 发表于:2015/5/15 11:11:39
好的,我们会安排具体工作人员测试后回复您
共37 条记录, 每页显示 10 条, 页签: [1] [2][3][4]


Powered By Dvbbs Version 8.3.0
Processed in 0.02734 s, 2 queries.