エラー、バグ、質問 - ページ 932 1...925926927928929930931932933934935936937938939...3185 新しいコメント Andrey Sharov 2013.02.23 09:10 #9311 notused: リモート エージェントは、スペースがないため、数ヶ月前から定期的に(週に2、3回)脱落しています。 または で、エージェントログはクリーンか。 と、実はスペースに余裕があるのです。 重いもの(1~2年かけて10個のツールのマルチビューという意味)をテストするときに表示される。ある時点で、エージェントはメガファイルを作成したいようです(EAにはプリントやファイルを使った作業はありませんが)。全体として、本当に仕事がしづらくなってきました。 Counting: 1年間のtick履歴(M1モードで全tick)は、一時ファイル用に約3Gbのディスクスペースを必要とします(重いジョブが実行されている場合は、"... \testerAgent-0.0.0-xxxxxtemp" フォルダーを確認してください)。代理店数で掛け合わせる。17Gbはもう瀬戸際です(8エージェントあれば超えてますし)。 Expert Advisorの名前がおかしい。;) PS.テスター(743)が無名制限で詰む...。 削除済み 2013.02.23 14:12 #9312 助けてください。なぜ取引が見つからないのですか(エラー4755)?void OnTradeTransaction(const MqlTradeTransaction& trans, const MqlTradeRequest& request, const MqlTradeResult& result) { if ((trans.type == TRADE_TRANSACTION_DEAL_ADD) && (trans.symbol == _Symbol)) { if (HistoryDealSelect(trans.deal)) { long DealMagic; if (HistoryDealGetInteger(trans.deal, DEAL_MAGIC, DealMagic)) { // } else Print("HistoryDealGetInteger(" + (string)trans.deal + ", DEAL_MAGIC, DealMagic) = false! GetLastError() = ", GetLastError()); } else Print("HistoryDealSelect(" + (string)trans.deal + ") = false! GetLastError() = ", GetLastError()); } }端末の一覧です。2013.02.07 10:31:52 instant sell 0.01 EURUSD at 1.35354 (1.35354 / 1.35364 / 1.35354) 2013.02.07 10:31:52 deal #1028 sell 0.01 EURUSD at 1.35354 done (based on order #1028) 2013.02.07 10:31:52 deal performed [#1028 sell 0.01 EURUSD at 1.35354] 2013.02.07 10:31:52 order performed sell 0.01 at 1.35354 [#1028 sell 0.01 EURUSD at 1.35354] 2013.02.07 10:31:52 HistoryDealGetInteger(1028, DEAL_MAGIC, DealMagic) = false! GetLastError() = 4755 Valerii Mazurenko 2013.02.23 14:42 #9313 Ashes: 計算してみてください。1年分のティック履歴(すべてのティックをM1にした場合)には、一時ファイル用に約3Gbのディスクスペースが必要です(重い仕事をするときは、"... \testerAgent-0.0.0-xxxxxtemp" フォルダーを見ましょう)。代理店数で掛け合わせる。17Gbはもう瀬戸際です(8エージェントあれば超えてますし)。 Expert Advisorの名前がおかしい。;)ありがとうございます。16GBでは足りないかもしれないというのは、想像もつかなかった。エージェントを別のドライブに移す予定です。650GBで十分だと思います。灰になる。 PS.テスター(743)が無名の限界を迎えている...。 私もよく見かけました。特にパソコンが混雑しているときです。しかし最近、コンピュータに負荷をかけると、1回のテスト実行でターミナルが死んでしまいます(容量不足が原因ではありません - ターミナルは650GBの空き容量があるところに設置されています)。しかし、可能な限りすべてのプロセスを終了させると、すべてがうまくいくのです。 sion 2013.02.23 14:46 #9314 voix_kas:助けてください。なぜ取引が見つからないのですか(エラー4755)?ストラテジーテスターでテストされたコードの場合、HistoryDealSelectに問題がある可能性があります。リンク 削除済み 2013.02.23 15:00 #9315 sion:ストラテジーテスターでテストされたコードであれば、HistoryDealSelectに問題がある可能性があります。ビュッHistorySelect()を使用したコンストラクションを使用すると、すべてうまく動作します。OnTradeTransactionでは動作しない。このイベントは、おそらく取引に関する情報が何らかのデータベースに登録される前に発生します。ドキュメントに明示されているにもかかわらず。TRADE_TRANSACTION_DEAL_ADD -取引を履歴に追加 する。注文の執行や口座残高の取引の結果として行われるものです。 sion 2013.02.23 15:08 #9316 voix_kas:HistorySelect()を使用すると、すべて正常に動作します。OnTradeTransaction が動作しない。おそらく、このイベントは、トランザクションに関する情報が何らかのデータベースに保存される前に発生します。ドキュメントに明示されているにもかかわらず。TRADE_TRANSACTION_DEAL_ADD -取引を履歴に追加 する。注文の実行や口座残高の取引を行った結果として行われるものです。ここでは、HistorySelect()で動作することを確認しましたが、HistoryDealSelectで同じリクエストを行うと既に失敗しています。この例では、データベースへの配置の速さは影響しませんでした。では、ストラテジーテスターでは、チェックするのでしょうか?本番では、ほとんどの場合、問題なく使えるでしょう。 削除済み 2013.02.23 15:17 #9317 sion:ここで テストしたところ、HistorySelect()ではうまくいきましたが、HistoryDealSelectでは同じリクエストがすでに失敗しています。この例では、データベースへの配置の速さは影響しませんでした。では、ストラテジーテスターでは、チェックするのでしょうか?本番では、問題なく使えると思われます。確認したところ、このコードにHistorySelect()をキャステレーションしたものは正常に動作するようです。void OnTradeTransaction(const MqlTradeTransaction& trans, const MqlTradeRequest& request, const MqlTradeResult& result) { if ((trans.type == TRADE_TRANSACTION_DEAL_ADD) && (trans.symbol == _Symbol)) { if (HistorySelect(0, TimeTradeServer())) { for (int i = 0; i < HistoryDealsTotal(); i++) { ulong Ticket = HistoryDealGetTicket(i); if (trans.deal == HistoryDealGetInteger(Ticket, DEAL_ORDER)) { Print(HistoryDealGetInteger(Ticket, DEAL_MAGIC)); break; } } } else Log("HistorySelect(0, TimeTradeServer() = false! GetLastError() = ", GetLastError()); } }この明らかなバグがいつ修正されるかは未知数です。 削除済み 2013.02.23 15:18 #9318 はい、ストラテジーテスターで 確認しています。リアルタイムで問題ありません。 sion 2013.02.23 15:27 #9319 voix_kas: はい、ストラテジーテスターで 確認しています。リアルタイムで問題なし。ユンズ 便利かもしれない、おそらく何も変わっていない。 削除済み 2013.02.23 16:17 #9320 sion:ヨンツ 便利かもしれませんね。おそらく、どちらも何も変わっていないでしょう。とにかく、私のニーズに対する回避策を見つけました。OnTradeTransactionを使用しない場合。HistoryDealGetTicket() 関数について、追加の質問があります。ドキュメントには、トランザクションのチケット番号を返すと書かれています。しかし、例えば、返された値が">0 "であることを確認する必要があるのか、など、エラーが返されるケースは明示的に記述されていない。HistoryOrderGetTicket() と同様です。しかし、後者の例では、返された値が正であるかどうかのチェックが含まれています。フォーラムを検索すると、注文の場合と取引の場合の両方で戻り値を確認する人がいることがわかります。例えば、HistoryDealTotal()-1より大きいオーダー番号のトランザクション要求があった場合、そのようなチェックが行われることがほとんどであろう。しかし、MQL5という言語のドキュメントがわかりやすいのは、開発者にとってありがたいことでした。 1...925926927928929930931932933934935936937938939...3185 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
リモート エージェントは、スペースがないため、数ヶ月前から定期的に(週に2、3回)脱落しています。
または
で、エージェントログはクリーンか。
と、実はスペースに余裕があるのです。
重いもの(1~2年かけて10個のツールのマルチビューという意味)をテストするときに表示される。ある時点で、エージェントはメガファイルを作成したいようです(EAにはプリントやファイルを使った作業はありませんが)。全体として、本当に仕事がしづらくなってきました。
Counting: 1年間のtick履歴(M1モードで全tick)は、一時ファイル用に約3Gbのディスクスペースを必要とします(重いジョブが実行されている場合は、"... \testerAgent-0.0.0-xxxxxtemp" フォルダーを確認してください)。代理店数で掛け合わせる。17Gbはもう瀬戸際です(8エージェントあれば超えてますし)。
Expert Advisorの名前がおかしい。;)
PS.テスター(743)が無名制限で詰む...。
助けてください。なぜ取引が見つからないのですか(エラー4755)?
端末の一覧です。
計算してみてください。1年分のティック履歴(すべてのティックをM1にした場合)には、一時ファイル用に約3Gbのディスクスペースが必要です(重い仕事をするときは、"... \testerAgent-0.0.0-xxxxxtemp" フォルダーを見ましょう)。代理店数で掛け合わせる。17Gbはもう瀬戸際です(8エージェントあれば超えてますし)。
Expert Advisorの名前がおかしい。;)
ありがとうございます。16GBでは足りないかもしれないというのは、想像もつかなかった。エージェントを別のドライブに移す予定です。650GBで十分だと思います。
PS.テスター(743)が無名の限界を迎えている...。
助けてください。なぜ取引が見つからないのですか(エラー4755)?
ストラテジーテスターでテストされたコードの場合、HistoryDealSelectに問題がある可能性があります。
リンク
ストラテジーテスターでテストされたコードであれば、HistoryDealSelectに問題がある可能性があります。
ビュッ
HistorySelect()を使用したコンストラクションを使用すると、すべてうまく動作します。
OnTradeTransactionでは動作しない。このイベントは、おそらく取引に関する情報が何らかのデータベースに登録される前に発生します。ドキュメントに明示されているにもかかわらず。
TRADE_TRANSACTION_DEAL_ADD -取引を履歴に追加 する。注文の執行や口座残高の取引の結果として行われるものです。
HistorySelect()を使用すると、すべて正常に動作します。
OnTradeTransaction が動作しない。おそらく、このイベントは、トランザクションに関する情報が何らかのデータベースに保存される前に発生します。ドキュメントに明示されているにもかかわらず。
TRADE_TRANSACTION_DEAL_ADD -取引を履歴に追加 する。注文の実行や口座残高の取引を行った結果として行われるものです。
ここでは、HistorySelect()で動作することを確認しましたが、HistoryDealSelectで同じリクエストを行うと既に失敗しています。この例では、データベースへの配置の速さは影響しませんでした。
では、ストラテジーテスターでは、チェックするのでしょうか?本番では、ほとんどの場合、問題なく使えるでしょう。
ここで テストしたところ、HistorySelect()ではうまくいきましたが、HistoryDealSelectでは同じリクエストがすでに失敗しています。この例では、データベースへの配置の速さは影響しませんでした。
では、ストラテジーテスターでは、チェックするのでしょうか?本番では、問題なく使えると思われます。
確認したところ、このコードにHistorySelect()をキャステレーションしたものは正常に動作するようです。
この明らかなバグがいつ修正されるかは未知数です。
はい、ストラテジーテスターで 確認しています。リアルタイムで問題なし。
ヨンツ 便利かもしれませんね。おそらく、どちらも何も変わっていないでしょう。
とにかく、私のニーズに対する回避策を見つけました。OnTradeTransactionを使用しない場合。
HistoryDealGetTicket() 関数について、追加の質問があります。
ドキュメントには、トランザクションのチケット番号を返すと書かれています。しかし、例えば、返された値が">0 "であることを確認する必要があるのか、など、エラーが返されるケースは明示的に記述されていない。
HistoryOrderGetTicket() と同様です。しかし、後者の例では、返された値が正であるかどうかのチェックが含まれています。
フォーラムを検索すると、注文の場合と取引の場合の両方で戻り値を確認する人がいることがわかります。
例えば、HistoryDealTotal()-1より大きいオーダー番号のトランザクション要求があった場合、そのようなチェックが行われることがほとんどであろう。しかし、MQL5という言語のドキュメントがわかりやすいのは、開発者にとってありがたいことでした。