[ARQUIVO] Qualquer pergunta de novato, de modo a não desorganizar o fórum. Profissionais, não passem por aqui. Em nenhum lugar sem você - 3. - página 245

 

Olá! Poderia me dizer, por favor, o que está acontecendo com o objeto gráfico?

             Время_фрактала=Time[ФрВниз];                                               // Определение места обозначения фрактала по времени
             Цена_рисунка=Low[ФрВниз];                                                  // Определение места обозначения фрактала по цене
             ObjectCreate("ФрВнизрис",OBJ_TEXT,0,Время_фрактала,Цена_рисунка-2*PointX); // Создание надписи исторического Фр вверх
             ObjectSetText("ФрВнизрис","Фривн",14,"Arial",DarkOrange);                  // Задание свойств надписи
             Error=GetLastError();                                                      // Назначение имени функции проверки ошибок
             Print("Error рисунка = ", Error);

Surge uma mensagem dizendo que o parâmetro do nome deve ser string:

(o parâmetro do nome para a função ObjectCreate deve ser uma string

O parâmetro do nome para a função ObjectSetText deve ser uma string )

E o que é esperado para a cadeia de parâmetros: Imagem de erro = 4062

No tutorial, no exemplo(https://book.mql4.com/ru/functions/objects), o nome parece ser o mesmo, sem cordel . Ou também é errado aí?:

//--------------------------------------------------------------------
// grafobjects.mq4
// Предназначен для использования в качестве примера в учебнике MQL4.
//--------------------------------------------------------------------
int start()                            // Спец. функция start
  {
//--------------------------------------------------------------- 1 --
   int Sit;
   double MACD_M_0,MACD_M_1,           // Главная линия, 0 и 1 бар
   MACD_S_0,MACD_S_1;                  // Сигнальная линия, 0 и 1 бар
   string Text[4];                     // Объявление строков. массива
   color  Color[4];                    // Объявление массива цветов
 
   Text[0]= "Открытие Buy";            // Текст для различных ситуаций
   Text[1]= "Открытие Sell";
   Text[2]= "Удерживаем Buy";
   Text[3]= "Удерживаем Sell";
 
   Color[0]= DeepSkyBlue;              // Цвет объекта ..
   Color[1]= LightPink;                // .. для различных ситуаций
   Color[2]= Yellow;
   Color[3]= Yellow;
//--------------------------------------------------------------- 2 --
   ObjectCreate("Label_Obj_MACD", OBJ_LABEL, 0, 0, 0);// Создание объ.
   ObjectSet("Label_Obj_MACD", OBJPROP_CORNER, 1);    // Привязка угол
   ObjectSet("Label_Obj_MACD", OBJPROP_XDISTANCE, 10);// Координата Х
   ObjectSet("Label_Obj_MACD", OBJPROP_YDISTANCE, 15);// Координата Y
//--------------------------------------------------------------- 3 --
   MACD_M_0 =iMACD(NULL,0,12,26,9,PRICE_CLOSE,MODE_MAIN,0);  // 0 бар
   MACD_S_0 =iMACD(NULL,0,12,26,9,PRICE_CLOSE,MODE_SIGNAL,0);// 0 бар
   MACD_M_1 =iMACD(NULL,0,12,26,9,PRICE_CLOSE,MODE_MAIN,1);  // 1 бар
   MACD_S_1 =iMACD(NULL,0,12,26,9,PRICE_CLOSE,MODE_SIGNAL,1);// 1 бар
//--------------------------------------------------------------- 4 --
   // Анализ ситуации 
   if(MACD_M_1=MACD_S_0)                      // Персеч. снизу вверх
      Sit=0;
   if(MACD_M_1>MACD_S_1 && MACD_M_0<=MACD_S_0)// Персеч. сверху вниз
      Sit=1;
   if(MACD_M_1>MACD_S_1 && MACD_M_0>MACD_S_0) // Главная выше сигн.
      Sit=2;
   if(MACD_M_1
 
volshebnik:

Olá! Você poderia, por favor, me dizer o que está errado com a montagem de um objeto gráfico?

Recebo uma mensagem de que o parâmetro do nome deve ser string:

Experimente o nome em inglês.
 

De alguma forma, o testador do meu amigo também foi por água abaixo... O que isso significaria?

Alguém mais tem este problema também?

 
nemo811:

De alguma forma, o testador do meu amigo também foi por água abaixo... O que isso significaria?

Alguém mais tem este problema também?

Se o fechamento da troca e a abertura da troca estão freqüentemente escritos no histórico da transação, isso significa que você tem que esperar até sábado.
 
Shniperson:
Se o fechamento da troca e a abertura da troca estão freqüentemente escritos no histórico da transação, isso significa que você tem que esperar até sábado.
Não - não existe tal coisa. Há apenas alguns dias, tudo estava bem. Desde ontem eu e ele começamos a ter problemas (resultados de testes diferentes para a mesma EA no terminal do mesmo corretor; erros no registro - não houve nenhum antes e o código da coruja não mudou; falhas durante a execução do código, que funcionou antes sem erros e na demonstração dá os resultados esperados).
 
nemo811:
Não - não existe tal coisa. Tudo estava bem há alguns dias atrás. Ontem comecei a ter problemas com ele e comigo (resultados de testes diferentes de um e mesmo EA em um e no mesmo terminal do corretor; erros no registro - não havia tais erros antes e o código da coruja não mudou; falhas na execução do código, que funcionou sem erros antes e deu resultados esperados na demonstração).

Tempestades magnéticas...

Acho que o corretor tem um spread flutuante?

A sua EA prevê que o corretor altere o nível STOPLEVEL?

 

Acontece que na MQL4 você não pode passar uma variável por referência à dll e atribuir um valor a ela (em dll). É possível escrever para dll apenas para array (eu descobri pelo método do Prof. Tychkov).

Por favor, mostre-me onde é mencionado na documentação.

 
MaxZ:

Acho que o corretor tem um spread flutuante?

A sua EA prevê que o corretor altere o nível STOPLEVEL?

A tática não está fixada em pegar 10 pips, figurativamente falando, então o espalhamento definitivamente não tem nada a ver com isso.

Amudança do STOPLEVEL também não explica o que está acontecendo (os testes são realizados ao mesmo tempo, no mesmo par - os resultados são diferentes).

 
nemo811:

A tática não está fixada em pegar 10 pips, figurativamente falando, então o spread definitivamente não tem nada a ver com isso.

Pense em sua resposta... Ou os resultados dos testes diferem por uma ordem de grandeza?
 
joo:

Acontece que na MQL4 você não pode passar uma variável por referência a uma dll e atribuir um valor a ela (na dll). Você pode escrever em dll somente em array (pelo método do Prof. Tychkov).

Por favor, mostre-me onde é mencionado na documentação.

Havia um fio onde isso era discutido. Você tem que pesquisar. Lembro-me que antes era possível passar matrizes sem referência. Depois foi estritamente por referência. Posso estar confuso sobre algo...

Isso é tudo o que tenho na referência.

Razão: