[ARQUIVO] Qualquer pergunta de novato, de modo a não desorganizar o fórum. Profissionais, não passem por aqui. Em nenhum lugar sem você - 3. - página 434
![MQL5 - Linguagem para estratégias de negociação inseridas no terminal do cliente MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
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
É possível calcular o patrimônio líquido mínimo usando dados históricos sobre pedidos?
.
Entenda uma coisa - o que está especificado em "dados de ordemhistórica "??? Você está interessado no preço de fechamento, quer seja lucro ou prejuízo para o pedido selecionado...? E daí? O histórico da ordem não mostra o valor do saque da conta no patrimônio líquido (a perda atual) quando a ordem esteve no mercado, ou seja, a perda no seu fechamento pode chegar a, digamos, 500 unidades monetárias. Isto será mostrado no histórico da ordem enquanto o patrimônio líquido poderia ter diminuído para -1000 unidades monetárias quando a ordem esteve no mercado. Observação: O Testador de Estratégia calcula as perdas no patrimônio líquido.
A resposta à sua pergunta: você não pode.
Bom dia!
Os profissionais ajudam - não vou a lugar nenhum sem você!
Já abordei esta questão, mas não encontrei o erro, queria realmente compreendê-lo eu mesmo, rachei meu cérebro por alguns dias, mas até agora não tenho muita experiência.
A última discussão terminou com a idéia de que talvez a razão esteja no código desses indicadores que estou tentando usar.
Eu escrevi um indicador (são meus primeiros passos) que mostra a quebra do ME_Proboy_F5
O problema é..... O indicador não é redesenhado quando novas barras são formadas e é reposto a zero na última barra após o tick recebido. Ele é redesenhado se você alterar o tf ou exibir as propriedades.
O indicador solicita dados de outros indicadores, todos exceto um ME_Proboy_F_5 (eu coloco seu código também) funciona bem. Não consigo encontrar nenhum erro no segundo indicador também. O indicador é redesenhado, mas é lento, ou seja, é exibido corretamente no segundo reinício (mudar as propriedades do FF ou do display).
Eu ficaria muito grato pela ajuda.
Proboy_Order_F5 - este é o principal indicador, sobre o qual eu pergunto
ME_Proboy_F5 - o segundo, que é duvidoso
Desculpe-me por continuar incomodando você com minha pergunta, mas eu realmente quero chegar ao fundo da questão.
A aplicação do limite de função=MathMin(Bars-1, Bars-counterd_bars-1) não resolveu o problema, mas eu aceitei as recomendações, trabalhei no estilo de programação, espero que tenha funcionado, me livrei de variáveis desnecessárias.
Veja acima a essência do problema
Uma coisa que você deve entender - o que está especificado em "dados de ordem histórica"??? Você está interessado em preço de fechamento, lucro ou prejuízo para a ordem selecionada? Então, o que é isso? O histórico da ordem não mostra o valor do saque da conta no patrimônio líquido (perda atual) quando a ordem esteve no mercado, ou seja, a perda em seu fechamento pode chegar a, digamos, 500 unidades da moeda, mas seria mostrado no histórico da ordem enquanto o patrimônio líquido poderia ter diminuído para -1000 unidades da moeda quando a ordem esteve no mercado. Observação: O testador de estratégia calcula a perda no patrimônio líquido.
A resposta à sua pergunta: você não pode.
Entretanto, existe um indicador https://c.mql5.com/mql4/forum/2010/11/Equity_v7.zip onde a equidade é de alguma forma calculada com base em dados históricos. Ainda não descobri como fazer isso. Talvez, a equidade possa ser calculada com base em pontos-chave (fechamento de pedidos), mas como se parece na forma de uma única fórmula?
Aqui está o código com a condição de que as ordens devem ser apagadas após o vencimento do tempo, esta é a condição
MyCurrentTime >= OrderExpiriation && OrderMagicNumber() == MagicNumber
Então, por que se inserimos esta condição no primeiro se operador, então o outro operador localizado dentro dele não considera esta condição?
Ou seja, este código não funciona e apaga todas as ordens pendentes de uma só vez.
E este código funciona e não elimina os pedidos de uma só vez.
Aqui está o código com a condição de que as ordens devem ser apagadas após o vencimento do tempo, esta é a condição
Então, por que se inserimos esta condição no primeiro se operador, então o outro operador localizado dentro dele não considera esta condição?
Ou seja, este código não funciona e apaga todas as ordens pendentes de uma só vez.
E este código funciona e não elimina os pedidos de uma só vez.
Ambos os códigos não são corretos, portanto, analiso seu código e não sei o que é correto/correto.
Tomemos o exemplo mais simples. Você tem 2 ordens que precisam ser retiradas.
1) for(int counter=0;counter<OrdersTotal();counter++)
o início de um bom 0 é inferior a dois e o primeiro pedido é retirado com segurança, mas depois
2)
contador = 1, mas só resta uma ordem! Significa que a condição (1<1) não é cumprida e o laço termina...
Note que ambos os códigos não são corrigidos, portanto não sei o que funciona bem ou mal para você.
Tomemos o exemplo mais simples. Você tem 2 pedidos, ambos precisam ser apagados.
1) for(int counter=0;counter<OrdersTotal();counter++)
O 0 bom é menos de dois e o primeiro pedido foi eliminado com sucesso, mas depois
2)
contador = 1, mas só resta uma ordem! Isso significa que a condição (1<1) não é cumprida e o laço termina...
Não, mas isso é o que acontece, neste momento elimina TODAS as ordens, de forma limpa. O problema é que ele os apaga imediatamente.
Boa tarde!
Eu escrevi um indicador (estes são meus primeiros passos) que mostra claramente a quebra do ME_Proboy_F5
Bons primeiros passos, Olga Alexandrovna. 330 linhas de código
Entretanto, existe um indicador https://c.mql5.com/mql4/forum/2010/11/Equity_v7.zip onde a equidade é de alguma forma calculada com base em dados históricos. Eu ainda não entendi o método. Talvez, a equidade possa ser calculada com base nos momentos-chave (o pedido fecha), mas como se parece na forma de uma fórmula?
Familiarize-se com os conceitos de EQUIDADE e BALANÇO e quais são suas diferenças.
Este indicador mostra a linha de patrimônio líquido em tempo real, já que a linha de patrimônio líquido é o lucro/perda atual em posições não fechadas, "É possível determinar realmente o patrimônio líquido por pontos-chave (fechamento de ordens)" - não é possível, portanto você considerará a mudança da linha de patrimônio líquido em posições fechadas.
"A equidade é de alguma forma calculada com base em dados históricos" - não. Este indicador calcula a linha de equidade para o momento atual - por posições abertas no Mercado.
Boa noite! encontrei isto no tutorial de S. Kovalev. Kovalev, mas no terminal MT4 não há nada além de "woof! Por favor, avise, quem sabe onde pedir emprestado um conjunto de sinais sonoros para diferentes operações, para que eu não tenha que ficar olhando para o computador o tempo todo? Obrigado por uma possível dica!