[警告は閉鎖されました!】フォーラムを乱雑にしないために、どんな初心者の質問でも。プロフェッショナルは、通り過ぎないでください。あなたなしでは、どこにも行けない。 - ページ 517

 
いいえ、なぜですか?
 
StrToDouble
 
保留中の注文が 2つあり、そのうちの1つがトリガーされましたが、2つ目を削除するにはどうすればよいですか?
 
同じ質問を何度もするんですね。必要なものを正確に書いてくれれば、処方しますよ。
 
zhuki >>:
Вы не однократно задаёте один и тот же вопрос. Пишите точно, что надо я вам пропишу.

保留中の注文が2つあり、そのうちの1つがトリガーされましたが、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());
                  }
だから2人いるのか、それとももう1人いるのか。この作品では、保留中の注文が すべて削除されます。そうだろ?
 
あるシステムを書いていて、問題にぶつかりました。
#include <H1.mqh>

void init(){}
void deinit(){}
void start(){Print(f1());}
mqh
があります。
#import "B1.ex4"
#import "B2.ex4"

string f1();
string f2();
と2つのライブラリ、最初のB1
#property library
#property stacksize  8192

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

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

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

私はExpert Advisorが問題なく最初のライブラリから関数を呼び出す ことができる必要があり、B1からの関数はB2、
から関数を使用しますが、ターミナルは次のように書きます。
2010.04.13 20:25:03 B2 EURUSD,M30: function 'f1' is not found...
また、あるライブラリの関数が別のライブラリの関数を呼び出すことは可能でしょうか?
 
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 это мажик номер Вашего советчика
 трали вали ...