你好,
10分钟内涨幅超过30点 且 期间从最高点回落的幅度小于15 时开多仓: if h>ref(c,10)+30 and ref(hhv(h,9),1)-ref(llv(l,9),1)>15 then buy(holding=0,1,marketr); |
这样是不行的..
比如有一组数据:
1分钟close 4分钟close 5分钟close
1000 1020 1030
按照我的要求是满足开仓条件的,但是实际上不会开仓。
因为
首先,h>ref(c,10)+30 只是当前 high 与 十分钟前的close 相比,而我需要的是 当前high与过去十分钟的每一分钟的close相比。
您在楼上的回答
ll:l; for i=1 to 10 do begin if c>ll[barpos-i]+30 then goto abc; end abc@ buy(holding=0,1,marketr);
就可以做到这一点。
|
另外,
ref(hhv(h,9),1)会等于1020(因为开仓前的一根k线就是最高价)而不是我想要的前一高点
ref(llv(l,9),1)等于1000 1020-1000=20>15
所以不会开仓。
[此贴子已经被作者于2016/4/5 17:42:44编辑过]