以文本方式查看主题 - 金字塔客服中心 - 专业程序化交易软件提供商 (http://www.weistock.com/bbs/index.asp) -- 公式模型编写问题提交 (http://www.weistock.com/bbs/list.asp?boardid=4) ---- 全局变量不能和另一个变量做运算吗? (http://www.weistock.com/bbs/dispbbs.asp?boardid=4&id=75105) |
-- 作者:man110 -- 发布时间:2015/1/28 15:10:55 -- 全局变量不能和另一个变量做运算吗? input:n(30,1,360,5); VARIABLE:m=1; b:=CALLSTOCKEX(\'000903\',vtclose ,6 ,0 ,4000); s:=CALLSTOCKEX(\'399005\',vtclose ,6 ,0 ,4000); bb:=(b-ref(b,1))/ref(b,1),NOAXIS; ss:=(s-ref(s,1))/ref(s,1),NOAXIS; bm:=(b-ref(b,n))/ref(b,n); sm:=(s-ref(s,n))/ref(s,n); x:=if(bm>sm,ref(bb,1),ref(ss,1)); m:=m*(1+x); z:m,NOAXIS; 为什么屏幕上没有显示结果?序列模式下正常和普通变量没区别,可一到逐个k线的模式下就什么也显示不出来了。
|
-- 作者:jinzhe -- 发布时间:2015/1/28 15:15:20 -- 你的公式的数据是ref 30 ,而逐k线又需要在每根k线上计算 所以你必须要让每根k线都有数据,那么必然是要在30根k线之后进行计算
if barpos>30 then m:=m*(1+x);
倒数第二句改成这样就行 |