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
...
chama tudo em métodos privados, mas existe uma "mentalidade Jedi ?" para se afastar do CheckPointer(m_order)==POINTER_INVALID no código fonte
...
É mais provável que isto não seja um truque, o algoritmo deve ser tal, que esta parte do código não seja executada se não houver ordem.
Ou talvez fosse essa a sua intenção. Mas é improvável, se houver um ponteiro, isso não significa que haja uma ordem, então temos que verificar se há uma ordem.
e se a memória me serve corretamente, no início do ano era possível desajustar o NULL no registro e chegar 0 lá, agora ele dá um erro
Mudanças
Fórum sobre comércio, sistemas automatizados de comércio e testador de estratégias
Bichos, insetos, perguntas
Kirill Belousov, 2017.12.14 21:34
Hora de se aposentar
Mudanças
Sim, de fato, mas me lembrei como eu costumava fazer isso no MT4, era assim que eu desregistrava os indicadores:
2019.09.17 07:52:40.855 tst (EURUSD,H1) 1 : 0
2019.09.17 07:52:40.856 tst (EURUSD,H1) 2 : 1048576
2019.09.17 07:52:40.856 tst (EURUSD,H1) 3 : 0
2019.09.17 07:52:40.856 tst (EURUSD,H1) 1 objetos não removidos
2019.09.17 07:52:40.856 tst (EURUSD,H1) 1 objeto do tipo A à esquerda
2019.09.17 07:52:40.856 tst (EURUSD,H1) 24 bytes de memória vazada
Este provavelmente não é o caso, o algoritmo deve ser tal que esta parte do código não seja executada se não houver ordem.
Ou talvez seja assim que se pretende. Mas é improvável, se houver um ponteiro, isso não significa que haja uma ordem, então temos que verificar a existência de uma ordem.
Dependendo do problema, já escrevi em código como criar um "objeto de ordem" que se pareceria com o que está no mercado - procurar uma ordem no projetista usando um magik, se encontrado ele irá pegá-lo, abrir uma ordem a um preço, o próprio tipo de ordem conta (mercado ou pendente), normalização do lote, tentar novamente abrir uma ordem se os pedidos estivessem em um tick anterior, após uma colocação de ordem bem sucedida no tick seguinte, colocar um sl e assim por diante... tudo isso é feito por si só, sem qualquer intervenção do "objeto de ordem".
E se a ordem foi fechada, ela ainda está lá para a estratégia - em última análise, a estratégia está interessada no lucro da ordem (atual ou já fechada - não importa!) e noestado da própriaordem (ainda não colocada, ativa e já fechada)
tudo funciona como planejado, talvez você esteja certo em algum lugar, mas por enquanto o código ainda está sendo testado, os indicadores devem ser verificados, mais tarde podemos tentar sem esta verificação... embora a lógica do trabalho implique as seguintes ações, se não houver em princípio nenhum objeto.... não sobra muito para refazer tudo às ordens virtuais, ainda preciso pensar ))))
Eu queria escrever o que eu costumava ter em vez de
foi assim:
mas lembrou como verificar as substituições de macro em MQL
2019.09.16 22:57:42.837 tst (EURUSD,H1) a = 1
2019.09.16 22:57:42.837 tst (EURUSD,H1) POINTER_INVALID = 0
2019.09.16 22:57:42.837 tst (EURUSD,H1) NULL = 0
e se a memória me serve corretamente, no início do ano era possível desimprimir NULL no registro e chegar 0 lá , agora aparece um erro
Isto é, o comportamento NULL como se não devesse mudar no futuro, mas o que lá é substituído em vez do NULL não é claro, provavelmente se esta situação for verificada agora, como escritose(CheckPointer(m_order)==POINTER_INVALID))) )))
E depois há isto, para o açúcar:
O primeiro teste simples mostra
que não é açúcar, mas um diferente... mais substância líquida
O primeiro teste simples mostra
que não é açúcar, mas um diferente... mais substância líquida.
Porque não está lá). O NULL não está nem aqui nem lá. Você deve usar a função CheckPointer(). O ponteiro não precisa ser zerado por si só - depois de apagado torna-se POINTER_INVALIDO por si só.
Porque não é lá que você está)) O NULL não está nem aqui nem lá. Você deve usar a função CheckPointer(). Você não precisa zerar o ponteiro por si mesmo, ele se torna POINTER_INVALIDO por si mesmo após a eliminação.
Concordo plenamente. Se você ler os administradores, normalmente soa da seguinte forma: "Escreva seus códigos corretamente
MQL em geral é sempre difícil, nova construção, novos problemas, você começa a descobrir se eu a usei incorretamente, aqui você vai e assina ))))
O primeiro teste simples mostra
que não é açúcar, mas um diferente... mais substância líquida
Caro homem. Onde estão as estatísticas de seus trabalhos freelance, produtos no mercado, publicações relacionadas à programação? Ou você está tentando abrir os olhos de alguém sobre o tópico de indicações constantes, ou piscar seus conhecimentos sobre o tópico de tipos de substâncias ...? No futuro, considere o contexto dos exemplos, em vez de tentar reproduzir um erro de compilação.
Eu tenho um contexto simples: se o código (neste caso uma macro) for escrito com um erro, acho que é possível relatá-lo (e dar um exemplo para prová-lo). E, neste contexto, não está claro para mim o queas estatísticas têm a ver com isso
E, neste contexto, não está claro para mim o que as estatísticas têm a ver com isso.
Mantenha-o simples e as pessoas virão até você.
;)
SZZY: Seus postos são quase sempre uma boa idéia, mas a apresentação do material, bem, não inteiramente com boas intenções, é claro, seu negócio, mas imho, quer ajudar - ajudar, quer ser esperto, bem, muitas vezes acontece assim
Depende de você, mas aumentando sua auto-estima com recursos on-line - .... Eu sou preguiçoso demais para continuar digitando.