[警告关闭!]任何新手问题,为了不给论坛添乱。专业人士,不要走过。没有你,哪里都不能去。 - 页 517

 
没有,为什么?
 
鼠标点击
 
有2个挂单,其中一个被触发,我如何删除第二个挂单
 
你不止一次地提出同样的问题。准确写下你需要的东西,我将为你开出处方。
 
zhuki >>:
Вы не однократно задаёте один и тот же вопрос. Пишите точно, что надо я вам пропишу.

有2个挂单,其中一个被触发,我如何删除第二个挂单?

 
                  for(int i=OrdersTotal()-1;i>=0;i--)
                   {
                  if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES)==false) continue;
                  if (OrderSymbol()==Symbol())
                  if (OrderType()>1)   OrderDelete(OrderTicket());
                  }
所以有两个人,还是已经有一个人了。这块将删除所有待处理的订单。对吗?
 
正在编写一个系统。遇到了一个问题。
,有一个专家
#include <H1.mqh>

void init(){}
void deinit(){}
void start(){Print(f1());}
有MQH
#import "B1.ex4"
#import "B2.ex4"

string f1();
string f2();
和两个图书馆,首先是B1
#property library
#property stacksize  8192

#include <H1.mqh>
/*
#import "B2.ex4"
   string f2();
#import*/

string f1(){return(StringConcatenate("Апчхи! ", f2()));}
现在和B2
#property library
#property stacksize  8192

string f2(){return(" Будь здоров!");}

我需要一个专家顾问能够顺利调用 第一个库的函数,B1的函数使用B2的函数,
,但终端写道:
2010.04.13 20:25:03 B2 EURUSD,M30: 函数'f1'未找到
我如何解决这个问题? 让一个库的函数调用另一个库的函数,这可能吗?
 
我在EA开始时就这样做,确定抽搐的到来。例如,
int BL=0,SL=0,B=0,S=0,BS=0,SS=0;
//-------------- Определим что имеем --------------------------------------------      
          for(int r=0;r<OrdersTotal();r++) //  
      {
      if(OrderSelect(r,SELECT_BY_POS,MODE_TRADES)==false)    continue;
      if(OrderSymbol()==Symbol())
      {
      if (OrderType()==OP_BUY )         B++;
      if (OrderType()==OP_SELL )        S++;
      if (OrderType()==OP_BUYLIMIT )   BL++;
      if (OrderType()==OP_SELLLIMIT)   SL++;
      if (OrderType()==OP_BUYSTOP )    BS++;
      if (OrderType()==OP_SELLSTOP)    SS++;
      }}
此外,你需要定义你可以操作的订单数量。例如,有多少挂单 BL+SL+BS+SS等等。
你需要它吗?
 
我不能这样理解,把它放在我的私人信息中,我会修正它。
 
vlandex >>:

Есть 2 отложенных ордера, один из них сработал, как удалить второй?

删除所有剩余的未决订单。

而如果你想要一个实质性的答案,那么工作室里的部分算法。

//В конец кода отдельной функцией
//жжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжж
int OrdersDelete(int MagicNumber) //magic 
{
   for(int i = 0; i < OrdersTotal(); i++)
   {
      // already closed
      if(OrderSelect(i, SELECT_BY_POS,MODE_TRADES ) == false) continue;
      // not current symbol
      if(OrderSymbol() != Symbol()) continue;
      // order was opened in another way
      if(OrderMagicNumber() != MagicNumber) continue;
        if(OrderType() >1)
        OrderDelete(OrderTicket());
   }
  return(0); 
}
//жжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжж

int start()
{
 OrdersDelete(STUPID);//STUPID это мажик номер Вашего советчика
 трали вали ...