怎样制作常用函数库

楼主  收藏   举报   帖子创建时间:  2019-05-05 05:27 回复:0 关注量:801
怎么制作常用函数库
  下面是个EA中的问题
  建议采用的EA逻辑
  前提:制作常用函数库
  1、仓位状态函数:判断仓位并输出持仓方向和持仓单Ticket号码
  2、平仓函数:
  3、入场条件计算函数 多 空
  4、出场条件计算函数 多 空
  EA建议逻辑图:
  ===========================================
  Start函数中
  执行仓位状态函数
  如果空仓
      入场条件计算函数
              满足多头条件则执行多头入场操作
              满足空头条件---则执行空头入场操作
      入场条件都不满足,直接返回
  如果持仓
          根据持仓状态处理
          多单持仓----计算多单出场函数
          如果满足 则执行出场
          如果不满足,则直接返回
          空单持仓----计算空单出场函数
          如果满足 则执行出场
          如果不满足,则直接返回
         
  下面是几个制作的函数
  [/code]int Crossed (double line1 , double line2)
     {
        static int last_direction = 0;
        static int current_direction = 0;   
            
        if(line1>line2)current_direction = 1; //up      
        if(line1 /  {br /     int defaultSL;br /     br /     if (Period()==PERIOD_H4) defaultSL=Hour4_Stoploss;br /     else defaultSL=Daily_Stoploss;br /     br /     if (BuyOrSell==OP_BUY)br /     {br /        if (Low[2]Low[1] && (Ask-Low[2])defaultSL*Point)br /           return (Low[2]);br /        else if ((Ask-Low[1])defaultSL*Point)br /           return (Low[1]);br /        else return (NormalizeDouble(Ask-defaultSL*Point, Digits));br /     }br /     else if (BuyOrSell==OP_SELL)br /     {br /        if (High[2]>High[1] && (High[2]-Bid)>defaultSL*Point)
           return (High[2]);
        else if ((High[1]-Bid)>defaultSL*Point)
           return (High[1]);
        else return (NormalizeDouble(Bid+defaultSL*Point, Digits));
     }
  }
  
  void TR(int magic){  
    for (int k=0;kiSAR(Symbol(), 0, 0.02, 0.2, 1) && Bid
打赏