以文本方式查看主题 - 金字塔客服中心 - 专业程序化交易软件提供商 (http://weistock.com/bbs/index.asp) -- 公式模型编写问题提交 (http://weistock.com/bbs/list.asp?boardid=4) ---- [求助] (http://weistock.com/bbs/dispbbs.asp?boardid=4&id=86305) |
-- 作者:wxx212 -- 发布时间:2015/10/16 23:55:53 -- [求助] 版主:我想在建仓的时候加条件 ma(asset,300)<asset 『源码的画线部分』 但是加了之后却没有了进出场,等于整个指标废了! 我该怎么改??? 急,谢谢!!! 源码: VARIABLE:高=0,低=0; SSL:=EMA(CLOSE,3); MMV:=EMA(((SLOPE(CLOSE,22) * 20) +CLOSE),55); MM:=MA(MMV,1); SA:=(MM*0.985); X2:=IF(((SSL>MM)),MM,SA),LINETHICK2,COLORFF00FF; JJ:=(0+h+l)/3; A:=EMA(JJ,4); X3:=A,COLORYELLOW,LINETHICK1; 多空:=if(SSL<MM,-1,1); 生命:wma(c,180); //控制:wma(c,1000); dr:=c>=生命 and 多空=1 and ref(多空,1)=-1 ;//and holding=0;// and c>=控制 ; DRAWICON(dr,l-10,10); dc:=cross(生命,c) or cross(高,c) ; //DRAWICON(dc,h+10,12); kr:=c<=生命 and 多空=-1 and ref(多空,1)=1 ;//and holding=0;// and c<控制; //DRAWICON(kr,h,11); kc:=cross(c,生命) OR cross(c,低) ; gg:=llv(l,20); dd:=hhv(h,20); if dr and holding=0 then 高:=gg; if dc then 高:=0; if kr and holding=0 then 低:=dd; if kc then 低:=0; //pp:高,LINETHICK1; //qq:低,LINETHICK1; zhzj:=50; zj:= zhzj;//本次交易初始资金;// 万 xs:=MULTIPLIER*1.1; //每手多少吨 1.2是保证金比例12% bl:=0.1; //入场资金百分比 wpss1h:=floor((zj*10000*bl)/(c*(xs/10))); wpssh:=if(wpss1h<1,1,wpss1h); 当前资产:asset,NOAXIS,LINETHICK2,colorred,LINETHICK3; KD:=dr ; //开多条件 PD:=dc; //平多条件 KK:=kr ; //开空条件 PK:=kc; 平空:SELLSHORT(PK,0,THISCLOSE); //平空信号 //平多信号 开多:BUY(KD and HOLDING=0 and ma(asset,300)<asset ,wpssh,THISCLOSE); //开多信号 平多:SELL(PD,0,THISCLOSE); 开空:BUYSHORT(KK and HOLDING=0 and ma(asset,300)<asset ,wpssh,THISCLOSE); //开空信号 |
-- 作者:jinzhe -- 发布时间:2015/10/19 8:49:56 -- 没开仓的时候资金是不变的,开仓之后资金才会变,ma(asset,300)<asset才会有结果,你用了开仓之后才会成立的条件去进行判断开仓 [此贴子已经被作者于2015/10/19 8:50:02编辑过]
|
-- 作者:wxx212 -- 发布时间:2015/10/19 10:15:52 -- 那么应该怎么改呢? |
-- 作者:jinzhe -- 发布时间:2015/10/19 10:28:53 -- variable:bj=0;
平空:SELLSHORT(PK,0,THISCLOSE);
平多:SELL(PD,0,THISCLOSE); if kd and bj=0 and holding=0 then begin
开多:buy(1,wpssh,thisclose);
bj:=1;
end
if kk and bj=0 and holding=0 then begin
开空:buyshort(1,wpssh,thisclose);
bj:=1;
end 开多1:BUY(bj=1 and KD and HOLDING=0 and ma(asset,300)<asset ,wpssh,THISCLOSE);
开空1:BUYSHORT(bj=1 and KK and HOLDING=0 and ma(asset,300)<asset ,wpssh,THISCLOSE);
|