mql5 - linha vertical depois de um certo tempo desde o último comércio - página 6

 
Acho que já o tenho - anexei o arquivo :)
A linha muda de acordo com o algoritmo especificado pelo número de horas especificado desde que a última negociação foi fechada. Eu o mudei não por 1/2/24 horas, mas por 1/2/12 horas, ou seja, o dia inteiro é demais para descansar. Em qualquer caso, estas variáveis serão movidas para parâmetros externos por conveniência. Falha que anunciei anteriormente com ACID_NW nem sequer olhou, mais tarde no processo de teste e possível detecção de novas falhas já entenderá
Arquivos anexados:
 
Em seguida, mostrarei em Comentário a hora de fechar a última negociação e o tempo em que a linha é deslocada, ou seja, quando posso retomar a negociação após um intervalo. Parece que deve ser bastante simples, considerando que variáveis com os dados necessários já foram criadas e calculadas - basta converter o formato de segundos para data, mas por alguma razão não funcionou de imediato :(
 
renatmt5:
Em seguida, mostrarei em Comentário a hora de fechar a última negociação e o tempo em que a linha é deslocada, ou seja, quando posso retomar a negociação após um intervalo. Parece que deve ser bastante simples, considerando que variáveis com os dados necessários já foram criadas e calculadas - basta converter o formato de segundos para data, mas por alguma razão não funcionou de imediato :(
TimeToString()
 

Sergey, obrigado! Foi exatamente isso que eu tentei, mas por alguma razão acabei com zero. Não levei muito tempo para descobrir onde errei - não acho que será um grande problema

 
Li outra explicação do fórum sobre ACID_NW: "Se ao final do dia de negociação a quantidade de fundos de bônus em sua conta exceder o limite permitido, a quantidade em excesso será automaticamente transferida para sua conta de Bônus. Ao transferir, você verá as seguintes abreviações no comentário da transação de saldo: _ACID_NW, onde ACID significa Ajuste Automático e NW significa Fundos de Bônus".
Como tenho um problema com o indicador por causa disso - o indicador repõe os dados sobre a última negociação e o resultado do último dia, a opção mais fácil que vejo é simplesmente remover o dinheiro do bônus da conta por completo. Eu entendo corretamente, então por definição este _ACID_NW não ocorrerá? No processo de negociação, novos fundos de bônus não serão creditados na conta de negociação, mas eles serão creditados na conta de bônus?
 
renatmt5:
Também li sobre o ACID_NW na explicação do fórum"Se ao final de um dia de negociação a quantidade de fundos de bônus em sua conta exceder o limite permitido, a quantidade em excesso será automaticamente transferida para sua conta de Bônus. Ao transferir, você verá as seguintes abreviações no comentário da transação de saldo: _ACID_NW, onde ACID significa Ajuste Automático e NW significa Fundos de Bônus".
Como tenho um problema com o indicador por causa disso - o indicador repõe os dados sobre a última negociação e o resultado do último dia, a opção mais fácil que vejo é simplesmente remover o dinheiro do bônus da conta por completo. Eu entendo corretamente, então por definição este _ACID_NW não ocorrerá? No processo de negociação, os novos fundos de bônus não serão creditados na conta de negociação, mas serão creditados na conta de bônus?

Leve seu tempo. Execute o roteiro deHistórico de Acordos e Pedidos.

Digite as datas De data e Até data. Deixe a saída de informações como padrão (será emitida para o nome do arquivo).

Depois disso, para ver e abrir o arquivo de texto, você precisa

  • Passo 1: selecione o menu File e selecione Open Data Folder;
  • Passo 2: No explorador que se abre, vá sucessivamente para a pasta "MQL5\Files".

Colar todas as informações do arquivo no correio como código (pressione Alt+S).

 
Produzido por um dia - não pode ser colocado em código, demasiados caracteres. Faça backup com um arquivo ou reduza o intervalo para algumas horas para capturar uma transação e a subseqüenteACID_NW?
 

Corrigida a falha, o que fez com que o indicador não calculasse o lucro do último negócio e o dia do último negócio em um novo dia. Acontece que o assunto não estava na operação_ACID_NW, mas no fato de que o valor da variável de_data (data inicial, a partir da qual o histórico de negócios foi carregado) foi definido incorretamente. No código, foi descrito como "from_date=iTime(Symbol(),PERIOD_D1,0)", ou seja, como eu entendi o ponto de partida - início do dia atual. E deve ser feito o download do histórico por 24 horas, caso contrário, os resultados de ontem não foram incluídos. Por simplicidade, não o fiz durante as últimas 24 horas, mas desde o início de ontem. 24 horas, e desde o início de ontem, ou seja,de_data = iTime(Symbol(),PERÍODO_D1,1) - tudo foi calculado corretamente!

 

Rapazes, por favor, aconselhem sobre o valor da variável datatime de saída.

Tenho uma variável com datatime string last_deal_deal_day=time[rates_total-1]-fromlastdeal_seconds;

Quando eu produzo o valor desta variável Comentário("last_deal_day = ",last_deal_day) Eu produzo data e hora como "2019.03.21 02:48:19"
Como posso dividir este valor em duas variáveis para produzir data e hora separadamente?

 
renatmt5:

Rapazes, por favor, aconselhem sobre o valor da variável datatime de saída.

Minha variável é definida por datatime last_deal_day=time[rates_total-1]-fromlastdeal_seconds;

Quando eu produzo o valor desta variável Comentário("last_deal_day = ",last_deal_day) a data e a hora como "2019.03.21 02:48:19" é produzida
Como posso dividir este valor em duas variáveis para emitir a data e a hora separadamente?

TimeToString


    Comment(TimeToString(last_deal_day,TIME_DATE)+" "+TimeToString(last_deal_day,TIME_SECONDS)
Razão: