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

 
Sergey Dzyublik:
MT5(build2323)の不具合。
テンプレート関数内部では、明示的な型変換で 渡されたポインタはクラスと同じように動作し、それに応じてコンパイル時エラーが発生します。

投稿ありがとうございます、修正しました

 
Aliaksandr Hryshyn:

そこで違うのは、括弧の有無です。

   ulong n_yes=3*1000;; ok  
   ulong n_no=(3*1000;); ne ok


 
Aliaksandr Hryshyn:

そこで違うのは、括弧の有無です。

というのは勝手ですが、書く前に確認できたはずです。

 
MT5のバグ(ビルド2361)C++の動作と比較してオーバーロードされたテンプレート関数の呼び出しの優先順位に別の問題があります。
MT5ではコンパイルエラー「ambiguous call to overloaded function」、C++ではOKです。
C++オンライン(https://onlinegdb.com/Sy8cqdFr8)

template<typename _Tp>
struct It_wrapper{
   _Tp p;
};

template<typename _Tp>
struct It_g : public It_wrapper<_Tp>{};


template<typename _It, typename _Tp>
int __test_print(const It_wrapper<_It> &it, int n, const _Tp &value){
   Print(it.p);
   return 0;
};

template<typename _It> 
int test_print(const It_wrapper<_It> &it, int n, const int value){
   return __test_print(it, n, value);
}    

template<typename _It, typename _ValueType>                                                                                                    
int test_print(const It_wrapper<_It> &it, int n, const _ValueType &value){                                                              
   return __test_print(it, n, value);                                                                                                     
}   
  
   
void OnStart(){
   It_g<int> it;
   It_g<string> it_s;
   
   it.p = 4;
   it_s.p = "test";
   
   const int n = 10;
   test_print(it, 5, n);          // Compile Error: 'test_print' - ambiguous call to overloaded function
   test_print(it_s, 5, n);        // Compile Error: 'test_print' - ambiguous call to overloaded function
};


int main(){
   OnStart();
   return 1;
};
 

マーケットプレイスでテキストエディタが壊れ、フルスクリーンに展開しようとすると保存ボタンだけがハングアップする・・・。

さらに大きな重量の写真をアップロードすることが可能です。写真はアップロードされますが、説明文に正しく表示されません。
 
バグ1 テストのコミッションposition.Comision()が常に0になる(テスターではコミッションがポジション履歴に表示される)ため、コミッションを使用して計算を行うExpert Advisorのパラメータの最適化に影響する。

バグ2 simbol.Spred()がプログラム開始後3回目のアクセスで初めて実測値を表示する

バグ3 テストエージェント(ローカルネットワークのみで作業)を何時間も見失ったとき、彼はそれを忘れることができず、エージェントがすでにローカルネットワークに出現していても見つけようとします。エージェントIPを変更しなければなりませんが、テスターが1時間以内にエージェントを忘れた後、私はエージェントIPを返し、テスターは作業を継続します。その結果、運良く30分から数時間の間、検査がストップすることになりました。

バグ4遺伝的アルゴリズムの説明の 中で、テストを停止したとき、またはテストパラメータを変更しない場合は手動でテストを停止したときに最適化キャッシュが保存され、テストを再開したときに停止した時点から最適化が継続されると書かれていますが、実際にはデタラメではなく、最適化はすべてやり直し、停止した最適化のファイル結果にも最適化が追加されています。その結果、最適化結果ファイルには最適化結果が増えるだけで、最適なパラメータを見つけるのに実用的でなく、全体の最適化時間が長くなってしまうのです。

mql5コンパイラのバグ5は、単に最適化されていないだけだと思われます。プログラムが遅くなっているだけで、パラメータの最適化の速度に影響しているのです。20行のプログラムがそんなに遅いはずがない。
 
Vladimir Pastushak:

Marketはテキストエディタが壊れてしまい、フルスクリーンに拡大しようとすると保存ボタンだけがハングアップしてしまいます.

さらに大きな重量の写真をアップロードすることが可能です。写真はアップロードされますが、説明文に正しく表示されません。

こんにちは。

バグレポート ありがとうございました

写真の問題点を詳しく教えてください。

 

テスターでは問題なく動作していたのですが、実際の口座で使用したところ、ある場所でタンバリンが始まり、ポジションは開くのですが、他のポジションが閉じないという奇妙な問題が発生しました。これに関して質問なのですが、リアル口座での取引で2つの注文を同時に出すこと(新規と決済)は可能なのでしょうか?

Razgon_y=OrderSend(Symbol(),OP_BUY,Razgon_Lot,Ask,100,0,0,Razgon_Comment,Razgon_Magic,0,clrBlue); 
       if(Razgon_y<0) 
       { 
        Print("OrderSend завершилась с ошибкой #",GetLastError()); 
       } 
       else ( Print("Функция OrderSend успешно выполнена") );
       for(int Razgon_index=0; Razgon_index<=OrdersTotal(); Razgon_index++)
       {
        if(OrderSelect(Razgon_index,SELECT_BY_POS,MODE_TRADES)==true)
        {
         if(OrderMagicNumber()==Razgon_Magic && OrderType()==OP_SELL && OrderProfit()>0)
         {
          Razgon_OC=OrderClose(OrderTicket(),OrderLots(),Ask,100,clrGreen);
          if(Razgon_OC==false) 
          { 
           Print("OrderClose завершилась с ошибкой #",GetLastError()); 
          } 
           else ( Print("Функция OrderClose успешно выполнена") );
          Razgon_AccountEquity=AccountEquity();
         }
        }
       }
      }
 
Maksim Slovakov:

テスターでは正常に動作しているのですが、実際の口座で使用したところ、ある場所でタンバリンが始まり、ポジションは開くのですが、他のポジションが閉じないという奇妙な問題が発生しました。これに関して質問なのですが、リアル口座での取引で2つの注文(新規と決済)を同時に出すことは可能なのでしょうか?

ポジションを閉じる 際のサイクルが正しくありません。逆のサイクルを行う。

 

実データ上でデバッガを使用した作業中にターミナルで重大なエラーを 発見(build 2361)。

2020.03.16 16:30:41.730 (RTS Splice,M1)    crash -->  00000115A15300A5 488D0B            lea        rcx, [rbx]

2020.03.16 16:30:41.730 (RTS Splice,M1)               00000115A15300A8 E8850B0000        call       0x115a1530c32

2020.03.16 16:30:41.730 (RTS Splice,M1)               00000115A15300AD 90                nop        

2020.03.16 16:30:41.730 (RTS Splice,M1)               00000115A15300AE 89842488000000    mov        [rsp+0x88], eax

2020.03.16 16:30:41.730 (RTS Splice,M1)               00000115A15300B5 F4                hlt        

2020.03.16 16:30:41.730 (RTS Splice,M1)               00000115A15300B6 842488            test       [rax+rcx*4], ah

2020.03.16 16:30:41.730 (RTS Splice,M1)               00000115A15300B9 0000              add        [rax], al

2020.03.16 16:30:41.730 (RTS Splice,M1)

2020.03.16 16:30:41.730 (RTS Splice,M1) 00: 0x00000115A15300A5

2020.03.16 16:30:41.730 (RTS Splice,M1) 01: 0x00000115A7DFFD64

2020.03.16 16:30:41.730 (RTS Splice,M1) 02: 0x00000001776FA270

2020.03.16 16:30:41.730 (RTS Splice,M1) 03: 0x0000000000000001

2020.03.16 16:30:41.730 (RTS Splice,M1) 04: 0x00000001776FA23C

2020.03.16 16:30:41.730 (RTS Splice,M1)