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
Mas será que com o mercado aberto vai dar isso ? vou testar aqui e te aviso. Conta demo, saldo começa sempre em 0
Funcionou, digo, pelo menos o EA foi colocado no gráfico sem apresentar mensagem de erro. Agora vou monitorar para ver como ele se comporta quando o saldo empatar. Problema é que não há certeza se vai empatar nem quando vai empatar. Qualquer coisa te aviso.
Outra coisa: O trecho do código que permite operar com o mini índice é este aqui abaixo. Como ele teria que ficar para também ser possível testar com ações (centavos) e com o mini-dólar que pula de 5 em 5 ?
Funcionou, digo, pelo menos o EA foi colocado no gráfico sem apresentar mensagem de erro. Agora vou monitorar para ver como ele se comporta quando o saldo empatar. Problema é que não há certeza se vai empatar nem quando vai empatar. Qualquer coisa te aviso.
Outra coisa: O trecho do código que permite operar com o mini índice é este aqui abaixo. Como ele teria que ficar para também ser possível testar com ações (centavos) e com o mini-dólar que pula de 5 em 5 ?
Deu o erro de array denovo e o EA é removido do gráfico
Deu o erro de array denovo e o EA é removido do gráfico
Eu coloquei este bloco para o código que você fez só ser chamado se houver ordem aberta, mas parece que não está respeitando. Mesmo com ordem aberta dá o erro de array
O EA trabalha colocando ordens pendentes, estas ordens estavam sendo excluídas a cada 10 segundos mesmo sem ser acionadas. Isso porque eu havia colocado o DeleteOrders();
Tirei isso e tá funcionando.
A sua lógica está funcionando perfeitamente pois eu presenciei uma 4 empatadas do saldo e de fato após 10 segundos as ordens são fechadas.
E até agora não deu mais aquele erro de array
O EA trabalha colocando ordens pendentes, estas ordens estavam sendo excluídas a cada 10 segundos mesmo sem ser acionadas. Isso porque eu havia colocado o DeleteOrders();
Tirei isso e tá funcionando.
A sua lógica está funcionando perfeitamente pois eu presenciei uma 4 empatadas do saldo e de fato após 10 segundos as ordens são fechadas.
E até agora não deu mais aquele erro de array
Legal Sergio. Caso o erro persista, experimente colocar a clausula condicional abaixo no evento onTimer testando la mesmo se houve 10 repetições , pois o erro de Array out the Range só deveria ocorrer se o evento Ontick falhasse em executar a rotina.. Por isso mesmo que deixei o tamanho do Array list_saldo[60] que armazenaria ate 60 registros que indicaria que houve 60 segundos sem alteraçao de saldo..
Legal Sergio. Caso o erro persista, experimente colocar a clausula condicional abaixo no evento onTimer testando la mesmo se houve 10 repetições , pois o erro de Array out the Range só deveria ocorrer se o evento Ontick falhasse em executar a rotina.. Por isso mesmo que deixei o tamanho do Array list_saldo[60] que armazenaria ate 60 registros que indicaria que houve 60 segundos sem alteraçao de saldo..
BLZ, até agora tá indo bem. Você sabe sobre isso ? fazer funcionar com mini dólar e também com ações (só funciona com mini indice):
BLZ, até agora tá indo bem. Você sabe sobre isso ? fazer funcionar com mini dólar e também com ações (só funciona com mini indice):
Não entendi o que vc quer fazer...É sobre tamanho de lotes?
Não entendi o que vc quer fazer...É sobre tamanho de lotes?
Fiz uma pequena confusão aqui
Tudo certo
Muito grato por tudo
Boa sorte aí no seu destino
Saúde e Paz
Fiz uma pequena confusão aqui
Tudo certo
Muito grato por tudo
Boa sorte aí no seu destino
Saúde e Paz
Amem..
Acho que daria certo assim:
int count; // cria uma variável count
int ticket; //variável que percebe cada ticket que a cotação do ativo der
if (IsPositions()) //se tem ordem aberta, BUY ou SELL (no código já tem esta função que detecta se há ordens abertas)
count++; //o contador vai incrementando 1 em 1
if (saldo muda a cada ticket, que é a cotação do ativo) // enquanto o saldo estiver mudando a cada cotação do ativo
count=0; // o contador vai sendo zerado
if (count => 1000) // Mas se este contador atingir determinado valor é porque o saldo não mudou
CloseAllPositions(); // aí fecha todas as ordens
count = 0; // e zera o contador esperando novas ordens serem abertas e recomeçar o acompanhamento
Como fazer isso dar certo ? vou pesquisar mas se puderem me adiantar alguma coisa, agradeço.