以文本方式查看主题

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

--  作者:yin8jun
--  发布时间:2012/2/13 14:11:49
--  序列模型下begin,end的用法
begin,end中定义的变量是内部变量,出了begin end 语句这些变量就失效,那么结果输出时仍需要全局变量。但是序列模型下的全局变量用variable定义会变成常数,该怎么办呢?
--  作者:jinzhe
--  发布时间:2012/2/13 14:13:15
--  
请举个具体的例子来说下~
--  作者:yin8jun
--  发布时间:2012/2/13 14:20:34
--  

if cc1>0 and l<lo then begin
 pc:=min(max(holding,0),cang1);
 kc:=cang1-pc;
 if pc>0 then 平多=1;
 if kc>0 then 开空=1;
 cc1:=0;
end

 

比如上面这段代码,是否能用在序列模式下。用到序列模式下,怎么让cc1,开多,开空输出呢?


--  作者:jinzhe
--  发布时间:2012/2/13 14:29:20
--  
holding只能用在逐k线
--  作者:yin8jun
--  发布时间:2012/2/13 14:42:52
--  

把holding去掉了

if cc1>0 and l<lo then begin
 pc:=cang1;
 kc:=cang1-pc;
 if pc>0 then 平多=1;
 if kc>0 then 开空=1;
 cc1:=0;
end

 

问题是begin end 语句在序列模式下该怎样输出。


--  作者:fly
--  发布时间:2012/2/13 14:46:14
--  

variable定义的全局变量,需用在逐K线模式下的

 

序列模式和逐K线的详细区别,请参考该帖http://www.weistock.com/runmode.htm

 


--  作者:阿火
--  发布时间:2012/2/13 14:51:35
--  
以下是引用yin8jun在2012-2-13 14:20:34的发言:

if cc1>0 and l<lo then begin
 pc:=min(max(holding,0),cang1);
 kc:=cang1-pc;
 if pc>0 then 平多=1;
 if kc>0 then 开空=1;
 cc1:=0;
end

 

比如上面这段代码,是否能用在序列模式下。用到序列模式下,怎么让cc1,开多,开空输出呢?

 

序列模式下可以用 for 循环实现

但这又相当于是 逐K线模式了

所以,没有必要,全部用逐K线模式就好


--  作者:yin8jun
--  发布时间:2012/2/13 16:42:16
--  

谢谢fly and leevolve