我要得到过去一年或两年的最低收盘价,然后逐K线跟最低收盘价比较,如果低于最低收盘价就buyshort,请问代码怎么写?
if c>llv(c,0) then buyshort();
1 低于最低收盘价应该是 if c<llv(c,0) then buyshort(); 不是> 吧?
2 我是要两年内,不是要历史最低价,所以应该是 if c<llv(c,500) then buyshort();
3 逐K线模式 if c<llv(c,500) 就是指每根计算到的K线的close<该根K线前500根K线的close的意思吧?所以这个前500根K线的最低close是变动的,对吗?
4 我要的是某个特定时间,如2011年1月1日-2012年12月31日间的最低close,要的是一个固定数,因为只有一个,这要怎么写呢?
1.是小于。你看下你的需求中写的。
3.是的,这是个序列变量。在图表输出看一下,就显而易见了
4.使用的是最高价处理的,你可以修改成收盘价,时间按自己要求修改即可
n1:BARSSINCE(DATE>=1150921);
n2:BARSSINCE(DATE>=1151030);
a:n1-n2;
aa:HHV(H,N1+1);
HH:REF(AA,N2);
[此贴子已经被作者于2015/12/4 23:07:31编辑过]
1 需求写的是低于最低收盘价,yukizzc回复我写的是>,他似乎没有您仔细。4 下面两句,我的理解正确吗?
aa:HHV(H,N1+1); 这是从N1+1,每条K线就加1,一直加到现在(最后一根K线)?所以这不能用在序列计算模式?
HH:REF(AA,N2); 这是取,到N2周期为止的AA值(到N2为止的high)?
5 前500个日K线的最低点是一直变动的,所以这个算法也不能用序列计算模式?
if c<llv(c,500) then ........;
序列模式每次刷新只刷最新一根k,逐k是每次从第一根k开始刷新,你如果用图表交易必须用逐k,除非您是喜欢研究机制的否则没必要钻牛角尖。
aa:HHV(H,N1+1); //这个就是前N1+1个k线里最大值,可以用序列的,您自己输出看下呢
图表输出就直接把模型加载到图表就可以了
怎么把aa值输出到我能看见的地方呢?在哪里能看见?
把模型加载到图表上,你看不到aa的输出吗??那把N1改成一个数字比如5看下,是不是N1没取到值