关于模型转换 (文华财经WH8赢智V8.2)

投资者咨询:关于模型转换 (文华财经WH8赢智V8.2)
来源:文华财经  日期:2018-4-29 21:19

老师,请问能否将下面的MC模型转为文华?

 

一、策略简介


 

混沌操作法,是一整套几近完美的金融投资思想、交易策略和进出场信号,由美国双料博士、 Profitunity Trading Group的创办人、艾略特波浪理论的究现者之一、实际从事交易长达35年、被公认为是运用混沌学最杰出的交易者――比尔・威廉姆斯博士发明。他将20世纪最伟大的基础科学发现和爱因斯坦的相对论具有同等地位的思想――混沌理论(Chaos Theory)运用于金融投资领域,发明了混沌操作法,获得了巨大的成功。

比尔・威廉姆斯博士的混沌操作法,在国外经过成千上万交易者的实践,其无可置疑的有效性和巨大价值得到了验证。混沌操作法从上个世纪末以来就开始风靡美国,得到了众多投资专家和专业交易员的肯定。现在,国际上应用该操作法来指导金融投资的交易者已经非常众多。

整个混沌操作法是由五大维度(技术指标)构成的:鳄鱼线、分形、动量、加速、均衡线;掌握了这五大指标,也就基本掌握了混沌操作法。关于这5个维度的指标,详细的可以通过下面的两个链接进行学习:

https://forum.multicharts.cn/forum/cat/4/thread/1712

https://zhuanlan.zhihu.com/p/28520192


 

二、策略逻辑

本策略是基于鳄鱼线和分形指标的一个组合形成的交易系统;以最高价和最低价的中点作为鳄鱼线和分形指标计算的基准价格;当根bar的收盘价突破上分形,并且上分形在鳄鱼线上方时,买入进场,买入的手数是基于固定资金(这里是10000)和固定保证金(这里是0.1)转换的手数;当根bar的收盘价跌破下分形,并且下分形在鳄鱼线下方时,卖出进场,卖出进场的手数和买入的一样;当前多头持仓,若收盘价跌破鳄鱼的下巴(jaw_b)时,平仓;当前空头持仓,若收盘价突破鳄鱼的下巴时,平仓。


 

三、策略代码


 

inputs:p1(3),      p2(5),    Fund(10000);

 

var:Lots( 0 ),p3(0),p4(0),pricevalue( 0 ),jaw_b( 0 ),teeth_r( 0 ),lips_g( 0 ),max( 0 ),min( 0 ),

up_fractal( 0 ),down_fractal( 0 );

 

lots=maxlist(1,IntPortion(Fund/(O*bigpointvalue*0.1)));  

//固定资金和固定保证金计算手数

p3=p1+p2;

p4=p2+p3;

pricevalue=(high+low)/2;

//基准价格

jaw_b=XAverageOrig(pricevalue[p3],p4);  //鳄鱼的下巴

teeth_r=XAverageOrig(pricevalue[p2],p3);  //鳄鱼的牙齿

lips_g=XAverageOrig(pricevalue[p1],p2);  //鳄鱼的嘴唇

max=maxlist(jaw_b,teeth_r,lips_g);   //三条线的最大值

min=maxlist(jaw_b,teeth_r,lips_g);   //三条线的最小值

         

up_fractal=pivothighvs(1,symbol_high,2,2,symbol_currentbar);

down_fractal=pivotlowvs(1,symbol_low,2,2,symbol_currentbar);

{up_fractal保存上分形的最高价;down_fractal保存下分形的最低价}

 

If close>=up_fractal and up_fractal>max then

          buy ("buy") lots shares next bar market;

{当根bar的收盘价突破上分形,并且上分形在鳄鱼线上方时,买入进场}

If close<=down_fractal and down_fractal<min then

          sellshort ("sellshort") lots shares next bar market;

{当根bar的收盘价跌破下分形,并且下分形在鳄鱼线下方时,卖出进场}

If close<jaw_b then

          sell ("sell")next bar market;

{收盘价跌破鳄鱼的下巴(jaw_b)时,平仓}

If close>jaw_b then

          buytocover ("cover")next bar market;

{收盘价突破鳄鱼的下巴时,平仓}



 

技术人员回复
日期:2018-4-30 14:48

 P1:=3;
P2:=5;
FUND:=10000;
 
LOTS:=MAX(1,FUND/(O*MINPRICE*0.1));  
//固定资金和固定保证金计算手数
P3:=P1+P2;
P4:=P2+P3;
PRICEVALUE:=(HIGH+LOW)/2;
//基准价格
JAW_B:=EMA(REF(PRICEVALUE,P3),P4);  //鳄鱼的下巴
TEETH_R:=EMA(REF(PRICEVALUE,P2),P3);  //鳄鱼的牙齿
LIPS_G:=EMA(REF(PRICEVALUE,P1),P2);  //鳄鱼的嘴唇
MAXA:=MAX1(JAW_B,TEETH_R,LIPS_G);   //三条线的最大值
MINA:=MIN1(JAW_B,TEETH_R,LIPS_G);   //三条线的最小值
         
UP_FRACTAL:=HV(H,P2);
DOWN_FRACTAL:=LV(L,P2);

 CLOSE>=UP_FRACTAL AND UP_FRACTAL>MAXA ,BPK;
CLOSE<=DOWN_FRACTAL AND DOWN_FRACTAL<MINA,SPK;
CLOSE<JAW_B ,SP;
CLOSE>JAW_B,BP;
AUTOFILTER;
投资者咨询:关于模型转换 (文华财经WH8赢智V8.2)
来源:文华财经  日期:2018-4-29 21:19
 老师,我发现第四行定义的LOTS在后面的语句中没有被调用?
技术人员回复
日期:2018-5-6 10:31
用在开仓手数中参考:

 P1:=3;
P2:=5;
FUND:=10000;
 
LOTS:=MAX(1,FUND/(O*MINPRICE*0.1));  
//固定资金和固定保证金计算手数
P3:=P1+P2;
P4:=P2+P3;
PRICEVALUE:=(HIGH+LOW)/2;
//基准价格
JAW_B:=EMA(REF(PRICEVALUE,P3),P4);  //鳄鱼的下巴
TEETH_R:=EMA(REF(PRICEVALUE,P2),P3);  //鳄鱼的牙齿
LIPS_G:=EMA(REF(PRICEVALUE,P1),P2);  //鳄鱼的嘴唇
MAXA:=MAX1(JAW_B,TEETH_R,LIPS_G);   //三条线的最大值
MINA:=MIN1(JAW_B,TEETH_R,LIPS_G);   //三条线的最小值
         
UP_FRACTAL:=HV(H,P2);
DOWN_FRACTAL:=LV(L,P2);

 CLOSE>=UP_FRACTAL AND UP_FRACTAL>MAXA ,BPK(LOTS);
CLOSE<=DOWN_FRACTAL AND DOWN_FRACTAL<MINA,SPK(LOTS);
CLOSE<JAW_B ,SP(BKVOL);
CLOSE>JAW_B,BP(SKVOL);