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

 
stringo:

あなたの場合、動的配列を 使用する必要があります。

ありがとうございます! うまくいきました。

 

困難でなければ、テスターのエラーを修正する。

ダニを処理する際、専門家は盲点となる。ティック処理中にシンボルの情報を更新することは不可能です。

通常の取引ではこのようなことはなく、すべてのデータが更新されます。

https://www.mql5.com/ru/forum/4270/page2#comment_87059

この修正なしでは、取引エラーを正しく処理することはできません。

RefreshRates() внутри OnTick()
RefreshRates() внутри OnTick()
  • www.mql5.com
Если это невозможно, то как проще всего реализовать обработку ошибок торговых операций с проверкой котировок на обновление?
 

最適化中に、すべての取引がプラス側になった場合、xmlレポートファイルは曲がっています。

...訂正してください。

 

私が何か理解していないか、FileClear()関数を作り忘れたかのどちらかです。

さて、私の理解では、ファイルをクリアするには、1閉じる、2削除する、3開く、が必要です。- これはとても不便なことです。

 
vyv:

私が何か理解していないか、FileClear()関数を作り忘れたかのどちらかです。

さて、私の理解では、ファイルをクリアするには、1閉じる、2削除する、3開く、が必要です。- これはとても不便なことです。

なぜ、ファイルをクリアする必要があるのですか?ファイルポインタを 0に移動し、書き込みを開始します。
 
stringo:
なぜクリアするのか?ファイルポインタを 0に移動し、書き込みを開始します。
ファイル内に5行ある場合。代わりに3を書きたい。ポインタをファイルの先頭に移動して、3...と書き込む。そしてその後ろには、さらに2人が...。そのため、ファイルには3行ではなく5行が含まれています - shield...
 
vyv:
ファイル内に5行ある場合。3で上書きしたい。ポインタをファイルの先頭に移動し、3...と書き込む。そして、その後ろにさらに2人...。そのため、ファイル内の行数が3行から5行になり、シールド...

書き込み専用フラグFILE_WRITEで ファイルを開き、好きなように書き込んで ください。それ以前のものは削除されます。

読み取りフラグと書き込みフラグを使った作業には、いくつかの特殊性があります。

  • FILE_READ が指定された場合、既に存在するファイルを開こうとする。ファイルが存在しない場合は、ファイルを開くことができないので、新しいファイルは作成されません。
  • FILE_READ|FILE_WRITE の場合 - その名前のファイルがない場合、新しいファイルが作成されます。
  • FILE_WRITE の場合 - ファイルはゼロサイズで再作成される。
 

FileChangeSize関数が必要なようです

 
WinAPIには、SetEndOfFile関数があります。
 
stringo:

FileChangeSize関数が必要なようです。

そして、ファイルやフォルダのリネーム 機能も忘れている。

// OK、FileMove(...)でリネームできるのは認めるが、フォルダの場合はアナログも必要だ。:)