エラー、バグ、質問 - ページ 2733 1...272627272728272927302731273227332734273527362737273827392740...3185 新しいコメント Igor Makanu 2020.05.02 22:53 #27321 Geess: 文字列配列の代わりにuchar配列のみを渡す。こっちの方がシンプルでいい。 例えば、このように変換することができます。 MQL4とMQL5で同じように動作します dllからMQLに値を返す必要がある場合、いずれにしてもMQL側でデータを受け取るためのバッファを用意する必要があります。 全部、説明すると長くなるので、もう全部やりました、ちょっとだけ質問させてください。 ありがとうございました。 Sergey Dzyublik 2020.05.04 13:58 #27322 MT5 (build 2402)で、名前空間内のオーバーロードされた関数の呼び出しの優先順位に問題がある不具合を修正しました。 1) グローバルネームスペースの関数がオーバーロードされた場合。 2)システム機能に負荷がかかっている場合。 void func(){ printf("1"); } namespace A{ void func(){ printf("2"); } bool OrderSend(const MqlTradeRequest &trader_request, MqlTradeResult &trade_result){ printf("2"); return true; } class B{ public: void test(){ func(); // PRINT: 1 Expected result: 2 MqlTradeRequest request; MqlTradeResult result; OrderSend(request, result); // Compile Error: 'OrderSend' - override system function. Expected result: 2 } }; }; void OnStart(){ A::B b; b.test(); } valera_nur 2020.05.04 14:27 #27323 ごきげんよう。 スナイパーエキスパートアドバイザーを持っていますが、MT4 Alpariの新しいビルドで動作しません、それを修正する方法はありますか?チャートにもインストールされていません。1090ビルドで動作しています。 MT4の登録は済んでいるのですが、インターネットに接続できず、「Old version」と表示されます。 削除済み 2020.05.05 05:44 #27324 valera_nur: ごきげんよう。 スナイパーエキスパートアドバイザーを持っていますが、MT4 Alpariの新しいビルドで動作しません、それを修正する方法はありますか?チャートにもインストールされていません。1090ビルドで動作しています。 しかし、1090ビルドではMT4ターミナルがインターネットに接続できず、「Old version」と表示されます。 Expert Advisorのソースファイルをお持ちの方は、Freelanceに申請してください。彼らはあなたを助けてくれるでしょう。 もちろん、Expert Advisorの作者に直接連絡するのが一番良い方法です。 Igor Makanu 2020.05.05 21:03 #27325 .Net上のWinFormsでウィンドウ内にグラフィカルなテーブルを作成するMQL5用のDLLを書きました。 MQL4用のネイティブ・コールにコードを移植しました。 表中の5列、5行の更新速度を評価するために速度を測定しました。 for(int j = 0; j < 3; j++) { uint start = GetTickCount(); for(int i = 0; i < 100000; i++) { string s = (string)(i) + ";" + (string)(i + 1) + ";" + (string)(i + 2) + ";" + (string)(i + 3) + ";" + (string)(i + 4) + "\n" + (string)(i) + ";" + (string)(i + 1) + ";" + (string)(i + 2) + ";" + (string)(i + 3) + ";" + (string)(i + 4) + "\n" + (string)(i) + ";" + (string)(i + 1) + ";" + (string)(i + 2) + ";" + (string)(i + 3) + ";" + (string)(i + 4) + "\n" + (string)(i) + ";" + (string)(i + 1) + ";" + (string)(i + 2) + ";" + (string)(i + 3) + ";" + (string)(i + 4) + "\n" + (string)(i) + ";" + (string)(i + 1) + ";" + (string)(i + 2) + ";" + (string)(i + 3) + ";" + (string)(i + 4) + "\n"; TBL_FillAllTable(htbl, s); } uint time = GetTickCount() - start; PrintFormat("Цикл %d время = %d ms", j, time); } ..... void TBL_FillAllTable(int handle, string data, string ColSeparator = ";", string RowSeparator = "\n") { #ifdef __MQL4__ refreshalldata(handle,data,ColSeparator,RowSeparator); #endif #ifdef __MQL5__ SHARPTABLE::refreshalldata(handle, data,ColSeparator, RowSeparator); #endif } //+------------------------------------------------------------------+ MQL5です。 2020.05.05 22:55:33.220 tbl_tst (EURUSD,H1) Cycle 0 time = 143563 ms 2020.05.05 22:57:55.370 tbl_tst (EURUSD,H1) Cycle 1 time = 142156 ms 2020.05.05 23:00:19.121 tbl_tst (EURUSD,H1) Cycle 2 time = 143750 ms MQL4です。 2020.05.05 22:51:25.359 tbl_tst EURUSD,H1: サイクル2時間 = 66813 ms 2020.05.05 22:50:18.551 tbl_tst EURUSD,H1: タイムフレーム1 = 69219 ms 2020.05.05 22:49:09.332 tbl_tst EURUSD,H1: Øècle 0 time = 67062 ms dllのコードは99%同じです。私は、記事https://www.mql5.com/ru/articles/249 の例を使ってMQL4で移植しました。 私には大きな違いに見えます。 ファイル: tst_winforms.jpg 239 kb Errors, bugs, questions PREDICT time period Issue with StringToDouble() Renat Fatkhullin 2020.05.05 21:10 #27326 あなたのライブラリコードとMQLのフルコードを添付して、あなたがチェックし、100%再現できるようにします。 Igor Makanu 2020.05.05 21:24 #27327 Renat Fatkhullin: ライブラリコードとMQLのフルコードを添付して、確認と100%の再現ができるようにしてください。 以下はテストスクリプトです。 プロジェクトや VSを原則的にPMに送ることができる Igor Makanu 2020.05.05 21:47 #27328 上記のテストが実行されました。 2020.05.05 23:46:03.512 Terminal MetaTrader 5 x64 build 2402 started for MetaQuotes Software Corp. 2020.05.05 23:46:03.515 Terminal Windows 10 build 18363, Intel Core i3 M 380 @ 2.53GHz, 0 / 2 Gb メモリ, 149 / 237 Gb ディスク, IE 11, UAC, GMT+4 ノートパソコンで端末が更新 されないままです。 2020.05.05 23:37:15.336 Terminal MetaTrader 5 - FXOpen x64build 2280 開始 (FXOpen Investments Inc.) 2020.05.05 23:37:15.338 Terminal Windows 10 (build 18363) x64, IE 11, UAC, Intel Core i3 M 380 @ 2.53GHz, Memory: 1071 / 2804 Mb, Disk: 149 / 237 Gb, GMT+4。 添付した古いビルドコードで実行したところ、テスト時間が改善されました。 2020.05.05 23:40:09.553 tbl_tst (EURUSD,H1) Cycle 0 time = 68938 ms 2020.05.05 23:41:17.911 tbl_tst (EURUSD,H1) Cycle 1 time = 68343 ms 2020.05.05 23:42:26.912 tbl_tst (EURUSD,H1) Cycle 2 time = 69000 ms Errors, bugs, questions Any questions from newcomers Questions on OOP in 削除済み 2020.05.05 22:54 #27329 Igor Makanu: 上記のテストが実行されました。 私のノートパソコンには、まだ更新されていない端末が あります。 添付したコードを古いビルドで実行したところ、より良いテスト時間が得られました。 2020.05.05 23:40:09.553 tbl_tst (EURUSD,H1) Cycle 0 time = 68938 ms 2020.05.05 23:41:17.911 tbl_tst (EURUSD,H1) Cycle 1 time = 68343 ms 2020.05.05 23:42:26.912 tbl_tst (EURUSD,H1) Cycle 2 time = 69000 ms 私の2404でもMT4と同じ速度が出ています。 Igor Makanu 2020.05.05 23:04 #27330 Geess: 2404でもMT4と同じ速度が出ています。 MT5がPCのリソースに負担をかけるようになったのではと、うすうす感じてはいるのですが、明日自分のPCで確認してみます。 そうそう、ここでもう一つ、新しいビルドのPC構成の行に戸惑いました。私の投稿の上に、なぜか新しいビルドがノートPCのメモリについて書いているのです。 0 / 2 Gb メモリ 起動条件は同じで、MEと1台の端末だけが動いている状態でした ZS: でも、WinFormのリフレッシュレートが1ms以下なんです......。不覚にも;) 1...272627272728272927302731273227332734273527362737273827392740...3185 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
文字列配列の代わりにuchar配列のみを渡す。こっちの方がシンプルでいい。
例えば、このように変換することができます。
MQL4とMQL5で同じように動作します
dllからMQLに値を返す必要がある場合、いずれにしてもMQL側でデータを受け取るためのバッファを用意する必要があります。
全部、説明すると長くなるので、もう全部やりました、ちょっとだけ質問させてください。
ありがとうございました。
1) グローバルネームスペースの関数がオーバーロードされた場合。
2)システム機能に負荷がかかっている場合。
ごきげんよう。
スナイパーエキスパートアドバイザーを持っていますが、MT4 Alpariの新しいビルドで動作しません、それを修正する方法はありますか?チャートにもインストールされていません。1090ビルドで動作しています。
MT4の登録は済んでいるのですが、インターネットに接続できず、「Old version」と表示されます。
ごきげんよう。
スナイパーエキスパートアドバイザーを持っていますが、MT4 Alpariの新しいビルドで動作しません、それを修正する方法はありますか?チャートにもインストールされていません。1090ビルドで動作しています。
しかし、1090ビルドではMT4ターミナルがインターネットに接続できず、「Old version」と表示されます。
Expert Advisorのソースファイルをお持ちの方は、Freelanceに申請してください。彼らはあなたを助けてくれるでしょう。
もちろん、Expert Advisorの作者に直接連絡するのが一番良い方法です。
.Net上のWinFormsでウィンドウ内にグラフィカルなテーブルを作成するMQL5用のDLLを書きました。 MQL4用のネイティブ・コールにコードを移植しました。
表中の5列、5行の更新速度を評価するために速度を測定しました。
MQL5です。
2020.05.05 22:55:33.220 tbl_tst (EURUSD,H1) Cycle 0 time = 143563 ms
2020.05.05 22:57:55.370 tbl_tst (EURUSD,H1) Cycle 1 time = 142156 ms
2020.05.05 23:00:19.121 tbl_tst (EURUSD,H1) Cycle 2 time = 143750 ms
MQL4です。
2020.05.05 22:51:25.359 tbl_tst EURUSD,H1: サイクル2時間 = 66813 ms
2020.05.05 22:50:18.551 tbl_tst EURUSD,H1: タイムフレーム1 = 69219 ms
2020.05.05 22:49:09.332 tbl_tst EURUSD,H1: Øècle 0 time = 67062 ms
dllのコードは99%同じです。私は、記事https://www.mql5.com/ru/articles/249 の例を使ってMQL4で移植しました。
私には大きな違いに見えます。
ライブラリコードとMQLのフルコードを添付して、確認と100%の再現ができるようにしてください。
以下はテストスクリプトです。
プロジェクトや VSを原則的にPMに送ることができる
上記のテストが実行されました。
2020.05.05 23:46:03.512 Terminal MetaTrader 5 x64 build 2402 started for MetaQuotes Software Corp.
2020.05.05 23:46:03.515 Terminal Windows 10 build 18363, Intel Core i3 M 380 @ 2.53GHz, 0 / 2 Gb メモリ, 149 / 237 Gb ディスク, IE 11, UAC, GMT+4
ノートパソコンで端末が更新 されないままです。
2020.05.05 23:37:15.336 Terminal MetaTrader 5 - FXOpen x64build 2280 開始 (FXOpen Investments Inc.)
2020.05.05 23:37:15.338 Terminal Windows 10 (build 18363) x64, IE 11, UAC, Intel Core i3 M 380 @ 2.53GHz, Memory: 1071 / 2804 Mb, Disk: 149 / 237 Gb, GMT+4。
添付した古いビルドコードで実行したところ、テスト時間が改善されました。
2020.05.05 23:40:09.553 tbl_tst (EURUSD,H1) Cycle 0 time = 68938 ms
2020.05.05 23:41:17.911 tbl_tst (EURUSD,H1) Cycle 1 time = 68343 ms
2020.05.05 23:42:26.912 tbl_tst (EURUSD,H1) Cycle 2 time = 69000 ms
上記のテストが実行されました。
私のノートパソコンには、まだ更新されていない端末が あります。
添付したコードを古いビルドで実行したところ、より良いテスト時間が得られました。
2020.05.05 23:40:09.553 tbl_tst (EURUSD,H1) Cycle 0 time = 68938 ms
2020.05.05 23:41:17.911 tbl_tst (EURUSD,H1) Cycle 1 time = 68343 ms
2020.05.05 23:42:26.912 tbl_tst (EURUSD,H1) Cycle 2 time = 69000 ms
私の2404でもMT4と同じ速度が出ています。
2404でもMT4と同じ速度が出ています。
MT5がPCのリソースに負担をかけるようになったのではと、うすうす感じてはいるのですが、明日自分のPCで確認してみます。
そうそう、ここでもう一つ、新しいビルドのPC構成の行に戸惑いました。私の投稿の上に、なぜか新しいビルドがノートPCのメモリについて書いているのです。
0 / 2 Gb メモリ
起動条件は同じで、MEと1台の端末だけが動いている状態でした
ZS: でも、WinFormのリフレッシュレートが1ms以下なんです......。不覚にも;)