[Arquivo!] Qualquer pergunta de novato, de modo a não desorganizar o fórum. Profissionais, não passem por ela. Não poderia ir a lugar algum sem você - 2. - página 4

 
merkulov.artem:

Por favor, informe como usar OrderModify() para modificar uma ordem pendente, se, por exemplo, o preço de abertura não mudou, mas o takeprofit e o stoploss mudaram. ou seja, a questão é como deixar alguns parâmetros inalterados e alterar outros. Quando eu chamo getlasterror() ou não há erro ou código 1(resultado desconhecido) ou nada acontece.

obrigado pelas dicas!

ver aqui - página 106... As condições de modificação são as suas, a abordagem é a mesma - há condições quando o preço muda, você tem valores de parada.
Arquivos anexados:
52_ft140909.rar  4021 kb
 

Mais uma vez, posso?

Estou tentando rastrear pelos extremos ZigZag... Encontrei algo no fórum, mas ainda não funciona (no testador). A razão é a inexperiência em trabalhar com amortecedores ZigZag... Deve estar faltando algo. Eu usei dois tipos de ZigZag. CZigZag com um buffer que armazena informações sobre extrema e ZigZag com MT4 com 3 buffers. Eu tentei ver os valores da matriz com o Alerta, mas eles sempre contêm zeros.

Para preencher o buffer que usei:

CZigZag:Z[i]=iCustom(NULL,0, "ZigZag",ExtDepth,ExtDeviation,0,i); Alert("Z",i," = ",Z[i]);

ZigZag(upper extrema): Z[i]=iCustom(NULL,0, "ZigZag",ExtDepth,ExtDeviation,1,i); Alert("Z",i," = ",Z[i]);

ZigZag(lower extrema): Z[i]=iCustom(NULL,0, "ZigZag",ExtDepth,ExtDeviation,2,i); Alert("Z",i," = ",Z[i]);

 
Por favor, informe o que pode ser, estou correndo no testador, as ordens estão abrindo e fechando normalmente. Coloco a otimização para escolher um parâmetro, estou correndo todos os resultados são rejeitados, mas se eu alterar este parâmetro manualmente no teste, tudo está OK.
 

granit77:

granit77, por favor, ajude. Escrevi um EA e o testei várias vezes, procurando as melhores estratégias. Durante os testes seguintes algo aconteceu e a EA começou a me dar uma mensagem de "esperando por atualização" em cada tentativa de teste. Tentei recarregar os dados históricos, mas eles se quebram. Além disso, durante o recarregamento, os gráficos ampliados de citações dos dados da última semana desaparecem. Tentei reiniciar o programa, mas os dados históricos não estão carregados. O que posso fazer nesta situação? :)



 
T-G:
Por favor, informe o que pode estar errado, quando eu corro no testador, as ordens são abertas e fechadas, tudo está normal. Quando coloco a otimização escolho um parâmetro e corro todos os resultados são rejeitados, quando mudo manualmente este parâmetro no teste, tudo está normal.


Antes da otimização, desmarque todas as opções na guia: Propriedades do especialista - Otimização - Restrições (desmarque todas as opções).

Além disso, quando clico na aba: Corte de otimização - desmarcar - pular resultados inúteis.

 
boris.45:

É difícil dizer. Há muitas sutilezas. Talvez alguém saiba melhor e possa lhe dizer, mas eu preferiria colocar um terminal limpo e copiar meus códigos nele. E, se o terminal for para testes, somente os Consultores/Indicadores Especializados necessários devem ser instalados. E, é claro, verificar a existência de vírus.
É possível encontrar uma falha, mas ela será mais rápida e limpa. Nós não queremos atrapalhar, queremos dirigir.
 
Roman.:


antes da otimização desmarque todas as caixas de seleção na guia: propriedades de especialistas - otimização - restrições (desmarque todas as caixas de seleção).

Além disso, se você clicar na aba: Otimizar - desmarcar - pular resultados inúteis.

Por exemplo, o parâmetro x=1 apenas para resultados de teste em 500 negócios, x=2 resultados em 700 negócios. eu otimizo este parâmetro e x=1 agora dá 1 negócio, x=2 também dá 1... EA usa modificação gráfica virtual, pode ser esta a razão... como se o objeto gráfico não fosse criado durante a otimização...
 
T-G:
Eu desmarquei "pular resultados inúteis" e os resultados aparecem. Somente eles diferem da simples execução. Por exemplo, com o parâmetro x=1 teste simples obtém-se por exemplo 500 transações, com x=2 - 700 transações. Eu começo a otimizar este parâmetro e x=1 - agora dá 1 transação, x=2 também dá 1 transação... A EA usa modificação gráfica virtual, pode ser este o caso? como durante a otimização nenhum objeto gráfico é criado?

Eu não sei o que é. Pode ser. Embora, se o teste - tudo é como deveria ser, em teoria, a otimização deveria funcionar como deveria ser...
 
Roman.:

Eu não sei sobre isso... É possível. Embora, se o teste - tudo se mostra como deveria, em teoria, a otimização deveria funcionar como deveria...
Em teoria, sim, mas o teste executou especificamente o parâmetro x=1, depois o parâmetro x=2, e depois pegue a otimização de x de 1 a 2 passo 1. todas as restrições são desmarcadas, pulando cortes inúteis também. algoritmo genético ligado e desligado. os resultados dos testes de otimização diferem, impotente!
 



Eu tenho minha própria estratégia, mas minhas emoções me impediram de usá-la. A única solução era escrever um robô comercial. Hoje eu pareço ser capaz de fazer isso, mas eu chego a uma parada e não entendo como resolver o problema.

Tenho um problema com isso, o sistema abre ordens + ordens pendentes, e ambos trabalham vender e comprar, com a abertura de um novo mercado ele abre com duas ordens pendentes, como um Martin, fecham no take or loss, em qualquer caso, quando o sinal oposto ao anterior permanece ativo e abre novo oposto.Não consigo decidir como apagar ordens pendentes quando uma ordem de mercado é acionada, meu livro diz algo sobre Números Mágicos e Bilhetes, mas não consigo descobrir como reconhecer uma ordem para fechar as ordens pendentes.