Tenho-o pendurado o tempo todo até eu próprio o descarregar, quando tirei a imagem do ecrã, utilizando o MT5 estava terminado no sábado de manhã quando o mercado fechou no meu fuso horário, no domingo sentei-me para jogar jogos e comecei a matar processos.
Provavelmente o problema está do meu lado, embora a licença tenha sido reinstalada há um mês atrás.
Despeje-se do agente "pendurado". Vamos dar uma vista de olhos.
Caros programadores, por favor adicionem a capacidade de executar scripts de outros scripts e serviços em modo síncrono.
Obrigado de antemão.
Apoio, não é conveniente trabalhar com grandes ficheiros da EA por algumas razões, utilizo scripts que têm de correr dezenas em paralelo para carregar todos os núcleos e acelerar os cálculos.
Boa tarde. Por favor, informe, não posso importar um ficheiro CSV para a base de dados através do navegador ME. Diz: erro na base de dados de importação. Experimentei todas as opções do CSV. Alguém conseguiu fazer isto ou isto é um insecto? Versão: 5.0 construir 27.15.
Deve-se compreender a documentação, não eu. Sugeri uma ordenação baseada na lista de ordens ou posições. E também num dos tópicos Slava disse que basta, basta esconder o objecto e mostrá-lo de novo, para que esteja acima de todos os outros e receba primeiro o evento do "clique do rato". Se estiver errado, lamento. Descubra como a lista é ordenada e diga a todos. Eu também vou mudar de ideias.
Após longas lutas e experiências, acredito que existe um bug na MQL5 com a classificação de objectos na lista de objectos. Porque tentei este código em MQL4 sem qualquer esperança especial de processamento correcto, descobri que 4 níveis de Fibo criados sequencialmente têm numeração correcta na lista de objectos: 0.1.2.3. O primeiro ==0, o segundo ===1, etc.., Na MQL5, no entanto, 4 símbolos consecutivos criados um após outro têm numeração a partir do tecto, e apenas se eu mudar os seus nomes, eles alinham na ordem de alteração dos seus nomes. O que devo fazer? Verifique o meu terminal, talvez o meu terminal não esteja a funcionar correctamente, embora eu o tenha experimentado em 3 computadores (((())).
//+------------------------------------------------------------------+//| 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% в цене инструмента
}
//+------------------------------------------------------------------+
Tenho-o pendurado o tempo todo até eu próprio o descarregar, quando tirei a imagem do ecrã, utilizando o MT5 estava terminado no sábado de manhã quando o mercado fechou no meu fuso horário, no domingo sentei-me para jogar jogos e comecei a matar processos.
Provavelmente o problema está do meu lado, embora a licença tenha sido reinstalada há um mês atrás.
Despeje-se do agente "pendurado". Vamos dar uma vista de olhos.
alguma sugestão?
O operador do Ternary não se desloca implicitamente para a classe base
Usar fundição explícita
O operador ternário não lança implicitamente operandos para a classe base - utilizar fundição explícita.
Não há mensagem de erro:
mas é assim que as coisas são:
Qual é a diferença fundamental?
No primeiro caso, também deveria ter havido uma mensagem de erro - o nome da função já é utilizado para a enumeração.
Caros programadores, por favor acrescentem a capacidade de executar scripts de outros scripts e serviços em modo síncrono.
Obrigado de antemão
Caros programadores, por favor adicionem a capacidade de executar scripts de outros scripts e serviços em modo síncrono.
Obrigado de antemão.
Apoio, não é conveniente trabalhar com grandes ficheiros da EA por algumas razões, utilizo scripts que têm de correr dezenas em paralelo para carregar todos os núcleos e acelerar os cálculos.
Se alterar o EX5, ao abrir os ficheiros opt-files deste EA previamente recebidos, os parâmetros de entrada dos passes desaparecem.
Por favor, mostre-os sempre!
Há um tal aviso no Sinal.
A que é que isto pode estar ligado? Os detalhes de acesso à conta não foram alterados.
Há um tal aviso no Sinal.
A que é que isto pode estar ligado? Os detalhes de acesso à conta não foram alterados.
Acontece periodicamente. Depois, voltará a ligar-se. Não há necessidade de fazer nada.
Deve-se compreender a documentação, não eu. Sugeri uma ordenação baseada na lista de ordens ou posições. E também num dos tópicos Slava disse que basta, basta esconder o objecto e mostrá-lo de novo, para que esteja acima de todos os outros e receba primeiro o evento do "clique do rato". Se estiver errado, lamento. Descubra como a lista é ordenada e diga a todos. Eu também vou mudar de ideias.
Após longas lutas e experiências, acredito que existe um bug na MQL5 com a classificação de objectos na lista de objectos. Porque tentei este código em MQL4 sem qualquer esperança especial de processamento correcto, descobri que 4 níveis de Fibo criados sequencialmente têm numeração correcta na lista de objectos: 0.1.2.3. O primeiro ==0, o segundo ===1, etc.., Na MQL5, no entanto, 4 símbolos consecutivos criados um após outro têm numeração a partir do tecto, e apenas se eu mudar os seus nomes, eles alinham na ordem de alteração dos seus nomes. O que devo fazer? Verifique o meu terminal, talvez o meu terminal não esteja a funcionar correctamente, embora eu o tenha experimentado em 3 computadores (((())).