以文本方式查看主题 - 金字塔客服中心 - 专业程序化交易软件提供商 (http://weistock.com/bbs/index.asp) -- 公式模型编写问题提交 (http://weistock.com/bbs/list.asp?boardid=4) ---- [求助]关于variable的问题 (http://weistock.com/bbs/dispbbs.asp?boardid=4&id=3549) |
-- 作者:z7c9 -- 发布时间:2010/10/28 22:35:52 -- [求助]关于variable的问题 对于类似这样的variable变量: variable:stopprice=0;
1.如果要variable做全局变量,就必须运行于逐周期模式,对么?
2.如果在后台策略中使用variable做全局变量,比如有一个止损价变量stopprice。开仓后立刻计算stopprice,即stopprice已有值(比如26000)。而此时停止了预警,那么下次启动预警时,这个variable的值是重新初始化成0了还是保留上次的26000? |
-- 作者:董小球 -- 发布时间:2010/10/29 9:31:14 -- 1、都可以; 2、会重新计算;如果想用不重新计算的,要使用 工具》》数据》》全局变量里面设置的变量,然后用 “EXTGBDATASET”和“ EXTGBDATA ”函数的调用 你可以去下精华贴里我发的 问题大全里 搜全局变量来学习下 |
-- 作者:z7c9 -- 发布时间:2010/10/29 11:27:06 -- 以下是引用董小球在2010-10-29 9:31:14的发言:
1、都可以; 2、会重新计算;如果想用不重新计算的,要使用 工具》》数据》》全局变量里面设置的变量,然后用 “EXTGBDATASET”和“ EXTGBDATA ”函数的调用 你可以去下精华贴里我发的 问题大全里 搜全局变量来学习下 我测试的结果是,variable在后台逐周期根本不起作用,记不住价格,怎么回事。 |
-- 作者:admin -- 发布时间:2010/10/29 12:51:13 -- 如果你希望是软件退出后也能记住价格,请使用EXTGBDATASET variable的作用是在第一个周期初始化,在后面的运行周期保持不变。 建议楼主认真学会金字塔图表调试技巧,会自己解决很多问题 |
-- 作者:z7c9 -- 发布时间:2010/10/29 13:00:51 -- 以下是引用admin在2010-10-29 12:51:13的发言:
如果你希望是软件退出后也能记住价格,请使用EXTGBDATASET variable的作用是在第一个周期初始化,在后面的运行周期保持不变。 建议楼主认真学会金字塔图表调试技巧,会自己解决很多问题 variable保持不变?比如 vairalbe:n=0;
n:=1; if holding>0 then n:=2
假如第一个周期上holding=0; 第二个周期上holding>0; 那n还等于1?
在序列模式n应该等于1,而逐周期模式应该等于2吧? |
-- 作者:admin -- 发布时间:2010/10/29 13:03:17 -- holding只能在逐周期模式执行的函数
vairalbe:n=0;
vairalbe:n=1; 这样改才对
if holding>0 then n:=2 [此贴子已经被作者于2010-10-29 13:03:38编辑过]
|
-- 作者:z7c9 -- 发布时间:2010/10/29 13:26:36 -- 这段代码在序列模式下可以输出log.txt,而在逐周期模式下必须注释掉n:=1才能输出log.txt文件。为什么? variable:n=0;
[此贴子已经被作者于2010-10-29 13:35:25编辑过]
|
-- 作者:admin -- 发布时间:2010/10/29 15:10:53 -- 工作原理如下: 逐周期模式下,由于debugfile在最后一个周期才有效的函数,故最后一个周期的N=1,导致最后一个周期debugfile没有被执行 序列模式下,variable是没有作用的,故与普通序列变量一样,序列模式下金字塔是执行一个序列,故会在第一次解析公式时就去执行debugfile,因为执行到此是,N已经被解析成从第一个BAR到最后一个BAR的序列。
|
-- 作者:z7c9 -- 发布时间:2010/10/29 15:18:35 -- 以下是引用admin在2010-10-29 15:10:53的发言:
工作原理如下: 逐周期模式下,由于debugfile在最后一个周期才有效的函数,故最后一个周期的N=1,导致最后一个周期debugfile没有被执行 序列模式下,variable是没有作用的,故与普通序列变量一样,序列模式下金字塔是执行一个序列,故会在第一次解析公式时就去执行debugfile,因为执行到此是,N已经被解析成从第一个BAR到最后一个BAR的序列。
序列是什么含义?是数组么? |
-- 作者:fly -- 发布时间:2010/10/29 15:49:40 -- 模式说明 http://www.weistock.com/RunMode.htm
|