天猫首页
当前位置: 首页 > 趋势EA > 【网格马丁EA(黄金)】根据几个EA进行参考修改的,供大家研究学习。全部源码,参数备注

浏览历史

【网格马丁EA(黄金)】根据几个EA进行参考修改的,供大家研究学习。全部源码,参数备注
prev zoom next

【网格马丁EA(黄金)】根据几个EA进行参考修改的,供大家研究学习。全部源码,参数备注

  • 本店售价:¥5000元 ¥8000元
  • 商品货号:ECS006875
  • 商品库存: 9999
  • 上架时间:2022-09-15
  • 商品点击数:5

商品描述

商品属性

商品标签

相关商品

#property version    1.00
#property description wes grider EA V1.0。不要管过去发生了什么,你不是你的过去,你是你从过去所汲取的资源与能力。而这才是所有改变的根基。
#property strict
input bool   IsEnableDeal = true;            //是否允许交易
input double   Lot=0.01;                   //操作手数
input int     gridStep=90;                  //网格步长点数
input double   totalEquityLess = 200;            //绝对止损总额(0禁用)
input double   totalTakeProfit = 100;         //每1手希望的获利
input double   tpPoint = 1000;               //带止盈时希望获利点数
input double   slPoint = 500;                //带止损时希望获利点数
input ENUM_TIMEFRAMES PERIOD = PERIOD_M1;        //部署网格用布林带的时间帧
input int     bandsMidMin = 50;              //网格用布林带中轨部署最小距离
input int     bandsMax = 500;               //网格用布林带窄带识别最大值
input int     maxLimits=10;                 //在一个方向上的限价订单数量
input int     checkProfitTime = 3000;          //检查利润毫秒数
bool   isLog = false;                    //是否显示日志
bool   LOTSKG   = false;                  //复利开关
string       sysName = WES-Grid
string       prefix_graph= grider_           //图像对象前缀
extern int   EA_Magic = 32352;              //魔术数
long       MaxSPREAD = 30;              //最大挂单点差
double       ST = 0;                   //修正后步长
double       allLots, buyLots, sellLots;       //总手数,多单空单手数
double       allProfit, buyProfit, sellProfit;   //总盈利,单空单盈利
int         buyNum, sellNum, allNum;         //订单数量
int         buyStopNum, selStoplNum;         //挂单数量
double       lastLot, lastType;             //最后单手数,最后单类型
double       lastOrderPrice;               //最后订单价格
MqlTick     lastPrice;                 //最后报价
double       currBuyHigh = 0;             //当前买入订单最高价
double       currSellLow = 0;             //当前卖出订单最低价
int OnInit(){
   ST=gridStep;
   if(_Digits==5 || _Digits==3){ // 修正网格步长
     ST *=10;
     SymbolInfoDouble(_Symbol, SYMBOL_POINT);
   }
   ST *= SymbolInfoDouble(_Symbol, SYMBOL_POINT);//修正价格     
   ObjectsDeleteAll(0, prefix_graph);
   //EventSetTimer(60);
   EventSetMillisecondTimer(checkProfitTime);
   return(INIT_SUCCEEDED);
}
void OnTimer(){
   Print( ##################
}
void OnTick(){   
   RefreshRates();
   SymbolInfoTick(_Symbol, lastPrice);//获取最新报价
   CountAllTrades();
   checkLost();
   checkTakeProfit();//检查利润
   displayInfo();
   if(!IsEnableDeal) return;//检查是否启用   
   if(!pdxIsNewBar()) return;//检查是否新分时柱   
   if(!existLimits()) setOrders();
}
bool existLimits() {//检测是否有订单及挂单
   if(buyNum==0 sellNum==0 buyStopNum==0 selStoplNum==0) return false;
   return true;

bool pdxIsNewBar(){ // 检测是否柱开始的第一个分时,为了让EA每五分钟检查一次我们的状况,它应该在M5时间段启动
   static datetime Old_Time;
   datetime New_Time[1];
   if(CopyTime(_Symbol,_Period,0,1,New_Time) 0){
     if(Old_Time!=New_Time[0]){
       Old_Time=New_Time[0];
       return true;
     }
   }
   return false;
}
void checkLost(){ ///检查绝对止损
   double curProfit=0;
   double profit=0;
   int total = OrdersTotal(); 
   for (int ti = total-1 ; ti = 0 ; ti--){   
     bool sel = OrderSelect(ti,SELECT_BY_POS ,MODE_TRADES);     
     if(OrderSymbol()!=_Symbol) continue;
     if(OrderMagicNumber()!=EA_Magic) continue;
     profit += OrderProfit()+OrderCommission()+OrderSwap();
   }   
   //if(buyNum+sellNum = (int)maxLimits*2 ){//如果所有网格都已经进入订单,接受一定止损
   //   closeAllPos();
   //}
   if(profit -MathAbs(totalEquityLess) totalEquityLess!=0){//检查绝对止损(绝对止损不为0时为启用)
     CloseAllOrders();
   }
}
void checkTakeProfit(){ //离场逻辑
   double curProfit=0;
   double profit=0;
   int total = OrdersTotal(); 
   for (int ti = total-1 ; ti = 0 ; ti--){   
     bool sel = OrderSelect(ti,SELECT_BY_POS ,MODE_TRADES);     
     if(OrderSymbol()!=_Symbol) continue;
     if(OrderMagicNumber()!=EA_Magic) continue;
     profit += OrderProfit()+OrderCommission()+OrderSwap();
   }
   // 计算获取逻辑
   double takeval; // 希望获取利润, 已经交易手数差值
   takeval = MathAbs(buyLots-sellLots) * totalTakeProfit;
   if(isLog) Print( ### take: ,takeval, , buyLots: ,DoubleToString(buyLots,2), , sellLots: ,DoubleToString(sellLots,2),
    , buyNum: ,buyNum, , sellNum: ,sellNum, , H: ,currBuyHigh, ,L: ,currSellLow, ,bid: ,lastPrice.bid);
   if(isLog) Print( ################# profit: , profit);
   if(profit takeval){// takeProfit 0){ // 达到获利则关闭
     CloseAllOrders();
   }
商品属性
[]

商品标签

购买记录(近期成交数量0)

还没有人购买过此商品
总计 0 个记录,共 1 页。 第一页 上一页 下一页 最末页

用户评论(共0条评论)

  • 暂时还没有任何用户评论
总计 0 个记录,共 1 页。 第一页 上一页 下一页 最末页
用户名: 匿名用户
E-mail:
评价等级:
评论内容:
验证码: captcha
在线咨询