如鲠在喉啊,这个问题困扰几天了,始终无法解决,大家帮忙一下!

Vars Series<Numeric> aa; Series<Numeric> bb; Series<Numeric> cc; Events OnBar(ArrayRef<Integer> indexs) { If(CurrentBar>=1000) { aa = H; } 取上一次H>=aa到当前到周期数,看下图 } }

@qijian 我只是一游客,你说的逻辑我还不是完全理解,我把我能理解的部分写了一段代码 算是给你提供一个思路,希望对你有帮助 OnBar(ArrayRef<Integer> indexs) { If(CurrentBar == 0)aa = H; IF(CurrentBar>0 and CurrentBar<=998 and H>aa) { aa = h; aa_Bar = CurrentBar;//记录当前BAR的根数; } If(CurrentBar == 998)bb = H; IF(CurrentBar>998 and H>bb) { bb = h; bb_Bar = CurrentBar;//记录当前BAR的根数; } cc = bb_Bar - aa_Bar; Commentary("CurrentBar "+Text(CurrentBar)); Commentary("CC "+Text(CC)); }

回复:你好,非常感谢你的耐心解答!由衷的感谢! 作为一名游客都可以做到这样,我觉得TB应该好好学习一下文华的服务了。 欣慰的是,我的问题已经解决了,自己换了另外一个思路,统计总次数,然后取最近一次! 哎!应景了那句话,打铁还要自身硬啊!

哎,我都快吐了,我相信我的逻辑已经表达的非常清楚了吧 If(CurrentBar>=1000) { aa = H; } //取1-999根bar之间最近一次H大于aa到当前的周期数???????????? 我相信对于你们来说,就1-2分钟的事情,为什么要搞的这么的复杂,如果你们想真心帮我的话就直接写出来,如果你们写不出来就不要再回帖,让我死心,真的气死我了,为什么这么一点小问题办事效率这么的差

可以从当前bar往历史回溯访问H[i],看看哪一个根满足,就是有点重,每次都要往前回溯,可以控制最大的回溯。

回复:主要是回溯不到有效数值,因为在H[1]上面的aa数值为0,2者不能做比对,问题就是出在这里

回复:If(CurrentBar>=1000)//是不是前1000没有赋值的原因吗? { aa = H; }

回复:赋值不了啊,假设一段行情,先涨后跌,假如从800点跌倒500点,然后500点涨到600点,然后我取600点那个bar点最高价(假设这个bar是第1000根),那么这个数据只要1000根之后才有,现在问题是求500点之前最高价大于等于600到当前到周期数

回复:从当前BAR往回回溯,您只是拿回溯的H[i]来和当前BAR的AA比,AA不可能没有值

你这个代码跟你这个图好像没什么关系吧

回复:那我的原因出在哪儿? 冒犯的问下,你是游客还是TB的官方人员? 如果你是游客,是没有义务帮我解决任何问题。 如果你是TB工作人员,如果是这种服务方式,那么我相信90%的人都会不爽。 如果是这种服务方式,我不知道TB成立社区的意义是什么? 忍你很久了,不吐不快,上次说让投稿,这次寥寥几句,你就这么的不耐烦?