Você pode aconselhar sobre a implementação técnica disto?
Se a conexão de internet na estação de trabalho for perdida, então o telefone ou modem gsm conectado à estação de trabalho (o mesmo) enviará uma mensagem sms?
Você pode aconselhar sobre a implementação técnica disto?
Se a conexão de Internet na estação de trabalho for perdida, então conectada à estação de trabalho (a mesma) telefone ou gsm-modem, realizou o envio de mensagens SMS?
Eu tinha um programa que enviava uma mensagem para a ICQ. Página com arquivos e descrição ... https://www.mql5.com/ru/code/10352
No código do Expert Advisor você pode colocar a função de enviar uma mensagem quando a internet quebra e se conecta ....
//+------------------------------------------------------------------------------------------+//| ArraySetAsSeries.mq4 |//+------------------------------------------------------------------------------------------+//| script program start function |//+------------------------------------------------------------------------------------------+//------------------------------------ НАЧАЛО START -------------------------------------- 1 -int start() //функция start
{ //начало startdouble Timestart=GetTickCount(); //переменная, с помощью которой вычисляется время (в милисекундах) начала выполнения скриптаdouble array1[][6]; //объявляем массив-источник (массив, из к-о будут скопированы данные)double array2[][6]; //объявляем массив-приемник (массив, куда будут скопированы данные), к-й на
//момент объявления заполнен некоторыми даннымиint element_1=ArrayCopyRates(array1); //копируем данные баров текущего графика в массив array1 int element_2=ArrayCopy(array2,array1,0,0,WHOLE_ARRAY); //копируем данные всех баров в пользовательский массивbool element_3=ArrayGetAsSeries(array2); //проверка: является ли массив array1 массивом-таймсериейbool try_1=ArraySetAsSeries(array2,false); //устанавливаем НАПРАВЛЕНИЕ индексирования массива bool element_4=ArrayGetAsSeries(array2); //проверка: является ли массив array2 массивом-таймсериейdouble element=array2[0][1]; //получаем значение цены открытия нулевого бара//----------------------------------------------------------------------------------------- 2 -Comment("\nФункция ArrayCopyRates(array1) вернула: ",element_1,
"\nФункция ArrayCopy(array2,array1,0,WHOLE_ARRAY) вернула: ",element_2,
"\nФункция ArrayGetAsSeries(array2) вернула: ",element_3,
"\nФункция ArraySetAsSeries(array2;false) вернула: ",try_1,
"\nФункция ArrayGetAsSeries(array2) вернула: ",element_4,
"\nЦена открытия нулевого бара (т.е. бара с ИНДЕКСОМ 0) равна: ",element,
"\nСкрипт выполнялся всего ",GetTickCount()-Timestart," миллисекунд, из них: ",
MathFloor((GetTickCount()-Timestart)/1000)," секунд ",((GetTickCount()-Timestart)/1000-MathFloor((GetTickCount()-Timestart)/1000))*1000,
" миллисекунд");//печать сообщения на экран//----------------------------------------------------------------------------------------- 3 -return(0); //выход из start
} //конец start//-------------------------------------- КОНЕЦ START -------------------------------------- 4 -
O resultado é o seguinte:
Uma pergunta surgiu naturalmente: Neste caso, copiei dados de barras no gráfico atual em uma matriz bidimensional1 usando a função ArrayCopyRates(array1). Então na próxima linha com a função ArrayCopy(array2,array1,0,0,0,WHOLE_ARRAY) eu copiei os dados do array1 em array2. Então, usando a função ArrayGetAsSeries, eu verifiquei se array2 é uma array-timeseries. E verificou-se (como você pode ver na imagem da tela), que a matriz é uma matriz de série temporal, embora eu não a tivesse "processado" com a função ArraySetAsSeries antes.
Pergunta: por que no primeiro caso (pergunta anterior) eu precisava usar a função ArraySetAsSeries (para fazer minha array ser organizada como uma array de timeseries), enquanto neste caso eu não preciso de tal processamento.
P.S. Desculpe pela insistência, só quero entendê-la completamente, para que não fiquem "lacunas na história". Obrigado por todas as respostas anteriores.
double array1[][6]; //объявляем массив-источник (массив, из к-о будут скопированы данные)double array2[][6]; //объявляем массив-приемник (массив, куда будут скопированы данные), к-й на
Imediatamente uma pergunta. Por que a matriz é bidimensional?
É possível completar as Linhas Fibonacci?
Uma vez traçadas essas linhas no gráfico, o preço desse nível seria automaticamente escrito contra os níveis.
E isso mudaria automaticamente à medida que a fibra é esticada
Desenho de algo
Obrigado, o que você consertou, por favor me diga? Eu não sou bom em comparar códigos
Claro que sim, por que não está funcionando?
Todos)) Eu não sei mql
Você pode me dizer o que devo editar ?) e qual arquivo devo editar ?
Todos)) Eu não sei mql
Você pode me dizer o que devo cavar?) e qual arquivo devo editar?
A escolha é sua:
Trabalho
Para escolher.
Obrigado)
Tudo resolvido. Obrigado:%)
Obrigado, o que você consertou, por favor me diga? Eu não sou bom em comparar códigos
Você pode aconselhar sobre a implementação técnica disto?
Se a conexão de internet na estação de trabalho for perdida, então o telefone ou modem gsm conectado à estação de trabalho (o mesmo) enviará uma mensagem sms?
Você pode aconselhar sobre a implementação técnica disto?
Se a conexão de Internet na estação de trabalho for perdida, então conectada à estação de trabalho (a mesma) telefone ou gsm-modem, realizou o envio de mensagens SMS?
Eu tinha um programa que enviava uma mensagem para a ICQ. Página com arquivos e descrição ... https://www.mql5.com/ru/code/10352
No código do Expert Advisor você pode colocar a função de enviar uma mensagem quando a internet quebra e se conecta ....
exatamente
Eu modifiquei um pouco o roteiro:
O resultado é o seguinte:
Uma pergunta surgiu naturalmente: Neste caso, copiei dados de barras no gráfico atual em uma matriz bidimensional1 usando a função ArrayCopyRates(array1). Então na próxima linha com a função ArrayCopy(array2,array1,0,0,0,WHOLE_ARRAY) eu copiei os dados do array1 em array2. Então, usando a função ArrayGetAsSeries, eu verifiquei se array2 é uma array-timeseries. E verificou-se (como você pode ver na imagem da tela), que a matriz é uma matriz de série temporal, embora eu não a tivesse "processado" com a função ArraySetAsSeries antes.
Pergunta: por que no primeiro caso (pergunta anterior) eu precisava usar a função ArraySetAsSeries (para fazer minha array ser organizada como uma array de timeseries), enquanto neste caso eu não preciso de tal processamento.
P.S. Desculpe pela insistência, só quero entendê-la completamente, para que não fiquem "lacunas na história". Obrigado por todas as respostas anteriores.
Eu mudei um pouco o roteiro: