以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://222.73.7.161/bbs/index.asp)
--  公式模型编写问题提交  (http://222.73.7.161/bbs/list.asp?boardid=4)
----  技术指标编写时迭代的问题  (http://222.73.7.161/bbs/dispbbs.asp?boardid=4&id=155657)

--  作者:Asgardawn
--  发布时间:2017/7/3 17:36:46
--  技术指标编写时迭代的问题
请问在编写技术指标时,一个时间序列变量的迭代语句怎么写?比如有个变量叫EV,它的初值为C,此后它当前周期的值取决于它上一周期的值,比如EV=[REF(EV,1)*3+REF(EV,1)-10]/6。谢谢!
--  作者:wenarm
--  发布时间:2017/7/4 8:53:29
--  

VARIABLE: ev=C[1];
EV:=(EV*3+EV-10)/6;


--  作者:Asgardawn
--  发布时间:2017/7/4 9:48:45
--  
您好,报错了,显示如下:

编译错误,变量名\'EV\'重复,应该怎么办呢

多谢!

--  作者:qq代人发帖
--  发布时间:2017/7/4 9:58:47
--  
2楼的代码编译是没问题的,你是不是别的地方也有EV的定义了。你在代码里面看下。
--  作者:Asgardawn
--  发布时间:2017/7/6 14:55:48
--  
噢噢 那个代码 确实没问题了 谢谢

现在我需要深入写一个指标,就是一根1min线级别的压力线,每天一个周期。
这根压力线初值为(就是当天第一根1min线的时候值为)当天第一根1min线收盘价的1.02倍,
然后如果后续1min线走势每次上穿这根线的时候,这根线的值就额外增加0.5%,
这样一直运作到当天最后一根1min线。
然后次日第一根1min线时,这根压力线初值刷新一下,变为次日第一根1min线收盘价。以此类推。
挺简单的原理,但是代码实在写不出了,请教一下两位具体的代码怎么写,谢谢!

--  作者:Asgardawn
--  发布时间:2017/7/6 14:56:10
--  
见楼上,多谢
--  作者:FireScript
--  发布时间:2017/7/6 16:03:07
--  

VARIABLE:chuzhi=0;
aa:VALUEWHEN(TODAYBAR=1,close);
if TODAYBAR=1 then chuzhi:=aa*1.02;
if cross(c,chuzhi) then chuzhi:=chuzhi*1.005;
压力线:chuzhi;

 

测下瞧瞧。