O atraso na liberação do secador surgiu porque um novo tipo de motor precisa ser feito. O Beaker, como uma aplicação autônoma que funciona como um motor independente, precisa fornecer um API de usuário, caso contrário, como um programa fechado, seu valor será muito menor. Os motores que fiz no passado eram completamente dependentes dos comandos do usuário e não tinham nenhuma funcionalidade própria. O novo tipo de motor, deve funcionar de forma independente, bem como controlado por fora. Estou resolvendo este problema agora.
Hoje marcou mais um importante passo em frente. O motor pode agora operar como uma aplicação autônoma, sincronizando seus valores de parâmetros com a aplicação do usuário conectada a ele. A aplicação está conectada como antes, mas agora ela pode solicitar valores que são definidos pela funcionalidade do motor. Assim, esta é uma transição para um novo nível de interação entre os programas. O motor como um programa autônomo pode acumular sua funcionalidade e estender a API fornecida às aplicações.
No caso da pilha de preços, - tornou-se uma aplicação autônoma (que terminarei amanhã, depois de amanhã), e funciona como um indicador. Usando a conexão, os usuários podem recuperar os valores deste copo e anulá-los, devolvendo-os ao copo de uma forma modificada. Por exemplo: O preço em um dos campos de vidro foi analisado pelo código do usuário e se revela ser o nível de algum indicador importante. O usuário envia seu marcador de cordas para aquele campo e ele aparecerá ao lado daquele preço. Isto abre novas e interessantes possibilidades para o desenvolvimento tanto de motores quanto de programas de usuário.
SZZ. Os eventos do GUI deslizante, antes enviados apenas para o aplicativo, agora também são recebidos internamente pelo motor e o tratamento paralelo dos eventos é realizado em ambas as extremidades - no motor (de acordo com meu código) e na aplicação do usuário (de acordo com o código do usuário). Clicando no botão aciona tanto a funcionalidade do motor quanto a funcionalidade da aplicação conectada.
Outra coisa que falta no copo é o lucro se você fechar agora no mercado, ou seja, contabilizar o enchimento do copo - relevante para posições ligeiramente maiores do que as pequenas (por exemplo, 100-150 lotes).
Aleksey Vyazmikin: Outra coisa que falta no copo é o lucro se você fechar agora no mercado, ou seja, encher o copo - relevante para posições ligeiramente maiores do que pequenas (por exemplo, 100-150 lotes).
Conta do enchimento do copo. Pensarei após o lançamento da versão básica, para não atrasar.
O preço do copo estará pronto. A documentação da conexão API foi muito atrasada. É extremamente demorado escrever sua documentação em sua própria linguagem de marcação. E a documentação do secador também tem que ser feita. E o próprio vidro. E, ao mesmo tempo, otimizar o código, construtor, corrigir bugs e adicionar recursos. É por isso que é tão longo. Mas então tudo será mais rápido e mais rápido.
Em que língua está escrito o programa? Qual é a velocidade real de processamento dos dados recebidos? Como os dados são alocados para os níveis de preços? É um para loop ou há uma variável com dados para cada nível? O fato de ter escolhido o tipo de vista do vidro, como nos terminais ocidentais, é correto. Eu sugeriria acrescentar à taça, gerenciamento de pedidos OCO ligados até três níveis. E em geral, você pode pegar qualquer Dock funcional do mercado ocidental e ver o que é implementado nele. Ou veja como o QScalp scalper drive é implementado.
Roman: Em que idioma o programa está escrito? Qual é a velocidade real de processamento dos dados recebidos? Como os dados são distribuídos por níveis de preço? Em um para loop ou para cada nível tem sua própria variável com dados? O fato de ter escolhido o tipo de vista do vidro, como nos terminais ocidentais, é correto. Eu sugeriria acrescentar ao vidro, gerenciamento de licitações OCO ligadas até três níveis.
1. O programa está escrito em dois idiomas. A linguagem de base é MQL5 e, além disso, minha linguagem de marcação.
2. Distribuído da mesma forma que o enviado. Quero dizer, nas células certas. É difícil explicar em palavras. Eu lhe enviarei o código mais tarde. É claro que tive que suar para colocar os dados nas células certas, mas esta questão foi resolvida.
3. Acrescentarei tudo o que me será pedido e isso tem sentido e importância.
Para registrar os dados recebidos, eu fiz uma matriz de 100 células. Distribuo os dados recebidos do centro da matriz (célula 49) para o lado asc e bid, calculando antecipadamente o preço mais próximo ao lado asc e bid.
Para login e uso do site MQL5.com, você deve ativar o uso de cookies.
Ative esta opção no seu navegador, caso contrário você não poderá fazer login.
Você entrou na conta. A autenticação de dois fatores foi desativada. Configure-a novamente e escaneie um novo código QR ou continue com a autenticação de dois fatores desativada.
Hoje marcou mais um importante passo em frente. O motor pode agora operar como uma aplicação autônoma, sincronizando seus valores de parâmetros com a aplicação do usuário conectada a ele. A aplicação está conectada como antes, mas agora ela pode solicitar valores que são definidos pela funcionalidade do motor. Assim, esta é uma transição para um novo nível de interação entre os programas. O motor como um programa autônomo pode acumular sua funcionalidade e estender a API fornecida às aplicações.
No caso da pilha de preços, - tornou-se uma aplicação autônoma (que terminarei amanhã, depois de amanhã), e funciona como um indicador. Usando a conexão, os usuários podem recuperar os valores deste copo e anulá-los, devolvendo-os ao copo de uma forma modificada. Por exemplo: O preço em um dos campos de vidro foi analisado pelo código do usuário e se revela ser o nível de algum indicador importante. O usuário envia seu marcador de cordas para aquele campo e ele aparecerá ao lado daquele preço. Isto abre novas e interessantes possibilidades para o desenvolvimento tanto de motores quanto de programas de usuário.
SZZ. Os eventos do GUI deslizante, antes enviados apenas para o aplicativo, agora também são recebidos internamente pelo motor e o tratamento paralelo dos eventos é realizado em ambas as extremidades - no motor (de acordo com meu código) e na aplicação do usuário (de acordo com o código do usuário). Clicando no botão aciona tanto a funcionalidade do motor quanto a funcionalidade da aplicação conectada.Haverá hotkeys?
Outra coisa que falta no copo é o lucro se você fechar agora no mercado, ou seja, encher o copo - relevante para posições ligeiramente maiores do que pequenas (por exemplo, 100-150 lotes).
Qual é a velocidade real de processamento dos dados recebidos?
Como os dados são alocados para os níveis de preços?
É um para loop ou há uma variável com dados para cada nível?
O fato de ter escolhido o tipo de vista do vidro, como nos terminais ocidentais, é correto.
Eu sugeriria acrescentar à taça, gerenciamento de pedidos OCO ligados até três níveis.
E em geral, você pode pegar qualquer Dock funcional do mercado ocidental e ver o que é implementado nele.
Ou veja como o QScalp scalper drive é implementado.
Em que idioma o programa está escrito?
Qual é a velocidade real de processamento dos dados recebidos?
Como os dados são distribuídos por níveis de preço?
Em um para loop ou para cada nível tem sua própria variável com dados?
O fato de ter escolhido o tipo de vista do vidro, como nos terminais ocidentais, é correto.
Eu sugeriria acrescentar ao vidro, gerenciamento de licitações OCO ligadas até três níveis.
Aqui está o código para distribuir os dados para as células do meu copo:
Para registrar os dados recebidos, eu fiz uma matriz de 100 células. Distribuo os dados recebidos do centro da matriz (célula 49) para o lado asc e bid, calculando antecipadamente o preço mais próximo ao lado asc e bid.