以文本方式查看主题 - 金字塔客服中心 - 专业程序化交易软件提供商 (http://weistock.com/bbs/index.asp) -- 公式模型编写问题提交 (http://weistock.com/bbs/list.asp?boardid=4) ---- 海龟 (http://weistock.com/bbs/dispbbs.asp?boardid=4&id=7361) |
-- 作者:sue -- 发布时间:2011/7/28 16:06:04 -- 海龟 金字塔自带的海龟无空头,我在论坛上搜索 http://www.weistock.com/bbs/dispbbs.asp?BoardID=4&ID=246 这个帖子里的模型我复制过来后,可是加载后没有信号出现,这是为什么? |
-- 作者:fly -- 发布时间:2011/7/28 16:23:38 -- 把里面的下单指令里的STOP改为MARKET 如:BUY(1,HOW,STOP,BUYHHV);------改为-------BUY(1,HOW,MARKET); |
-- 作者:sue -- 发布时间:2011/7/28 16:31:52 -- 还是不行啊~~ |
-- 作者:fly -- 发布时间:2011/7/28 16:36:55 -- 用的四楼的,只改了里面的"STOP改为MARKET".
在IF连续日线上,看的,运行良好 |
-- 作者:sue -- 发布时间:2011/7/28 16:50:29 -- input:trn(20,5,30),hn(20,5,30),lown(10,5,20); VARIABLE:dayCount=1,PositionCount=1,SellSign=0,dK=0;//加多空标志,1:多,-1:空 0:空仓 VARIABLE:EntAndExitSign=1,EntPoint=0,ExitPoint=0; VARIABLE:N=0; N:=MA(TR,trn); BUYHHV:=HHV(H,hn); SELLLLV:=LLV(L,lown); sellshortllv:=llv(l,hn); buyshorthhv:=hhv(h,lown); IF BARPOS>=hn THEN BEGIN IF BARPOS=hn THEN IF DayCount=hn/2 OR BARPOS=hn THEN BEGIN{hn/2天调整N值} N:=((hn-1)*N+TR)/hn;{计算N值} DayCount:=2; END DayCount:=DayCount+1; EntPoint:=ENTERBARS+1; IF EntPoint=EntAndExitSign THEN BEGIN{说明STOP指令买进头寸成功} PositionCount:=PositionCount+1;{头寸计数} SellSign:=True;{可以平仓信号,如果达到指定的价格} END IF PositionCount=1 THEN BEGIN{第一头寸} HOW:=CASH(0)*0.01/N;{波动性百分比决定头寸规模} if high=buyhhv then BEGIN dk:=1; 多开1:BUY(1,HOW,market);{在20日新高STOP指令买进} END; if low=sellshortllv then begin dk:=-1; 空开1:buyshort(1,HOW,market);{在20日新低STOP指令空开} end; END IF PositionCount=2 THEN BEGIN{如到第二头寸} HOW:=CASH(0)*0.01/N;{波动性百分比决定头寸规模} if dk=1 then 多开2:BUY(1,HOW,market);{在上头寸(即第一头寸)+0.5个N以STOP指令买进} if dk=-1 then 空开2:buyshort(1,HOW,market); END IF PositionCount=3 THEN BEGIN{如到第三头寸} HOW:=CASH(0)*0.01/N; if dk=1 then 多开3:BUY(1,HOW,market);{在上头寸(即第二头寸)+0.5个N以STOP指令买进} if dk=-1 then 空开3:buyshort(1,HOW,market); END IF PositionCount=4 THEN BEGIN HOW:=CASH(0)*0.01/N; if dk=1 then 多开4:BUY(1,HOW,market); if dk=-1 then 空开4:buyshort(1,HOW,market); END IF SellSign=True THEN BEGIN ExitPoint:=EXITBARS+1; if dk=1 then begin IF ExitPoint=EntAndExitSign THEN BEGIN {说明卖出成功} PositionCount:=1;{头寸计算复原} SellSign:=False; dk:=0; END IF ENTERPRICE-2*N then SELL(1,100%,market);{退出离盈利头寸} ELSE SELL(1,100%,market);{退出亏损头寸} end; if dk=-1 then begin IF ExitPoint=EntAndExitSign THEN BEGIN PositionCount:=1; SellSign:=False; dk:=0; END IF ENTERPRICE+2*N then sellSHORT(1,100%,market); ELSE sellSHORT(1,100%,market); END; END END; 是这样改吧。 [此贴子已经被作者于2011-7-28 16:51:24编辑过]
|
-- 作者:sue -- 发布时间:2011/7/28 16:51:46 -- 为什么 排版会变成这样啊。 |
-- 作者:jinzhe -- 发布时间:2011/7/28 16:56:34 -- 用IE以外的浏览器就会这样了 |
-- 作者:sue -- 发布时间:2011/7/29 9:39:52 -- 这样还是没有信号~~~
input:trn(20,5,30),hn(20,5,30),lown(10,5,20); VARIABLE:dayCount=1,PositionCount=1,SellSign=0,dK=0;//加多空标志,1:多,-1:空 0:空仓 N:=MA(TR,trn); sellshortllv:=llv(l,hn); IF BARPOS>=hn THEN IF PositionCount=2 THEN BEGIN{如到第二头寸} IF PositionCount=3 THEN BEGIN{如到第三头寸} IF PositionCount=4 THEN BEGIN IF SellSign=True THEN
|
-- 作者:fly -- 发布时间:2011/7/29 9:54:05 -- 在IF日线上,运行良好 input:trn(20,5,30),hn(20,5,30),lown(10,5,20); VARIABLE:dayCount=1,PositionCount=1,SellSign=0,dK=0;//加多空标志,1:多,-1:空 0:空仓 N:=MA(TR,trn); SELLSHORTLLV:=llv(l,hn); IF BARPOS>=hn THEN |
-- 作者:sue -- 发布时间:2011/7/29 10:12:27 -- 谢谢,我知道错在哪里了。 |