Você está perdendo oportunidades de negociação:
- Aplicativos de negociação gratuitos
- 8 000+ sinais para cópia
- Notícias econômicas para análise dos mercados financeiros
Registro
Login
Você concorda com a política do site e com os termos de uso
Se você não tem uma conta, por favor registre-se
Esperança de mais orientação.
Quark
admite que entre(GlobalVariableGet(strTradeSemaphore) == 0,0) e GlobalVariableSet(strTradeSemaphore, 1,0); outra EA entrará em cena. Precisamos de uma função que capture e iniba o fio de execução (ou seja, esperar pelo recurso) e depois retornar o controle para o Expert Advisor. Algo como WaitForExclusive()
. Embora, talvez não seja essa a questão. Mas os erros continuam aparecendo, infelizmente.
Espero conseguir ajuda.
A propósito, agora que esta conversa começou, como posso determinar automaticamente quantos dígitos deixar por preço com NormalizeDouble, ou seja, 4 para EURUSD, 2 para EURJPY... ?
Erro 138. Várias vezes por minuto (ou seja, vários dos 12 Expert Advisors o geram).
Erro 129. Estava racionando preços e fazendo muitas outras coisas...
e seu consultor especializado com meus 5 me deu um erro - 6.
meu consultor especializado não funciona na minha correção - eles fizeram asneira nesta construção =)
oh, sim... meus 5 também não funcionam =)))) aqui vamos nós...
e seu consultor especializado com meus 5 deu um erro - 6.
meu consultor especializado não funciona na minha correção - eles fizeram asneira nesta construção =)
oh, sim... meus 5 também não funcionam =)))) oh cara...
Obrigado pelo código, teria levado muito tempo para que eu mesmo o encontrasse.
O especialista sugerido por Slava e melhorado :) por mim é dado abaixo. Você pode executá-lo como eu - em 12 janelas, com 12 moedas. Funciona por qualquer período de tempo, mas é mais rápido em minutos). Estou sempre com erros, caramba. Gostaria de saber por quê.
. Embora, talvez não seja essa a questão. Mas, infelizmente, os erros continuam aparecendo.
isto é exatamente o que eu quis dizer sobre a função hipotética GlobalVariableSetOnCondition, que poderia definir variável global como primeiro parâmetro, desde que seu valor seja igual ao valor do segundo parâmetro. como o acesso às variáveis globais está bloqueado, ele dará "atomicidade"
agora sobre a função IsStopped. ele verifica a bandeira Stop, para que a EA possa normalmente parar (tem 2,5 segundos para isso). é recomendado usar esta função como uma das condições de loop, especialmente para loop infinito
Slava, pela minha vida, eu não entendo este texto. Por favor, explique em outras palavras, ou mostre-me o que você quer dizer. Se você puder.
A propósito, o que há de errado no código que eu reescrevi? É claro que algo está errado porque não funciona, mas eu não vejo o erro. De acordo com meu palpite, isto é o que deveria ter proporcionado acesso exclusivo.
именно так. я поэтому и говорил про гипотетическую функцию GlobalVariableSetOnCondition, которая могла бы устанавливать глобальную переменную первым параметром при условии, что значение её равно значению второго параметра. так как доступ к глобальным переменным блокируется, то это даст "атомарность"
Slava, pela minha vida, eu não entendo este texto. Ou explicar em outras palavras, ou me mostrar o que você quer dizer. Se você puder.
Estamos falando em evitar a possibilidade de encadeamento entre as chamadas das funções GlobalVariableGet e GlobalVariableSet. o encadeamento por outro Expert Advisor é real, uma vez que os erros ainda são observados. é por isso que estou falando de acesso atômico. você e eu estamos falando em resolver um e o mesmo problema, mas em palavras diferentes
.
A propósito, o que há de errado no pedaço de código que eu retrabalhei? É claro que algo está errado, pois não funciona, mas não vejo o erro. De acordo com meu palpite, isto é o que deveria ter proporcionado acesso exclusivo.
Seu exemplo é melhor