As bandeiras ou controlam o número de tipos de ordem ou, se houver um controle de ingressos, o tempo de fechamento da ordem de mercado, se não for igual a zero, então a ordem fechou e a bandeira de abertura da ordem é falsa.
AIGUL SALMANOVA: Como isso é feito programmaticamente ????
if(OrderSelect(Ticket, SELECT_BY_TICKET)==true)
{
if(OrderCloseTime()==0) // Если наш рыночный ордер не закрыт
{
if(flagAlert == true)
Alert("Наш рыночный ордер жив, Модифицируем его если нужно ", Text,Ticket,". Ждём ответ..");
ModifyTral(); // Модифицируем если нужно
}
if(OrderCloseTime()!=0) // Если наш рыночный ордер закрылся
{
OpnOr=false; // Флаг открытия рыночного ордера после его закрытия делаем ЛОЖЬ
Ticket=0; // Тикет ордера рыночного, он может быть только одинAlert("Наш рыночный ордер закрылся. Работа Советника продолжается ","Прибыль/убыток = ",OrderProfit(),
" Своп = ", OrderSwap(), " Комиссия = ", OrderCommission());
return;
}
}
else
{ Alert("OrderSelect() нашего рыночного ордера вернул ошибку - ",GetLastError()); return;}
}
Para contabilizar um bilhete.
Ao abrir um pedido, o bilhete deve ser memorizado.
As bandeiras ou controlam o número de tipos de ordem ou, se houver um controle de ingressos, o tempo de fechamento da ordem de mercado, se não for igual a zero, então a ordem fechou e a bandeira de abertura da ordem é falsa.
Como isso é feito programmaticamente ????
Para contabilizar um bilhete.
Ao abrir um pedido, o bilhete deve ser memorizado.
Para ser honesto, não está claro o que você está procurando. Escreva em fórmulas como você entende o que é produzido e o que você precisa.
Você precisa do tempo em milissegundos entre os últimos 4 ticks. Atualizar valores quando aparecer um novo tick.
O indicador escreve o tempo do último tick(GetTickCount()) no buffer.
O Expert Advisor retira valores do indicador e calcula a diferença de tempo.
Parece contar, mas o Alerta mostra valores como na imagem.
Eu não entendo por que.
Precisa do tempo em milissegundos entre os últimos 4 ticks. Atualiza os valores quando ocorre um novo tick.
O indicador escreve o tempo do último tick (GetTickCount()) no buffer.
O Expert Advisor retira valores do indicador e calcula a diferença de tempo.
Parece contar, mas o Alerta mostra valores como na imagem.
Não entendo por que.
Porque você ainda não leu a documentação
A ajuda para GetTickCount diz que é um transbordo de um contador inteiro
porque você não lê a documentação.
A referência GetTickCount diz que é um transbordo de números inteiros.
Você quer dizer uint? Por que ele está aparecendo em alerta? Eu não o coloquei lá.
Você quer dizer uint? Por que ele está aparecendo em alerta? Eu não o escrevi lá.
No primeiro Alerte você produz de forma incorreta (sem levar em conta os transbordamentos) a diferença calculada,
o segundo Alerta, onde um grande valor inteiro é procurado no código, ele não está presente neste fragmento :-)
Aí é que está, não está no código.
Todo o código indicador.
Todo o código EA.
Aí é que está, não está no código.
Todo o código indicador.
Tudo isso.
Veja o que mais há nele.
time.mq4 - talvez envie alertas
Aí é que está, não está no código.
Todo o código indicador.
Todo o código EA.
No indicador, na estrutura Alerta. A 5ª linha a partir doAlerta(b) inferior;
Aparentemente, este é o número de milissegundos desde o início do sistema)
Como faço para acompanhar o status dos botões de troca rápida?
Ou seja, estão ou não presentes na tabela.
Você pode sugerir uma função ou outro método?