O que eu gostaria do "terminal" como programador profissional. Outro fio com desejos para a MQL5. - página 8

 
No entanto, se() por qualquer JMP - ramos incondicionais ou condicionais + while/for
 
Na entrevista com os desenvolvedores da MQL5, foi dito que o intérprete agora compilará no código x86 da plataforma, não no código byte do intérprete. Portanto, basicamente é possível desmontar e ver o API para trabalhar com o terminal. Até mesmo bibliotecas podem ser escritas com base nisso e escritas até mesmo em VC++.
 

Seria muito conveniente clicar duas vezes em uma posição nos resultados do testador para saltar para um evento no gráfico.

Entretanto, ter que procurar o momento à mão é cansativo.

 
majestic >> :

Seria muito conveniente clicar duas vezes sobre a posição nos resultados do testador para saltar para o evento no gráfico.

Enquanto isso, você tem que usar suas mãos para encontrar o momento - é estressante.

O que já não é um bom ajuste?

 

MProgrammer, por que você precisa de um módulo dotnet que desenhe gráficos? Além disso, que interesse na MQ em dar tal módulo de gráficos gratuitamente a programadores terceirizados?

Não é possível agora fornecer nossos dados calculados de C# que precisamos exibir em um gráfico através de um simples arquivo com carga e exibição de objetos usando o script ou indicador, escrito em MQL4? Isto é, programa C# >> dados >> arquivo >> script, indicador ou acesso síncrono por EA.

Se você quiser criar um Expert Advisor em C# ou qualquer outra linguagem de programação a que esteja acostumado, você pode fazer uma cadeia de conexão com MT, como


para Consultor Especialista:

MQL4 Expert Advisor >> Dll >> soquete de sincronização >> programa C# (trabalhando com cotações) >> (resultados) >> soquete de sincronização >> Dll >> MQL4 Expert Advisor (exibindo objetos gráficos, posições de abertura e fechamento)


para seu otimista ou testador:

MQL4 script >> Dll >> soquete de sincronização >> programa C# (trabalhando com aspas, múltiplas execuções) >> (resultados) >> soquete de sincronização >> Dll >> MQL4 Expert Advisor (exibindo objetos gráficos e posições da execução como após o testador)


Vantagens desta abordagem:

- Você pode desenvolver programa no idioma e ambiente a que está acostumado, pois todos os idiomas de nível superior suportam o manuseio de soquetes.

- É possível depurar o programa estratégico.

- Você pode fazer seus próprios otimizadores, cujo poder de computação é distribuído entre processadores (múltiplos fios) e até mesmo computadores na rede

(a distribuição, é claro, é muito trabalho, mas a velocidade de otimização será aumentada em várias ocasiões). Por exemplo, rodando otimizador no computador desktop em casa, ele dará uma parte das execuções para laptop na rede local e também para o computador de seu amigo e talvez até mesmo para o computador no trabalho, onde seu módulo de otimização também está rodando (uso não autorizado da capacidade do escritório para fins pessoais :)))


Cons:

- Na MQL4, a transferência de dados para a Dll não é convenientemente implementada. Ou seja, as estruturas e matrizes de estruturas não podem ser passadas apenas por matrizes duplas, mas na MQL5 este problema foi prometido.

Embora, levando em conta que a msvc++ é mais rápida para trabalhar com o dobro do que com outros tipos de dados, a abordagem existente é provavelmente ainda melhor, embora menos conveniente.

- Terei que criar um módulo de conexão e depurá-lo (mas para um programador profissional isso não é problema - é mais fácil do que criar gráficos próprios, como disse o autor deste tópico).


O módulo de comunicação que eu quero implementar em uma tomada para dot.net e java. Tenho o módulo similar em Delphi e WMDATA usando - ele funciona bem e é usado no programa ligado à MT e negociando na conta real.

A propósito, recentemente fiz alguns testes com números reais e inteiros em Java e C++.

Em geral, se você usa máquina java no modo -server, então a partir da segunda ou terceira velocidade de execução do teste java de trabalhar com inteiros ultrapassa o programa MSVC++.

Com dados do tipo duplo msvs++ supera o desempenho do java, mas se você usar os tipos de flutuadores, o java assume a liderança. Portanto, há uma otimização dinâmica do programa java em tempo de execução.

Não sou testado em C#, mas estou desapontado com a delphi - ela fica atrás tanto de C++ quanto de Java nos testes de velocidade. Embora possa ser quando se trabalha com muitos objetos pequenos (ordenar, mover, apagar, criar), a Delphi mostrará seu melhor lado.

 

Caros amigos, deixem-me dizer algumas palavras sobre GOTO.

Toda esta história começou muito antes mesmo do aparecimento daqueles antigos computadores pessoais, que algumas pessoas lembram com nostalgia.

"Em 68 a situação foi completamente explodida pelo famoso artigo da Dijkstra "Sobre a nocividade do goto operator", e isso foi na época em que nem um único programa podia prescindir do goto operator. Apurou-se que a habilidade do programador é inversamente proporcional ao número de operadores de goto que ele usa em seu programa. Foi um choque revolucionário não só no campo da programação, mas também na metodologia de programação em geral.

Depois houve uma série de documentos sobre programação estrutural, onde foi mostrado que qualquer programa podia ser desenhado sem um GOTO, usando 3 estruturas básicas: seqüência, ramificação e loop. Em algum lugar eu tenho até o livro "Programação Estruturada" de Hoare por aí. Não me lembro exatamente, talvez o segundo autor tenha sido Wirth.

"Em 69, apareceu a linguagem Pascal, que foi uma pura implementação das idéias da Dijkstra".

"Então você pode ou não pode usar o operador goto? Em 1974 apareceu o artigo de Knuth "Programação estruturada com operador goto".

E assim por diante.

Em resumo, a discussão acabou há muito tempo; o uso do goto é desencorajado, e todos os tipos de quebra, contenda, saída, parada, hande hoch e outros substitutos do GOTO apareceram, embora muitos idiomas ainda usem o goto. Eu acho que os desenvolvedores da MQL estão familiarizados com esta história, por isso não há GOTO na MQL5. É claro que eles estão escondendo seus motivos por tradição. :-)

 

a Dedushka
qualquer um podeenvergonhar e censurar um programador,
Especialmente alguém que não conhece a cor da capa do
"Programação estruturada" e não sabe que seu autor é Iodan (Iordan)
Sim, você tem as datas de bater GOTO ajustadas para o desembarque dos americanos na lua, mas por quê?
Além disso, você não está ciente de eventos que se seguiram ao lançamento do C#, e por quê?
Uma última coisa - no tempo de Dijkstra, o número de GOTOs nos programas chegava a 50%)))),
mas por uma razão muito diferente da qualificação.
Para que fique mais claro, é como se alguém dissesse que o desempenho de um avô deve ser julgado pelo número de pequenos reparos
- quanto menos reparos, mais qualificado é o avô.

e para que o avô trabalhe melhor, suas ferramentas devem ser tiradas dele.

 
Korey писал(а) >>

a Dedushka
Todos podemenvergonhar e censurar um programador,
Especialmente alguém que não sabe de que cor a capa de
"Programação estruturada" e não sabe que seu autor é Iodan (Iordan)
Sim, você tem as datas de bater GOTO ajustadas para o desembarque dos americanos na lua, mas por quê?
Além disso, você não está ciente dos eventos que se seguiram ao lançamento do C#, e por quê?
Uma última coisa - no tempo de Dijkstra, o número de GOTOs nos programas chegava a 50%)))),
mas por uma razão muito diferente da qualificação.
Para tornar mais claro, é o mesmo que alguém dizer que o desempenho de um avô deve ser julgado pelo número de pequenos reparos
- quanto menos reparos, mais qualificado é o avô.

e para que o avô trabalhe melhor, tire-lhe as ferramentas.

Caro Korey, eu reli meu posto várias vezes só para o caso de... Por Deus, não vejo qualquer indício de tentar censurar ou envergonhar alguém.

Eu nem estava pensando nisso, é que conheci o assunto da discussão há cerca de 30 anos... E, como um gentil avô decidiu me dizer de onde vem. :-)

Sobre "programação estrutural" - sim, há um livro tão grosso em brochura amarela, obra clássica: W. W. Dahl, E. Dijkstra, e K. Hoare, "Structured Programming", Moscou, Mir, 1975.

E finalmente estou falando dos velhos tempos, todos os meus livros são do século anterior, e estou realmente "fora de contato com os eventos após o lançamento do C#", porque não sou um programador praticante há muito tempo. Eu só trabalho como vigia em uma pequena empresa :-). Mas estou interessado na MQL5 e parece que preciso relaxar e sair da hibernação - tenho muito que programar e não tenho ninguém para me ajudar. Então vim a este fórum na esperança de conseguir alguma ajuda, como você, querida... Por favor, não jure, eu não gosto...

 

para Dedushka

1. Olhando para seu avatar, eu vejo o peito de um marinheiro como um marinheiro e o apelido de "avô" - sim, significa o mecânico do navio, o mecânico chefe foi para o comércio de ações.
2. O nível de "juramento" no fórum é aceitável, comércio é identidade, e não se pode negociar sem identidade)))
2) o nível de "palavrões" no fórum é aceitável. o comércio é uma forma de auto-suficiência sem interesse próprio, nenhuma forma de comércio sem interesse próprio.
3) Se você quer jurar ou não, você já está jurando, especialmente desde que a MQL4 como idioma e como ambiente é ruim = ))
Acontece que você se junta aos vergonhosos para "operador de quatro letras".
Você também tem vergonha de não entender o pensamento profundo dos criadores de MQL))))
- Se você se lembrar da forma dos furos nos porta-punções, logo entenderá o preço do MQL e do MT-4.
4. goto está sendo ajustado como uma mama com pimentas e na forma de vergonha na falta de inteligência, ou seja, supostamente miséria mental, e vergonha.
para prova leia também este tópico))
= tirou o operador goto dos programadores, supostamente os deixou saltar agora.
5.
No entanto, sobre o assunto:
a palavra goto vergonhosa não pode ser usada, mas a própria SRAM e sua vergonhosa palavra goto operador - DEVERÁ

 

Deveria, deveria ser - apenas para o bem da arte. Há situações em que o goto é a única maneira de codificar de forma breve e elegante.

Razão: