我自己的公式在最下边 我引用了PB指标里的HH线 如果价格突破FB买入 如果价格线跌破FB就选择FB作为触发条件卖出,如果先跌破HH就选择HH作为触发卖出条件 可是我写了最下边的公式,不能按照我的意思进行卖出交易,卖出的指示很混乱 能帮我写下这个吗,谢谢了 PB的公式如下 { runmode:0; input:V1(1,1,100,1); input:f1(0.4); input:f2(0.07); input:f3(0.18); input:m(0.9); input:x(3,1,10,1); variable:up=0; variable:bsetup=0; variable:senter=0; variable:benter=0; variable:bbreak=0; variable:sbreak=0; variable:ltoday=0; variable:h0=999999; variable:sn=0; variable:div=0; variable:rf=false; i:=m*(callstock(stklabel,vtopen,6,0)/100); if barpos=1 then begin sn:=0; div:=max(x,1);//xdiv end hh:ref(h0,1),noaxis; cc:=ref(close,1); ll:=ref(ltoday,1); if date>ref(date,1) then begin sn:=sn+1; up:=hh+f1*(cc-ll); senter:=((1+f2)/2)*(hh+cc)-f2*ll; benter:=((1+f2)/2)*(ll+cc)-f2*hh; bsetup:=ll-f1*(hh-cc); bbreak:=up+f3*(up-bsetup); sbreak:=bsetup-f3*(up-bsetup); h0:=high; ltoday:=low; rf:=hh-cc>=0.2{rangemin}; end if high>h0 then h0:=high; if low<ltoday then ltoday:=low; if time>=opentime(1) and time<closetime(0)-500 and sn>=2 and rf then begin if h0>=up and holding>=0 then begin if low<=senter+(h0-up)/div then begin sell(1,v1,thisclose); buyshort(1,v1,thisclose); end end if ltoday<=bsetup and holding<=0 then begin if high>=benter-(bsetup-ltoday)/div then begin if high>=benter-(bsetup-ltoday)/div then begin sellshort(1,v1,thisclose); buy(1,v1,thisclose); end end end if holding<0 then begin if high-enterprice>=i then sellshort(1,v1,thisclose); end if holding>0 then begin if enterprice-low>=i then sell(1,v1,thisclose); end if holding=0 then begin if high>=bbreak then buy(1,v1); end if holding=0 then begin if low<=sbreak then buyshort(1,v1); end end if time>=closetime(0)-500 then begin if holding<0 then sellshort(1,v1); if holding>0 then sell(1,v1); end 资产:asset,noaxis,coloryellow,linethick2; } 自己的公式如下 ZH:=callstock(stklabel,vthigh,6,-1); ZL:=callstock(stklabel,vtlow,6,-1); FS:=(1.07/2)*(ZH+ZL)-0.07*ZL; FB:(1.07/2)*(ZH+ZL)-0.07*ZH; HH:"pb.hh"; sellc:=if(FB>HH,FB,HH); ENTERLONG:CROSS(C,FB),tfilter; EXITLONG:CROSS(sellc,C),tfilter; |
这个是需要写成2个公式,一个引用另外一个,会使用引用吗?