以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://222.73.7.161/bbs/index.asp)
--  公式模型编写问题提交  (http://222.73.7.161/bbs/list.asp?boardid=4)
----  文华转金字塔  (http://222.73.7.161/bbs/dispbbs.asp?boardid=4&id=169000)

--  作者:qq260882811
--  发布时间:2019/3/26 16:41:02
--  文华转金字塔
HH:=HHVBARS(H,BARSBK+1);//取买开以来最高价到当前的距离
LL:=LLVBARS(L,BARSSK+1);

MA1:MA(C,60);
AA:=IF(BARSSP=1,REF(BKHIGH-MA1,HH),0);//买开最高价距离均线的距离
AA2:=IF(BARSBP=1,REF(MA1-SKLOW,LL),0);
NA:SUM(AA,SUMBARS(BARSSP=1,3))/3 +MA1;//统计最近3次买开最高价与均线的距离
NA2:MA1-SUM(AA2,SUMBARS(BARSBP=1,3))/3;

SP1:=BKHIGH>REF(MIN(MA1+(C*0.035) , NA) ,HH);//买开最高价大于是否大于上次买开最高价位置的NA或MA1+c*0.05
BP1:=SKLOW<REF(MAX(MA1-(C*0.035)  , NA2) ,LL);


// 启动止损

PK2:REF(IF(ISLASTBP,REF(BP1,BARSBP),0),BARSSK)&&C>=SKPRICE*(1+30*0.001);//上次平空位置是否满足BP1,满足止损为3%
PD2:REF(IF(ISLASTSP,REF(SP1,BARSSP),0),BARSBK)&&C<=BKPRICE*(1-30*0.001);

PD5:(BKHIGH>REF(MIN(MA1+(C*0.05) , NA) ,HH) ) ) && D>K;//买开最高价大于MA1+C*0.05或者NA 并且D>K 平仓
PK5:(SKLOW<REF(MAX(MA1-(C*0.05)  , NA2) ,LL) ) && K>D;


--  作者:FireScript
--  发布时间:2019/3/26 17:05:27
--  
 处理中,请注意本帖的回复。
--  作者:qq260882811
--  发布时间:2019/3/27 16:55:12
--  
老师,改好了吗? 
--  作者:FireScript
--  发布时间:2019/3/28 9:34:39
--  
 HH:=HHVBARS(H,ENTERBARS+1);//取买开以来最高价到当前的距离
LL:=LLVBARS(L,ENTERBARS+1);

MA1:MA(C,60);
BKHIGH:=hhv(h,ENTERBARS+1);
SKLOW:=llv(l,ENTERBARS+1+1);
AA:=IF(EXITBARS=0,REF(BKHIGH-MA1,HH),0);//买开最高价距离均线的距离
AA2:=IF(EXITBARS=0,REF(MA1-SKLOW,LL),0);
NA:SUM(AA,SUMBARS(EXITBARS=0,3))/3 +MA1;//统计最近3次买开最高价与均线的距离
NA2:MA1-SUM(AA2,SUMBARS(EXITBARS=0,3))/3;

SP1:=BKHIGH>REF(MIN(MA1+(C*0.035),NA),HH);//买开最高价大于是否大于上次买开最高价位置的NA或MA1+c*0.05
BP1:=SKLOW<REF(MAX(MA1-(C*0.035),NA2),LL);


// 启动止损
ISLASTBP:=type(1)=4;
ISLASTSP:=type(1)=2;
PK2:REF(IF(ISLASTBP,REF(BP1,ENTERBARS+1),0),ENTERBARS+1)&&C>=ENTERPRICE*(1+30*0.001);//上次平空位置是否满足BP1,满足止损为3%
PD2:REF(IF(ISLASTSP,REF(SP1,ENTERBARS+1),0),ENTERBARS+1)&&C<=ENTERPRICE*(1-30*0.001);

PD5:(BKHIGH>REF(MIN(MA1+(C*0.05),NA),HH)) and D>K;//买开最高价大于MA1+C*0.05或者NA 并且D>K 平仓
PK5:(SKLOW<REF(MAX(MA1-(C*0.05),NA2),LL)) and K>D;


需要说明下:
1.软件不一样,同样的代码实现上会有差异,这是软件机制差异导致的,几乎无可避免。
2.上面代码应该是不完整的吧。没有开平语句,部分变量缺乏原始定义,这些需要你自行处理下。否则也无法在金字塔上运行的。

一般情况下用户如果能把思路从代码里面抽离出来然后再在金字塔上进行编写是比较合理的。否则仅凭代码进行的转换,是有很多瑕疵的。