660より高いビルドでHDにログファイルが散乱し、最適化速度が遅くなる - ページ 3

削除済み  

ログファイルディレクトリは常に/testerディレクトリにあり、私が/portableモードでMT4を使っているため、あなたのはUserDataフォルダにあるのかもしれません。

はい、コマンドラインからテスターを起動することができますが、それは何の役にも立ちません、ロギングはビルド670以降プログラム内部で行われており、コマンドラインからそれをオフにする方法はありません。

出力をNULにリダイレクトすることは、内部ロギングとは何の関係もありません。あなたのアイデアは、コマンドプロンプトボックスの出力をnulにリダイレクトすることだけです(実際のテキスト出力です)。MT4のようなGUIを持つアプリケーションでは、それは全く何もしません。

削除済み  

丸太をもっと楽しもう



 

うーん - 私の兄弟の一人がb765に更新しました - このバージョンは、この '機能'を失っている可能性があります?

パワーシェルスクリプトを使用して、時間内にフォルダ内のすべてのログファイルを即座に削除しますか?

テストされていません!

$path = "C:\Program Files\MetaTrader\tester\logs"   #  correct path?
while($true) {                                      #  endless loop switch off manually!!
    $files = Get-ChildItem -Path $path |  Where-Object {-not $_.PsIsContainer -and $_.name -like "*.log"}
    foreach ($file in $files) {                     #  Folder are excluded
       Remove-Item $file.FullName -Force -ErrorAction SilentlyContinue  
    }
    Start-Sleep -s 60                               #  sleep 60 seconds 
}
削除済み  
OK、B765をチェック アウトします。ログファイルはmetatrader.exeの実行中にロックされるので、ターミナルを閉じないと削除できず、実際の最適化がキャンセルされます。
 

そのため、このような

Remove-Item $file.FullName -ErrorAction SilentlyContinue  

削除 できなかったファイルは「Silently[...]」で迂回し、次回に削除します。

ということで、-Forceを外すといいと思います(なので、私はそうしました)。

削除済み  
しかし、"次回 "は遅すぎます。これは、ターミナルを再起動した後(ファイルのロックが解除された後)を意味し、その場合、HDはすでに一杯になっています(これが私の実際の問題です)。"Force "もうまくいきません。試してみましたが、やはりターミナルがシャットダウンされるまでメタトレーダーによってファイルがロックされているので、スクリプトは失敗します。
 

次回は60秒のスリープの後ということです。私はそれを書いていないのですか?

毎分、スクリプトは削除されるログを探します。

私の推測では、テストランは1つのログファイルしかブロックしないので、前に作成されたログは削除できます - しかし、自分で試してみてください。

私は今最適化するものが何もないので、できません....

 
mt4user2000:

どういう意味ですか?私が話しているログは、最適化の各パスで最適化中に発生した各SLを記録しています。すでに投稿したものですが、これのどこが違って解釈される必要があるのでしょうか?問題は、最適化中にログを取るべきでないのに、取ってしまうことです。

あなたは他の人の投稿を読んでいない。

私はログを投稿し、そこから私がstoplossを使用していること、stoplossがシステムによってトリガーされることを確認しました。また、どのビルドでテストを行ったかも書きました。
しかし、あなたは既に回答済みの質問と同じことを尋ねています。

そして同時に、あなたは何の情報も含まない大きなログを公開しています。

mt4user2000:

そして、私はむしろあなたが実際にログを見つける方法を学ぶことを提案するかもしれませんか?ビルド670と745で「いいえ、何も記録されていません」と言っていたのに、突然、あなたのシステムでも記録されていると言い出したのですか?笑

私はすでにこの動作が何らかの形でトリガーされ、それが明らかに表示するために遺伝的最適化の横にいくつかの他の要因を必要とすることをあなたに言った。

しかし、それは読んで理解しようとするよりも、LOL LOLを書く方が簡単で便利です。

また、あなたの問題は何ですか?SLを外し、OrderClose()でトレードを終了することです。

あなたの文章を読むと、MQがこの点や他の細かいバグを気にしていないことを認識していることが明らかです。

 

grazianiです。

これは最も適切な回避策ではありませんが、ログディレクトリのACLを編集することによって、metatrader.exeがログディレクトリに書き込むのを拒否することができます。

注意:この方法は、自分が何をしているのか分かっている場合にのみ行ってください。

ご挨拶

削除済み  

graziani: すみません、これ以上のコメントは控えさせていただきます。

gooly: 言いたいことはわかるのですが、ログファイルを削除することができません。自分で試してみてください。

ics-mq4: これは私も試しましたが、残念ながら最適化の速度が10倍ほど遅くなります。メタトレーダーはディレクトリに書き込むことができないので、何度かリトライして、あきらめることになります。また、「logs」ディレクトリを削除して、同じ名前のファイルを作成すると、Metatraderは「logs」ディレクトリを作成できなくなります。しかし、この場合も同じことが起こり、最適化の速度が著しく低下します。