Rss & SiteMap

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

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

标题:15至60分钟周期上,这个KKC每次来个TICK都会变化,不断变大直到和DDC一样

1楼
qq代人发帖 发表于:2015/3/23 10:07:16
VARIABLE:rc[]=0;

refc:=ref(close,1);
if date<>ref(date,1) then 
begin
rc:=refc;
            ddc:=HHV(rC,cm);
            kkc:=LLV(rC,cm);

end
!DDC:DDC;
!kkC:KKC;
这段代码的本意是自己计算CM日的最高价和最低价,用RC数组存放昨日收盘价,然后用HHV和LLV来求数组最近CM个数值的最大值和最小值。
今天发现一个问题,15至60分钟周期上,这个KKC每次来个TICK都会变化,不断变大直到和DDC一样,这是什么问题啊,
2楼
jinzhe 发表于:2015/3/23 10:11:16

日线上还以算算,分钟线上这两个就是一样的,分钟线上rc不就是一直是一样的除非换日了?

[此贴子已经被作者于2015/3/23 10:11:50编辑过]
3楼
jinzhe 发表于:2015/3/23 10:12:43

refc:=ref(close,1);
if date<>ref(date,1) then 
begin
            ddc:=HHV(refC,cm);
            kkc:=LLV(refC,cm);

end
4楼
无极无名 发表于:2015/3/23 10:48:35
老大,你这样写,第一我看不懂意思,第二根本通不过,统计函数对序列变量不能用在控制语句里面。所以,我在换日时,把昨天的收盘价赋值给空数组RC,换一次日进一个数据,然后在对RC进行统计运算,这样就可以在控制里面实现运算,而且实现了我要在小周期里面计算日线最高最低价的本意。在进行历史测试时,没有问题。今天挂上动态行情测试,结果发现随着行情数据刷新,KKC不断被刷新,直到和DDC相同。并且,公式刷新之后,恢复正常值,然后又开始变,但也不总是出现这种现象,有时不能再现。
5楼
无极无名 发表于:2015/3/23 11:23:14
我可以解释这个现象,请金字塔查明原因。这个原因是rc:=refc;这个语句每个tiCK都被执行,不断地把refc往数组RC里面填充,而HHV()和LLV()计算没有问题,只是因为我今天连接的是股指,昨天收盘REFC是新高,正好REFC=hhv(RC,CM),所以无论填充多少个REFC进去,HHV(RC,CM)计算结果不变,而LLV(RC,CM)随着填充的RC越来越多,数值不断抬高,直到RC数组里面全是REFC,结果就和HHV(RC,CM)一样不动了。每来一个TICK数组都被填充一次,这是金字塔的机理,还是一个BUG,如何解决?
6楼
jinzhe 发表于:2015/3/23 11:27:37

我们也在处理这个问题,请等待我们的结果

7楼
无极无名 发表于:2015/3/23 13:45:55
这个问题已经解决,每次赋值前,用SETUBOUND强行设置数组上届。
8楼
jinzhe 发表于:2015/3/23 14:04:12
图片点击可在新窗口打开查看能否贴出解决方案供大家参考一下
9楼
无极无名 发表于:2015/3/23 14:13:19
VARIABLE:DAYS=0,RC[]=0;


refc:=ref(close,1);
if date<>ref(date,1) then 
begin
DAYS:=DAYS+1;
SETUBOUND(rc,days);
rc:=refc;
ddc:=HHV(rC,cm);
kkc:=LLV(rC,cm);
end
[此贴子已经被作者于2015/3/23 14:14:28编辑过]
10楼
jinzhe 发表于:2015/3/23 14:16:53
图片点击可在新窗口打开查看
共12 条记录, 每页显示 10 条, 页签: [1] [2]


Powered By Dvbbs Version 8.3.0
Processed in 0.03516 s, 3 queries.