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

 
Konstantin Seredkin:

自分でアンロードするまでずっとぶら下がっています。スクリーンショットを撮ったときは、MT5を使うのは私のタイムゾーンでマーケットが閉じた 土曜日の朝に終わり、日曜日はゲームをするために座って、プロセスを殺すようになったのです。

1ヶ月前にライセンスを再インストールしていますが、おそらく私の方に問題があるのでしょう。

ぶら下がる」エージェントのダンプを取る。見てみよう。

 
DMITRII PECHERITSA:
三項演算子でコンパイルに失敗する
三項演算子でコンパイルに失敗 する?


何かご提案ありますか?
なんで

三項演算子は暗黙のうちに基底クラスにキャストしない

明示的なキャストを使用する。

interface A{};
class B:public A{};
class C:public A{};
void OnStart(void)
  {
   A* x=(true)? (A *)new B : (A *)new C; //invalid cast operation
  }


三項演算子はオペランドを暗黙のうちに基底クラスにキャストしません - 明示的なキャストを使用してください。

 
A100:
エラーメッセージは ありません。

が、それはそれとして。

根本的な違いは何でしょうか?

最初のケースでは、エラーメッセージも表示されるはずです - この関数名はすでに列挙に使用されています。

 

開発者の皆様、他のスクリプトやサービスから同期モードでスクリプトを実行する機能を追加してください。

ありがとうございました。

 
Aliaksandr Hryshyn:

開発者の皆様、他のスクリプトやサービスから同期モードでスクリプトを実行する機能を追加してください。

よろしくお願いします。

EAで大きなファイルを扱うのは事情があって不便なので、何十個も並列に動かして全コアに負荷をかけ、計算を 高速化するスクリプトを使っているのですが、それをサポートしています。

 
こんにちは。navigator MEでCSVファイルをデータベースにインポートできないのですが、アドバイスをお願いします。インポートデータベースエラーと 表示されます。CSVのオプションをすべて試しました。どなたかこれを実現された方、あるいはバグでしょうか?バージョン:5.0 build 27.15.
 

EX5を変更すると、以前に受信した本EAのオプトファイルを開くと、パスの入力パラメータが消えてしまいます。

いつでも見せてくださいね。

 

シグナルの中には、そんな警告が書かれています。

これは何につながるのでしょうか?アカウントのアクセス情報は変更されていません。

 
fxsaber:

シグナルの中には、そんな警告が書かれています。

これは何につながるのでしょうか?アカウントのアクセス情報は変更されていません。


定期的に発生します。そうすれば、再接続されます。何もする必要はありません。

 
Alexey Viktorov:

私を理解する必要はなく、ドキュメントを理解する必要があるのです。注文やポジションのリストに基づいてソートすることを提案しました。また、あるトピックでSlavaは、オブジェクトを隠して もう一度表示すれば十分で、そうすれば他のオブジェクトよりも上位にあり、「ネズミのクリック」イベントを最初に受け取れる、と言っていました。間違っていたら、ごめんなさい。リストの並び順を把握し、みんなに伝える。私も考えを改めます。

