以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://weistock.com/bbs/index.asp)
--  公式模型编写问题提交  (http://weistock.com/bbs/list.asp?boardid=4)
----  如下如题如下  (http://weistock.com/bbs/dispbbs.asp?boardid=4&id=80394)

--  作者:sadrick
--  发布时间:2015/7/3 9:04:00
--  如下如题如下
m5:=ma(c,5);
m10:=ma(c,10);


VARIABLE:a=0;
variable:b=1;


if  b=1  then   
begin 
  if m5>m10 then
  a:=a+1;
  else
  a:=0;
end
else
a:=0;
if a=5 then
b:=0;

AA:a;
bb:b;                                        


  1、请问这种if   then  语句   是每来一笔新数据重上到下算一次吗  ?
   2、如果每笔新的数据条件继续满足,里面的赋值部分  a:=a+1;  也要不断加1吗  ? 







--  作者:jinzhe
--  发布时间:2015/7/3 9:07:35
--  

1.是的

2.不是,换了k线之后才会再次+1


--  作者:sadrick
--  发布时间:2015/7/3 9:22:55
--  
再请教  


1、如果现在a =2    新来的一笔tick  使m5<m10   此时的a应被赋予a=0 的值,对吗 ?

2 、如过再来一笔tick  再次使m5>m10  此时的a又被赋予a=1,对吗 ?


--  作者:jinzhe
--  发布时间:2015/7/3 9:32:31
--  

1.变成0,

2.还是2

值是根据公式计算,计算是在上根k线的结果基础上计算,而不是当根k线上一笔数据的结果做计算


--  作者:sadrick
--  发布时间:2015/7/3 10:38:46
--  
还是不太理解  我再举个例子  

比如 
m5:=ma(c,5);
m10:=ma(c,10);


VARIABLE:a=0;
variable:b=1;


if b=1 then 
a:=-1;

ifm5>m10 then 
a:=1;


如某tick使m5>m10  那么a此时被赋予1  ; 如果再新的一笔tick 使m5<m10   ,那么a是否又被赋予-1 的值 即a:=-1  , 而不是1 ,  因为又重新算了一次
if b=1 then 
a:=-1;  下面的条件不满足 所以不执行





--  作者:jinzhe
--  发布时间:2015/7/3 10:43:15
--  

举个例子

variable:a=0;

if c>o then a:=a+1;

if c<o then a:=a-1;

当上根k线a的值为0,

那么当期k线a只会在0的基础上做变动。如果当前行情是c>o ,那么a是在0的基础上自加1,变成1;然后不管有多少笔数据都是c>o,那么结果仍然是1,因为值是和上个周期的值比较,而不是上一笔

 

 

 


--  作者:sadrick
--  发布时间:2015/7/3 11:00:11
--  
那就是根据老师你的例子  当上根k线a的值为0,  如果当前行情c>o 此时a取1  如果某一笔使c<o  那么a的取值应该为0-1=-1   而不是用上一笔的a取1时的值来计算1-1=0;






--  作者:jinzhe
--  发布时间:2015/7/3 11:01:01
--  
是的,变成-1