L'ho appeso tutto il tempo finché non lo scarico io stesso, quando ho fatto lo screenshot, usando MT5 era finito il sabato mattina quando il mercato ha chiuso nel mio fuso orario, la domenica mi sono seduto a giocare e ho iniziato a uccidere i processi.
Probabilmente il problema è dalla mia parte, anche se la licenza è stata reinstallata un mese fa.
Fate una cagata dell'agente "appeso". Diamo un'occhiata.
Cari sviluppatori, per favore aggiungete la possibilità di eseguire script da altri script e servizi in modalità sincrona.
Grazie in anticipo.
Io sostengo, non è conveniente lavorare con grandi file da EA per alcune ragioni, uso script che devono essere eseguiti decine in parallelo per caricare tutti i core e velocizzare il calcolo.
Buon pomeriggio. Per favore consigliatemi, non posso importare un file CSV nel database tramite navigatore ME. Dice: import database error. Ho provato tutte le opzioni CSV. Qualcuno è riuscito a farlo o è un bug? Versione: 5.0 build 27.15.
Non dovete capire me, dovete capire la documentazione. Ho suggerito di ordinare in base alla lista degli ordini o delle posizioni. E anche in uno dei topic Slava ha detto che è sufficiente, basta nascondere l'oggetto e visualizzarlo di nuovo, in modo che fosse sopra tutti gli altri e ricevesse per primo l'evento "clic del topo". Se è sbagliato, mi dispiace. Capire come è ordinata la lista e dirlo a tutti. Anch'io cambierò idea.
Dopo lunghe lotte ed esperimenti, credo che ci sia un bug in MQL5 con l'ordinamento degli oggetti nella lista degli oggetti. Poiché ho provato questo codice in MQL4 senza alcuna speranza speciale per una corretta elaborazione, ho scoperto che 4 livelli Fibo creati in sequenza hanno una numerazione corretta nella lista degli oggetti: 0.1.2.3. Il primo ==0, il secondo ==1, ecc, In MQL5, però, 4 simboli consecutivi creati uno dopo l'altro hanno la numerazione dal soffitto, e solo se cambio i loro nomi, si allineano nell'ordine in cui ho cambiato i loro nomi. Cosa devo fare? Controlla il mio terminale, forse il mio terminale non funziona bene, anche se ho provato su 3 computer (((()).
//+------------------------------------------------------------------+//| 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]; // Объявление массива//+------------------------------------------------------------------+intOnInit()
{
//---
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 |//+------------------------------------------------------------------+voidOnDeinit(constint reason)
{
//---
}
//+------------------------------------------------------------------+//| Expert tick function |//+------------------------------------------------------------------+voidOnTick()
{
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.6double 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.6double 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% в цене инструмента
}
//+------------------------------------------------------------------+
L'ho appeso tutto il tempo finché non lo scarico io stesso, quando ho fatto lo screenshot, usando MT5 era finito il sabato mattina quando il mercato ha chiuso nel mio fuso orario, la domenica mi sono seduto a giocare e ho iniziato a uccidere i processi.
Probabilmente il problema è dalla mia parte, anche se la licenza è stata reinstallata un mese fa.
Fate una cagata dell'agente "appeso". Diamo un'occhiata.
qualche suggerimento?
L'operatore ternario non fa il casting alla classe base implicitamente
Usa il casting esplicito
L'operatore ternario non lancia gli operandi alla classe base implicitamente - usa il casting esplicito.
Non c'è nessun messaggio di errore:
ma le cose stanno così:
Qual è la differenza fondamentale?
Nel primo caso ci sarebbe dovuto essere anche un messaggio di errore - il nome della funzione è già usato per l'enumerazione.
Cari sviluppatori, per favore aggiungete la possibilità di eseguire script da altri script e servizi in modalità sincrona.
Grazie in anticipo
Cari sviluppatori, per favore aggiungete la possibilità di eseguire script da altri script e servizi in modalità sincrona.
Grazie in anticipo.
Io sostengo, non è conveniente lavorare con grandi file da EA per alcune ragioni, uso script che devono essere eseguiti decine in parallelo per caricare tutti i core e velocizzare il calcolo.
Se si cambia EX5, quando si aprono gli opt-file precedentemente ricevuti di questo EA, i parametri di ingresso dei passaggi scompaiono.
Una grande richiesta di mostrarli sempre!
C'è un tale avvertimento nel Segnale.
A cosa può essere collegato? I dettagli di accesso all'account non sono stati modificati.
C'è un tale avvertimento nel Segnale.
A cosa può essere collegato questo? I dettagli di accesso all'account non sono stati modificati.
Succede periodicamente. Poi si riconnetterà. Non c'è bisogno di fare nulla.
Non dovete capire me, dovete capire la documentazione. Ho suggerito di ordinare in base alla lista degli ordini o delle posizioni. E anche in uno dei topic Slava ha detto che è sufficiente, basta nascondere l'oggetto e visualizzarlo di nuovo, in modo che fosse sopra tutti gli altri e ricevesse per primo l'evento "clic del topo". Se è sbagliato, mi dispiace. Capire come è ordinata la lista e dirlo a tutti. Anch'io cambierò idea.
Dopo lunghe lotte ed esperimenti, credo che ci sia un bug in MQL5 con l'ordinamento degli oggetti nella lista degli oggetti. Poiché ho provato questo codice in MQL4 senza alcuna speranza speciale per una corretta elaborazione, ho scoperto che 4 livelli Fibo creati in sequenza hanno una numerazione corretta nella lista degli oggetti: 0.1.2.3. Il primo ==0, il secondo ==1, ecc, In MQL5, però, 4 simboli consecutivi creati uno dopo l'altro hanno la numerazione dal soffitto, e solo se cambio i loro nomi, si allineano nell'ordine in cui ho cambiato i loro nomi. Cosa devo fare? Controlla il mio terminale, forse il mio terminale non funziona bene, anche se ho provato su 3 computer (((()).