以文本方式查看主题 - 金字塔客服中心 - 专业程序化交易软件提供商 (http://222.73.7.161/bbs/index.asp) -- 公式模型编写问题提交 (http://222.73.7.161/bbs/list.asp?boardid=4) ---- 08.多头海龟交易系统 退出判断的问题,bug? (http://222.73.7.161/bbs/dispbbs.asp?boardid=4&id=167636) |
-- 作者:xlxl -- 发布时间:2019/1/11 9:42:06 -- 08.多头海龟交易系统 退出判断的问题,bug? 研读08.多头海龟系统 发现退出止损语句: 以下内容为程序代码: 1 IF ENTERPRICE-2*N THEN SELL(L<=SELLLLV,100%,MARKET);{退出离盈利头寸} 2 ELSE 3 SELL(L<=ENTERPRICE-2*N,100%,MARKET);{退出亏损头寸} 在http://weistock.com/bbs/dispbbs.asp?BoardID=4&ID=62530&skin=0 中也有提问 这个 ENTERPRICE-2*N 应该是止损价格, 这个判断应该是现价与它比较,close 或者low 查看07.双向海龟交易系统,的离场语句: 以下内容为程序代码: 1 //建立多头止损条件 2 LONGX2 := (LOW<MYENTRYPRICE-2*N) ; 3 4 IF LONGX2 AND POSITION=1 AND BUYORDERTHISBAR=0 THEN BEGIN 5 MYEXITPRICE := IF(OPEN<MYENTRYPRICE-2*N ,OPEN ,MYENTRYPRICE-2*N ) ; 6 MYEXITPRICE := FLOOR(MYEXITPRICE/MINDIFF)*MINDIFF ; 7 SELL( _DEBUG ,0,LIMITR,MYEXITPRICE); 所以这个08 里的判断语句是不是有另外的解读还是一个错误?
|
-- 作者:FireScript -- 发布时间:2019/1/11 9:52:57 -- 那个语句其实相当于 if IF ENTERPRICE-2*N>0 THEN SELL(L<=SELLLLV,100%,MARKET); 而这个N的定义你追溯到前面代码就能找到它的定义,这个N不是代表多少个止损点位的参数。
|
-- 作者:xlxl -- 发布时间:2019/1/11 10:01:29 -- N:=(19*N+TR)/20;{计算N值} 用法:
TR,求真实波幅。 |
-- 作者:xlxl -- 发布时间:2019/1/11 10:07:58 -- 我的理解N就是20日平均真实波幅? 不知道是不是有别的解释? |
-- 作者:FireScript -- 发布时间:2019/1/11 10:24:23 -- 是的 代码里面有这个注释的。 |
-- 作者:xlxl -- 发布时间:2019/1/11 10:38:45 -- M:=MA(TR,20); //真实波幅的20周期均值
IF BARPOS=21 THEN //如果从上市到现在的交易日天数等于21,那么
如果 ENTERPRICE-2*N>0 止盈 else 止损,
这里止损不可能达到的,因为ENTERPRICE-2*N 正常情况应该永远大于0的 |
-- 作者:FireScript -- 发布时间:2019/1/11 11:03:48 -- 那个平仓语句的真正条件应该是 L<=SELLLLV 但是为什么加一个ENTERPRICE-2*N的判断,这个我也无法理解了,注释上也没细说。这些代码时间有点久,细节上可能存在一些问题了。所以这些代码仅供参考吧。
|