[ARCHIVE] フォーラムを散らかさないように、どんなルーキーでも質問してください。プロフェッショナルは、通り過ぎないでください。Nowhere without you - 3. - ページ 13

 


int handle=FileOpen("OrdersReport.csv",FILE_WRITE|FILE_CSV,"\t");
if(handle<0) return(0);
//ヘッダをファイルに書き込む
FileWrite(handle, "#", "Opening price", "Opening time", "Symbol", "Lots")。
int total=OrdersTotal();
// 開いている注文だけをファイルに書き込む
for(int pos=0;pos<total;pos++)
{
if(OrderSelect(pos,SELECT_BY_POS,MODE_TRADES)==false)を続ける。
FileWrite(ハンドル,OrderTicket(),OrderOpenPrice(),OrderOpenTime(),OrderSymbol(),OrderLots())
}
FileClose(handle)。

私のEAでどのように使用するのか、教えてください。

 
Roger:

自分で答えを出しておいてなんですが、もしかして設定のどこかを修正する必要があるとか...?

コンフィギュレーションはどこにあるのですか?お願い、教えて!
 
sergey_r:


int handle=FileOpen("OrdersReport.csv",FILE_WRITE|FILE_CSV,"\t");
if(handle<0) return(0);
//ヘッダをファイルに書き込む
FileWrite(handle, "#", "Opening price", "Opening time", "Symbol", "Lots")。
int total=OrdersTotal();
// 開いている注文だけをファイルに書き込む
for(int pos=0;pos<total;pos++)
{
if(OrderSelect(pos,SELECT_BY_POS,MODE_TRADES)==false)を続ける。
FileWrite(ハンドル,OrderTicket(),OrderOpenPrice(),OrderOpenTime(),OrderSymbol(),OrderLots())
}
FileClose(handle)。

私のEAでどのように使用するか教えてください。

コピーペースト?

このようにコードを挿入する必要があります。


 
// This function returns the total amount of orders the expert advisor has open  
int TotalOpenOrders()
{
  Cnt=OrdersTotal();
  int TotalOpenOrders = 0;
  if(Cnt==0)
  {
    return(0);
  }
    else
    {
    for(;Cnt>=0;Cnt--)
    {
      RefreshRates();
      OrderSelect(Cnt,SELECT_BY_POS);
      if(OrderMagicNumber()==Magic)
      {
      TotalOpenOrders++;
      }
    }
  }
  return(TotalOpenOrders);
}
 

理解はできたが、その後の使い方がわからない。コンディションを書かなければならないのですか?

 
sergey_r:

理解はできたが、その後の使い方がわからない。コンディションを書かなければならないのですか?

//-------------------------------------------------------------------+
extern int    TotalOrders    = 1;
//-------------------------------------------------------------------+
    // only perform analysis and open new order if we have not reached our TotalOpenOrders max
    if(TotalOpenOrders() < TotalOrders)
    {
 

// この関数は、エキスパートアドバイザーが開いた注文の合計量を返します
int TotalOpenOrders()
{
Cnt=OrdersTotal();
int TotalOpenOrders = 0;
if(Cnt==0)
{
return(0);
}.
else
{
for(;Cnt>=0;Cnt--)
{
RefreshRates();
OrderSelect(Cnt,SELECT_BY_POS);
if(OrderMagicNumber()==Magic)
{
TotalOpenOrders++;
} (注)1.
}
}
return(TotalOpenOrders);
}.

そして、この関数は、プログラムを開始する前に書いておく必要があります。

 
どのプログラム?
 
borilunad:

この設定はどこにあるのでしょうか?アドバイスお願いします


記事を読む

https://www.mql5.com/ru/articles/1490

https://www.mql5.com/ru/articles/1417

 
int start()
{pos(100,250)}ここで?