以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://weistock.com/bbs/index.asp)
--  公式模型编写问题提交  (http://weistock.com/bbs/list.asp?boardid=4)
----  老师,帮我翻译一个文华的码  (http://weistock.com/bbs/dispbbs.asp?boardid=4&id=172925)

--  作者:刘中
--  发布时间:2019/11/7 10:10:09
--  老师,帮我翻译一个文华的码
#IMPORT[DAY,1,AABB] AS VAR1
MA220: VAR1.MA20,COLORLIGHTGREEN,LINETHICK3;
MA440:= VAR1.MA40;
MA40:MA(C,40);
OOO:=VAR1.OO;//AND (OOO-CCC)/CCC<0.04
CCC:=VAR1.CC;
ODD:=VAR1.OD;
EEE:=BARSSK>=101;
FFF:=BARSBK>=101;
SSS:=(OOO-CCC)/CCC<0.04  AND ODD;
SSB:=(CCC-OOO)/OOO<0.04  AND ODD;
DD:=REF(CCC,1)>MA440  OR REF(CCC,1)>MA220  OR C>MA440  OR C>MA220;
EE:=ABS(O-C)/C<0.0040   OR  ABS(C-MA40)/C<0.002;
CROSS(C,MA40)  AND  SSB && EE  AND  DD,BPK;//AND  SSB&& ABS(O-C)/C<0.025
CROSS(REF(C,1),MA40)  AND  ABS(C-MA40)/C<0.002 AND DD ,BPK;
CROSS(REF(C,2),MA40)  AND  ABS(C-MA40)/C<0.002 AND DD ,BPK;
//C<BKPRICE*0.991,SP;//焦炭
HH:=REF(H,BARSSK);
LL:=REF(L,BARSBK);
C<LL,SP;
C>HH,BP;
H>1.025*BKPRICE1,SP;
SSA:HV(C,30);
SSS1:LV(C,30);
CLOSEKLINE(0,17);
SETALLSIGPRICETYPE(  LIMIT_ORDER   );
SS:=SETTLE;
C<MA40 AND  C<SS  AND  FFF,SP;
L<BKPRICE1*0.991,SP;
BKHIGH>1.01*BKPRICE1  AND  L<BKPRICE1,SP;//C<MA40  AND  C<BKPRICE1,SP;
C<MA40  AND  FFF ,SP;
//STOP(1,C<BKPRICE1*0.99);
//SETDEALPERCENT(100);
AUTOFILTER;

--  作者:刘中
--  发布时间:2019/11/7 10:13:31
--  
这是跨周期的码
MA15:=MA(C,15);
MA20:MA(C,20);
MA40:MA(C,40);
MA10:MA(C,10);
MM:=REF(EVERY(C>MA10,9),1);
MS:REF(EVERY(C<MA10,9),1);
MMB:=C<=LV(C,10);
MMS:=C>=HV(C,10);
XXX:=REF(C,4);
OO:=O;
CC:=C;
OD:=ABS(REF(C,1)-REF(O,1))/REF(O,1)<0.05;

--  作者:FireScript
--  发布时间:2019/11/7 14:40:36
--  
 
MA220:STKINDI(\'\',\'AABB.MA20\',0,6,0);
MA440:=STKINDI(\'\',\'AABB.MA40\',0,6,0);
MA40:MA(C,40);
OOO:= STKINDI(\'\',\'AABB.OO\',0,6,0);
CCC:= STKINDI(\'\',\'AABB.CC\',0,6,0);
ODD:= STKINDI(\'\',\'AABB.OD\',0,6,0);
EEE:=ENTERBARS+2>=101;
FFF:=ENTERBARS+2>=101;

SSS:=(OOO-CCC)/CCC<0.04  AND ODD;
SSB:=(CCC-OOO)/OOO<0.04  AND ODD;
DD:=REF(CCC,1)>MA440  OR REF(CCC,1)>MA220  OR C>MA440  OR C>MA220;
EE:=ABS(O-C)/C<0.0040   OR  ABS(C-MA40)/C<0.002;


if CROSS(C,MA40)  AND  SSB and  EE  AND  DD  then //平空反手开多
begin
sellshort(holding<0,holding,market);
buy(holding=0,1,market);    
end

if CROSS(REF(C,1),MA40) or CROSS(REF(C,2),MA40)  AND  ABS(C-MA40)/C<0.002 AND DD then  //平空反手开多
begin
sellshort(holding<0,holding,market);
buy(holding=0,1,market);    
end

HH:=REF(H,ENTERPRICE);
LL:=REF(L,ENTERPRICE);
sell(C<LL and holding>0,holding,market);
sellshort(C>HH and holding<0,holding,market);
sell(H>1.025*ENTERPRICE,holding,market);

SSA:HHV(C,30);
SSS1:LLV(C,30);
//CLOSEKLINE(0,17);  这个是无法实现的 金字塔不能实现信号复核

n1:=todaybar;
dm:=4-INTPART(LOG(C));
结算价:ROUNDS(IF(sum(vol,n1)=0,C,sum(C*vol,n1)/sum(vol,n1)),2+dm),colorred;//这个只能在1分钟周期上才能正常计算,其他周期请使用跨周期函数调用下
SS:=结算价;

sell(C<MA40 AND  C<SS  AND  FFF,holding,market);
sell(L<ENTERPRICE*0.991,holding,market);
sell(hhv(h,ENTERBARS+2)>1.01*ENTERPRICE  AND  L<ENTERPRICE,holding,market);//C<MA40  AND  C<BKPRICE1,SP;
sell(C<MA40  AND  FFF,holding,market);

1.被调用的指标,请新建一个指标AABB 把2楼代码直接放进去就行了,这个部分不需要修改的。
2.部分地方无法实现或者需要注意的事项  简单在上面标注了下。