長い間格闘し、実験した結果、MQL5ではオブジェクトのリストでのソートにバグがあると思われます。このコードをMQL4で試したところ、順次作成される4つのFiboレベルには、0.1.2.3という正しいオブジェクトリスト番号が振られていることが判明しました。ところがMQL5では、次々と作成される4つの連続したシンボルに天井から番号が振られ、名前を変えたときだけ、名前を変えた順に並びます。 どうしたらいいでしょうか? ターミナルを確認してください、もしかしたら、私のターミナルがうまく機能していないのかもしれません、3台のパソコンで試しましたが(((()))。

//+------------------------------------------------------------------+
//|                                                            F.mq5 |
//|                        Copyright 2020, MetaQuotes Software Corp. |
//|                                             https://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2020, MetaQuotes Software Corp."
#property link      "https://www.mql5.com"
#property version   "1.00"
//+------------------------------------------------------------------+
//|                                                  Fibo_Massiv.mq5 |
//|                        Copyright 2020, MetaQuotes Software Corp. |
//|                                             https://www.mql5.com |
//+------------------------------------------------------------------+
string NameFiboUp[15];                               // Объявление массива
string NameFiboDown[15];                               // Объявление массива
string NameFibo[9];                               // Объявление массива


//+------------------------------------------------------------------+
int OnInit()
  {
//---
   NameFiboUp[1]="FiboUp1 ";
   NameFiboDown[1]="FiboDown1 ";
   NameFiboUp[2]="FiboUp2 ";
   NameFiboDown[2]="FiboDown2";
   NameFiboUp[3]="FiboUp3";
   NameFiboDown[3]="FiboDown3 ";
   NameFiboUp[4]="FiboUp4 ";
   NameFiboDown[4]="FiboDown4 ";
   NameFiboUp[5]="FiboUp5";
   NameFiboDown[5]="FiboDown5 ";
   NameFiboUp[6]="FiboUp6 ";
   NameFiboDown[6]="FiboDown6 ";
   NameFiboUp[7]="FiboUp7 ";
   NameFiboDown[7]="FiboDown7 ";
   NameFiboUp[8]="FiboUp8 ";
   NameFiboDown[8]="FiboDown8 ";
   NameFiboUp[9]="FiboUp9 ";
   NameFiboDown[9]="FiboDown9 ";
   NameFiboUp[10]="FiboUp10 ";
   NameFiboDown[10]="FiboDown10";
   NameFiboUp[11]="FiboUp11 ";
   NameFiboDown[11]="FiboDown11 ";
   NameFiboUp[12]="FiboUp12 ";
   NameFiboDown[12]="FiboDown12 ";
   NameFiboUp[13]="FiboUp13 ";
   NameFiboDown[13]="FiboDown13";
   NameFiboUp[14]="FiboUp14 ";
   NameFiboDown[14]= "FiboDown14";
//---------------------------------------------
   NameFibo[1]="M1";
   NameFibo[2]="M5";
   NameFibo[3]="M15";
   NameFibo[4]="H1";
   NameFibo[5]="H4";
   NameFibo[6]="Da";
   NameFibo[7]="We";
   NameFibo[8]="Mo";
   return(INIT_SUCCEEDED);
  }
//+------------------------------------------------------------------+
//| Expert deinitialization function                                 |
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
  {
//---

  }
//+------------------------------------------------------------------+
//| Expert tick function                                             |
//+------------------------------------------------------------------+
void OnTick()
  {
   int UP=1;
   int Down=1;
   string  nameUP   = "FiboUp";
   string  nameDown = "FiboDown";
   double FiboDown[4][10],FiboUp[4][10];  // 2x мерный  массив
//  Alert("ArraySize(FiboDown)= ", ArraySize(FiboDown));
   int Fibo_Koll = ObjectsTotal(0,0,OBJ_FIBO);     //Запрос колличества объектов Fibo

//_________________________________________________________
   if(Fibo_Koll==0) //Если нет не одного фибо выход        //
      return;                                              //
//_________________________________________________________//

   int Koll[];  //Индексация и запись в массив по порядку появления фибо в окне инструментов
   int Tip[];    //Запись типа Fibo в массив по порядку появления фибо в окне инструментов
   ArrayResize(Koll,Fibo_Koll); // Устанавливает новый размер в первом измерении массива Koll []
   ArrayResize(Tip,Fibo_Koll);  // Устанавливает новый размер в первом измерении массива Tip []


   for(int i=0; i < Fibo_Koll; i++)
     {
      string n=ObjectName(0,0,0,OBJ_FIBO);

      //--------------------------------------------------------

      //----------------------------------------------------------------------------------------
      double   Fibo_Level_0= ObjectGetDouble(
                                0,          // идентификатор графика
                                n,              // имя объекта
                                OBJPROP_PRICE,           // идентификатор свойства
                                0     // модификатор свойства
                             );


      double   Fibo_Level_1= ObjectGetDouble(
                                0,          // идентификатор графика
                                n,              // имя объекта
                                OBJPROP_PRICE,           // идентификатор свойства
                                1     // модификатор свойства
                             );
      //------------------------------------------------------------------------------------------------------
      if(Fibo_Level_0>Fibo_Level_1)
        {

         //вызов функции расчёта уровня 78.6
         double Fibo_78_Up = Function_Up(Fibo_Level_0, Fibo_Level_1);
         //Изменение имени объекта
         /*   bool l =  StringSetLength(      //Устанавливает для  строки указанную длину в символах 2
                         n,       // строка
                         2    // новая длина строки
                      );
            //-----------------------------------------------------------
            int N = 1;
            string q;

            for(int e = 1; N != 0; e++) // пока N не == 0, гоняем функцию StringCompare. сравнивая обрезанную переменную(StringSetLength) с массивом NameFibo[]
              {
               N= StringCompare(
                     n,              // первая сравниваемая строка
                     NameFibo[e],    // вторая сравниваемая строка
                     true      // режим учета регистра букв при сравнении
                  );

               q= NameFibo[e];

              }
            n= q+NameFiboUp[1];*/


         //--------------------------------------------------------------------
         FiboUp[UP][1]=1;    // Тип обектов 1 == FiboUp
         FiboUp[UP][2]=UP;     // Нумерация обектов FiboUp по типу
         FiboUp[UP][3]=Fibo_78_Up;   // 78.6%
         FiboUp[UP][4]=0;       // 61.8%
         FiboUp[UP][5]=0;         // 50%
         //----------------------------------------------------------------------------------------------------------
         bool  F =ObjectSetString(0,n,OBJPROP_NAME,NameFiboUp[UP]);

         UP++;
        }
      //----------------------------------------------------------------------------------
      else
        {
         //вызов функции расчёта уровня 78.6
         double Fibo_78_Down = Function_Down(Fibo_Level_0, Fibo_Level_1);
         //Изменение имени объекта
         /*     bool l =  StringSetLength(      //Устанавливает для  строки указанную длину в символах 2
                           n,       // строка
                           2    // новая длина строки
                        );
              //-----------------------------------------------------------
              int N = 1;
              string q;

              for(int e = 1; N != 0; e++) // пока N не == 0, гоняем функцию StringCompare. сравнивая обрезанную переменную(StringSetLength) с массивом NameFibo[]
                {
                 N= StringCompare(
                       n,              // первая сравниваемая строка
                       NameFibo[e],    // вторая сравниваемая строка
                       true      // режим учета регистра букв при сравнении
                    );

                 q= NameFibo[e];

                }
              n= q+NameFiboUp[1];*/

         //-------------------------------------------------------------------
         FiboDown[Down][1]=2;    // // Тип обектов 2 == FiboDown
         FiboDown[Down][2]=Down;     // Нумерация обектов  по типу
         FiboDown[Down][3]=Fibo_78_Down;   // 78.6%
         FiboDown[Down][4]=0;       // 61.8%
         FiboDown[Down][5]=0;         // 50%
         //------------------------------------------------------------------
         //Изменение имени объекта
         bool  F =ObjectSetString(0,n,OBJPROP_NAME,NameFiboDown[Down]);


         Down++;

        }
     }
//+------------------------------------------------------------------+

   ArrayPrint(
      FiboUp,             // выводимый массив
      2,      // количество десятичных знаков после запятой
      NULL,      // разделитель между значениями полей структуры
      0,             // индекс первого выводимого элемента
      WHOLE_ARRAY,   // количество выводимых элементов
      ARRAYPRINT_HEADER|ARRAYPRINT_INDEX|ARRAYPRINT_ALIGN
   );

   ArrayPrint(
      FiboDown,             // выводимый массив
      2,      // количество десятичных знаков после запятой
      NULL,      // разделитель между значениями полей структуры
      0,             // индекс первого выводимого элемента
      WHOLE_ARRAY,   // количество выводимых элементов
      ARRAYPRINT_HEADER|ARRAYPRINT_INDEX|ARRAYPRINT_ALIGN
   );

  }
// for(int i=0; i<ArraySize(Koll); i++)
//  printf("Koll[%d] = %d",i,Koll[i]);


//------------------------------------------------------------------------------------------------------

//+------------------------------------------------------------------+
//+------------------------------------------------------------------+
double Function_Up(double a, double b)    // имя функции и список параметров
  {
   double Sum_100 = a - b; //Вычисляем 100% В пунктах от точек построения фибо
   double Sum_78  = Sum_100 * 78.6 / 100;  //Вычисляем 78.6% В пунктах
   return (Sum_78 + b);           // Вычисляем 78.6% в цене инструмента
  }
//+------------------------------------------------------------------+
double Function_Down(double a, double b)    // имя функции и список параметров
  {
   double Sum_100 = b - a ; //Вычисляем 100% В пунктах от точек построения фибо
   double Sum_78  = Sum_100 * 21.4 / 100;  //Вычисляем 78.6% В пунктах
   return (Sum_78 + a);           // Вычисляем 78.6% в цене инструмента
  }
//+------------------------------------------------------------------+