Rss & SiteMap

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

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

标题:[求助]哪些函数是最后一个周期中才会生效

1楼
lijiecong 发表于:2012/12/11 11:43:41

这边举例子是 tbuy和debugout.  应该交易相关的函数都是最后一个周期生效吧? 

前面的运行结果只产生虚拟信号和持仓方便接下类能正确显示仓位。


10、对于最后一个周期才起作用的函数,如果使用了全局变量进行控制,千万记得加上islastbar控制条件

variable:a=10;

debugout('a1=%.0f',a);

if a=10 then begin
debugout('a2=%.0f',a);
tbuy(1,1,mkt);
a:=6;
debugout('a3=%.0f',a);
end;

debugout('a4=%.0f',a);


上述公式将无法正常工作,因为variable声明的变量是在整个计算周期内的全局变量,对于tbuy和debugout函数,他们都是在公式的最后的一个周期才执行的函数,所以将导致最后一个周期到来时a实际已经等于6而不会去正确执行开仓语句。

解决办法是 if a=10 and islastbar then begin 这样加上最后周期判断,或者去掉 variable 变量声明,让a变为一个周期之内的变量

2楼
王锋 发表于:2012/12/11 11:46:25

一般的后台程序化交易,PLAYSOUND,SENDMAIL,DEBUGFILE等这些函数都是最后一个周期才有效的,

做为初学者不必去刻意背诵这些函数,使用时多注意看看函数的使用说明

3楼
lijiecong 发表于:2012/12/11 18:26:06
老大,函数说明里面哪里有了?

得到当前帐户持可用仓量,多仓返回正数空仓返回负
用法:THOLDING
该函数返回常数
在图表交易的ENTERLONG或者BUY等的开平仓条件中使用该后台的常数函数时应该慎重,使用不当会导致严重的漏单事故。
所属函数组:后台程式化交易(专业版)
共3 条记录, 每页显示 10 条, 页签: [1]


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