以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (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=172965)

--  作者:jzt666
--  发布时间:2019/11/8 9:15:45
--  平仓语句求助
持多单(HOLDING>0),最大盈利大于50跳,如果N周期不创新高,平仓
--  作者:FireScript
--  发布时间:2019/11/8 9:42:47
--  
 maxprofit:(HHV(h,ENTERBARS+2)-AvGENTERPRICE)>=50*MINDIFF;
if NEWHBARS(h,1)>N and holding>0 and MAXPROFIT then sell(1,holding,market);
[此贴子已经被作者于2019/11/8 9:43:00编辑过]

--  作者:jzt666
--  发布时间:2019/11/8 10:48:58
--  
老师我一般写成HHV(H,ENTERBARS+1),你写成(ENTERBARS+2),有区别吗?
--  作者:FireScript
--  发布时间:2019/11/8 11:18:39
--  
 这个其实主要是因为ENTERBARS 函数的原因。
是这样的 如果你当前K 开仓了 然后你使用ENTERBARS函数的位置又是在开仓语句下面
那么开仓K这个ENTERBARS是-1. 这样的话 就有个问题了。有的人统计这个的时候是想把开仓K包含在内的,有的人是不想要包含在内的。
如果要统计开仓K 那就ENTERBARS+2。  这样hhv就能正常统计了。 你这个ENTERBARS+1 我感觉是最容易出问题的,因为ENTERBARS是从-1 开始你又用了hhv。而hhv(h,0)是表示统计全部K的最高价。在开仓K上直接回统计一个错误结果。

此外根据之类不同ENTERBARS返回值起点不一样,我建议你把它输出在图表上看下比较好。


--  作者:jzt666
--  发布时间:2019/11/8 12:21:38
--  
谢谢老师的精准回复,我输出一下看看效果