エラー、バグ、質問 - ページ 1755

 
訂正してください。
 

Pingより早く注文が入る。

 
という場面に遭遇したことがあります。
HistorySelect(0, TimeCurrent())

不完全な履歴テーブルを作成します。アカウントにアクセスした後、最初の電話で初めて遭遇しました。それ以降のものは、全歴史が記載されています。

再現できない。今は動くが、今は動かない。チェックをお願いします。

 
fxsaber:

Pingより早く注文が入る。

Pingはほとんど再計算されません。
 
fxsaber:
という場面に直面しました。
HistorySelect(0, TimeCurrent())

不完全な履歴テーブルを作成します。アカウントにアクセスした後、最初の電話で初めて遭遇しました。それ以降のものは、全歴史が記載されています。

再現できない。今は動くが、今は動かない。チェックをお願いします。

決してTimeCurrent()を終了日とせず、TimeCurrent() +86400とすることで、すべての最終トレードを確実に捕捉することができます。

TimeCurrentは正確な最終時刻ではなく、「更新中の最後の既知の サーバー時刻」であり、100%正確ではありません。特にスタート時は。

 
Renat Fatkhullin:

TimeCurrent()を終了日とせず、TimeCurrent()+86400とすることで、すべての終了トランザクションを確実に捕捉する。

TimeCurrentは正確な最終時刻ではなく、「更新中の最後の既知の サーバー時刻」であり、100%正確ではありません。特にスタート時は。

ありがとうございます、そうします。でも、絶対にバグは関係ないんです。

かなり昔に取引された口座にログインしている。履歴タブが空っぽになるくらい昔(マウスで全履歴を要求する必要がある)。

そして、ここでは、HistorySelectが 0を返すこともあれば、次の実行より値が1つ少なくなることもありました。全体として、そこに問題があるのは間違いありません。

 
Renat Fatkhullin:

TimeCurrent()を終了日とせず、TimeCurrent()+86400とすることで、すべての終了トランザクションを確実に捕捉する。

TimeCurrentは正確な最終時刻ではなく、「更新中の最後の既知の サーバー時刻」であり、100%正確ではありません。特にスタート時は。

は+60では足りないのでしょうか?
 

SBを見ると、HistorySelectとHistoryOrderGetTicketが ない!そんなことないですよー。

どのように機能するのでしょうか?

//+------------------------------------------------------------------+
//| Select a deal on the index                                       |
//+------------------------------------------------------------------+
bool CDealInfo::SelectByIndex(const int index)
  {
   ulong ticket=HistoryDealGetTicket(index);
   if(ticket==0)
      return(false);
   Ticket(ticket);
//---
   return(true);
  }
//+------------------------------------------------------------------+

SBには限界がある(部分的な実装もない)と確信しつつある。

なぜ、最初からSBに素晴らしいMQL4次言語システムを使うことができなかったのでしょうか?

 
fxsaber:

SBを見ると、HistorySelectとHistoryOrderGetTicketがない!そんなことないですよー。

どのように機能するのでしょうか?

//+------------------------------------------------------------------+
//| Select a deal on the index                                       |
//+------------------------------------------------------------------+
bool CDealInfo::SelectByIndex(const int index)
  {
   ulong ticket=HistoryDealGetTicket(index);
   if(ticket==0)
      return(false);
   Ticket(ticket);
//---
   return(true);
  }
//+------------------------------------------------------------------+

限界に満ちている(部分的な実装もない)と確信するようになった。

SBの素晴らしいMQL4次言語システムを最初から使ってみてはいかがでしょうか。

無知は責任を免れるものではありません。

CDealInfoクラスは、案件のプロパティへの アクセスを容易にするために設計されています。しかし、トレードにアクセスするためには、誰もが必ず最初にHistorySelectで履歴のトレースを要求する。

もっと実例に目を通し、記事を読んでから、あからさまなオタク的質問を書き、結論を出した方がいい。

 
Vladimir Karputov:

無知は責任を免れるものではありません。

CDealInfoクラスは、ディールプロパティに 簡単にアクセスするためのものです。しかし、トレードにアクセスするためには、誰もが必ず最初にHistorySelectで履歴のスナップショットを要求します。

露骨にヌケヌケと質問を書いて結論を出す前に、もっと例を見て、もっと記事を読んだ方がいい。

私はあなた自身のスタイルであなたに答えますが、モデレーターに対する考えを声に出すと、簡単に追放されます。

SBに制約があるのなら、そのことを話してもいいし、話すべきでしょう。