Rss & SiteMap

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

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

标题:请教一个程序执行的问题。

1楼
wqspeter 发表于:2013/6/25 16:52:40

以下是一段指标代码,选择的是“副图”、“序列计算”

M:="amount#day";(不用理会这四个值是否一样)
M1:="amount#day";
M2:="amount#day";
M3:="amount#day";
MTMP:=0;
IF ((((M < (M1 / 2)) OR (M < (M2 / 2))) OR (M > (2 * M1))) OR (M > (2 * M2))) THEN
BEGIN
IF (M > MTMP) THEN
BEGIN
MTMP:=M;
END
IF (M1 > MTMP) THEN
BEGIN
MTMP:=M1;
END
IF (M2 > MTMP) THEN
BEGIN
MTMP:=M2;
END
IF (M3 > MTMP) THEN
BEGIN
MTMP:=M3;
END
M:=MTMP;
M1:=MTMP;
M2:=MTMP;
M3:=MTMP;
END
AM:(((M + M1) + M2) / 30000000000),NODRAW;

按理说,第一个IF条件不成立,内嵌的IF不可能执行,MTMP这个变量应该还是0,最后被赋值的M/M1/M2/M3都应该=0.但是运行输出结果却是如下内容:


图片点击可在新窗口打开查看此主题相关图片如下:2222.jpg
图片点击可在新窗口打开查看

请帮助解释一下。

 

2楼
jinzhe 发表于:2013/6/25 17:22:15
既然IF都不成立了,那么后面的mtmp赋值给M1-3,不就是都不成立了
共2 条记录, 每页显示 10 条, 页签: [1]


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