[存档]任何菜鸟问题,为了不使论坛变得杂乱无章。专业人士,不要路过。没有你就无处可去 - 3. - 页 638

 
增加私人上限/当前时间框架的限制+1。
 
因此,到目前为止,我哥哥在坦克里打了几场比赛。订单不删除,至少它变得更好一点。现在的代码是,即我点了两个,我又加了i=OrdersTotal()-1;这一行在循环中理论上应该obispechit它的继续,直到所有不被杀死,但这并没有发生。在这里。
if(Summaprofita()>=Profit_v_balans )
        {
         for(int i=OrdersTotal()-1;i>=0;i--)
           {
              bool error=true;
            OrderSelect(i,SELECT_BY_POS,MODE_TRADES);
            
            if( magic==OrderMagicNumber( ) && OrderSymbol()==Symbol())
              {
              
                 OrderClose( OrderTicket( ), OrderLots( ), OrderClosePrice( ) , 0, CLR_NONE); error=false;
                           Sleep(1000);
             OrderDelete(OrderTicket());error=false;
             
              if(OrderType()==OP_BUY)
              {
               OrderClose(OrderTicket(),OrderLots(),Bid,3,CLR_NONE);
               
              }
            if(OrderType()==OP_SELL)
              {
               OrderClose(OrderTicket(),OrderLots(),Ask,3,CLR_NONE);
               
              }
              i=OrdersTotal()-1;
            Sleep(1000);
         } } }
        
不是撤消的秩序不让新秩序!!!。救命啊!!!
 
//+------------------------------------------------------------------+
//|  Удаляет рыночные и отложенные ордера.                           |
//|  Как отдельные по тикету, так и по фильтру в цикле поиска        |
//|  Фильтры по магику,типу,символу. Если вызвать с символом "All" - |
//|  То удалит все, подобно функции DeleteAll()                      |
//+------------------------------------------------------------------+
bool OrdClose(int magik  = -1,
              int type   = -1,//=10 удаление всех рыночных; =11 удаление всех отложенных 
              int ticket = -1,
           string symb   = "",
           double cLot   = -1      
              ){int   digit = MarketInfo(Symbol(),MODE_DIGITS);double lot;
//+------------------------------------------------------------------+
   if(cLot==0){return;}
   if(symb==""){symb=Symbol();}
   int slip = MarketInfo(symb,MODE_SPREAD);
   double ltstp = MarketInfo(Symbol(),MODE_LOTSTEP);
   if(ltstp == 0.1){int ltdg = 1;}
   if(ltstp == 0.01){   ltdg = 2;} 
   if(ticket>0){
      GetLastError();
      RefreshRates();
      if(OrderSelect(ticket,SELECT_BY_TICKET)){
         if(OrderCloseTime()!=0){return;}
         if(OrderType()<2){
                lot = OrderLots();
                if(cLot>0){
                        lot = NormalizeDouble(cLot,ltdg);
                        if(lot>OrderLots()){lot=OrderLots();}
                        if(lot<MarketInfo(Symbol(),MODE_MINLOT)){lot=MarketInfo(Symbol(),MODE_MINLOT);}
                }
            if(!OrderClose(OrderTicket(),
                                     lot,
       NormalizeDouble(OrderClosePrice(),MarketInfo(symb,MODE_DIGITS)),
                                    slip,
                                   Green
                          )
            ){
               Print(GetLastError());
               return(false);              
            }else{
               Print("Order "+GetNameOP(OrderType())+" closed");
               return(true);
            }                          
         }else{
            if(!OrderDelete(OrderTicket(),GetOrdCl(type))){
               Print(GetLastError());
               return(false);              
            }else{
               Print("Order "+GetNameOP(OrderType())+" closed");
               return(true);
            }
         }
      }
   }else{
//+------------------------------------------------------------------+
   for(int i=OrdersTotal()-1;i>=0;i--){
      if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES)){
         if(OrderCloseTime()!=0){continue;}
         if(symb!="All"){
            if(OrderSymbol()!=symb){continue;}
            if(type>=0&&type<6){if(OrderType()!=type){continue;}}
            if(type==10){if(OrderType()>1){continue;}}
            if(type==11){if(OrderType()<2){continue;}}
            if(magik>0){if(OrderMagicNumber()!=magik){continue;}}
         }
         if(OrderType()<2){
                lot = OrderLots();
                if(cLot>0){
                        lot = NormalizeDouble(cLot,ltdg);
                        if(lot>OrderLots()){lot=OrderLots();}
                        if(lot<MarketInfo(Symbol(),MODE_MINLOT)){lot=MarketInfo(Symbol(),MODE_MINLOT);}
                }
                Print("Close ",type,"  ",OrderType());
            if(!OrderClose(OrderTicket(),
                                     lot,
       NormalizeDouble(OrderClosePrice(),MarketInfo(symb,MODE_DIGITS)),
                                    slip,
                                   Green
                          )
            ){
               Print(GetLastError());
               return(false);              
            }else{
               Print("Order "+GetNameOP(OrderType())+" closed");
            }                          
         }else{
            if(!OrderDelete(OrderTicket(),GetOrdCl(type))){
               Print(GetLastError());
               return(false);              
            }else{
               Print("Order "+GetNameOP(OrderType())+" closed");
            }
         }
      }
   }          
//-----+
}   
return(true);}
 
哇,这么多条线! 谢谢!!!!
 
各位专家,请教如何将好的报价历史上传到终端。要测试我的第一个机器人是需要的。欧元-美元的报价是4位数。
 
Sancho77:

我两种方法都试过了。

还是没有反应。




它的作用)。
int start()
  {
//----
     Comment("Signal = ",Signal());       
//----
   return(0);
  }
//+------------------------------------------------------------------+

  int Signal()
  {
  double dn_stop_1 = iCustom(NULL,0,"NRTR_ATR_STOP",ATR,Coeficient,0,1); // синий, снизу
  double up_stop_1 = iCustom(NULL,0,"NRTR_ATR_STOP",ATR,Coeficient,1,1); // красный, сверху
              
   if (dn_stop_1!=0.0) return(1);
   if (up_stop_1!=0.0) return(-1);
   
   return(0);
   } 
 
Myth63:
各位专家,请教如何将好的报价历史上传到终端。对于我的第一个机器人的测试是需要的。欧元-美元的报价是4位数。
如果你想在测试器中玩,通过F2从MetaQuotes下载历史。为了成功地进行实时操作,你需要从你的经纪公司的服务器上获得报价。如果你的经纪公司没有这样的服务 "报价档案"(它可以在一些经纪公司的网站上),历史必须以实时模式收集 - 它是战略信息。这是 一个自动收集报价的工具。
 

大家好!

关于 iMAOnArray(array[], total, period, ma_shift, ma_method, shift)函数的问题

你能告诉我 array[] 是否必须是一个缓冲数组,还是可以是任何数组? 问题是,当

我在一个程序中创建并初始化一个数组 ,这个函数不起作用。但当我通过SetIndexBuffer绑定时

......一切都在正常工作。

 
r772ra:

它是有效的))。
非常感谢您!它真的起作用了,但很奇怪,我一直在M15上测试,但后来我决定在H1上试试,信号出现了。然后我又回到了M15--它成功了)))