客服热线:18391752892

EA中如何计算止损和止赢

   日期:2019-01-12     浏览:448    
马上注册,结交更多好友,下载更多资源

您需要 登录 才可以下载或查看,没有帐号?注册 [原创转载] macy01.blogcn.com
 
 
 一般一个EA中会定义止损水平和止赢水平,一般大家定义的参数都是int型,即点数。例如下面的变量定义:
 extern int _SlipPage   = 2;   //最大允许滑点数
 extern int _StopLoss   = 30; //止损水平
 extern int _TakeProfit   = 100; //赢利水平
 extern int _Magic     = 0;   //订单Migc号码
 
 在使用OrderSend开仓的时候,并不能够直接将上面的参数传递给OrderSend,因为OrderSend需要的是真实的市场价位,例如EURUSD开多仓位置为1.5000,则对应止损为1.4970,止赢为1.5100;对于其他货币小数位数可能不同,例如USDJPY。注意事项为:
 (1)如果没有经过转换,或者价位设置错误(例如多单的止损高于入场价位),则会返回错误码130: errorDescription= 无效的止损(invalid stops)
 (2)在传入OrderSend时,最好使用NormalizeDouble(stopLoss,Digits)将参数处理为小数位数合适的Double类型
 
 转换的代码如下面所示:
 
 void Trade()
 {
    double openLots = LotsMgmt();    //开仓手数
    int ticket;                //订单编号
    double stopLoss=0, takeProfit=0;
   
    if(CheckForOpen()==OPEN_BUY)
    {
     //计算止赢点位
     if(_TakeProfit==0)
     takeProfit=0;
     else
     takeProfit=Ask+_TakeProfit*Point;
     
     //计算止损点位   
     if(_StopLoss==0)
     stopLoss=0;
     else
     stopLoss=Ask-_StopLoss*Point;
         
     //这里止损和止赢必须使用NormalizeDouble处理和相应货币的小数位数对应
     ticket=OrderSend(Symbol(), OP_BUY, openLots, Ask, _SlipPage, NormalizeDouble(stopLoss,Digits),NormalizeDouble(takeProfit,Digits), ORDER_COMMENT, _Magic, 0, Red); 
     if(ticket==-1)
     Print( Error Occured : +ErrorDescription(GetLastError()));
    }
   
    if(CheckForOpen()==OPEN_SELL)
    {
     //计算止赢点位
     if(_TakeProfit==0)
     takeProfit=0;
     else
     takeProfit=Bid-_TakeProfit*Point;
       
     //计算止损点位   
     if(_StopLoss==0)
     stopLoss=0;
     else
     stopLoss=Bid+_StopLoss*Point;
       
     //这里止损和止赢必须使用NormalizeDouble处理和相应货币的小数位数对应
     ticket=OrderSend(Symbol(), OP_SELL, openLots, Bid, _SlipPage, NormalizeDouble(stopLoss,Digits),NormalizeDouble(takeProfit,Digits), ORDER_COMMENT, _Magic, 0, Green);
     if(ticket==-1)
     Print( Error Occured : +ErrorDescription(GetLastError()));
    }
 }
外汇交易有很大的风险性,本站所有资源均来自网络,请选择使用,如若出现亏损,本站不承担任何责任!


特别提示:本信息由相关企业自行提供,真实性未证实,仅供参考。请谨慎采用,风险自负。


0相关评论
相关行情快递
推荐行情快递
点击排行