A chegada de uma nova geração de software comercial. Como deve ser a interface EA? - página 13

 
Yury Kulikov:

Acho que devemos começar com o Especialista. Eu dei três tipos de tarefas que são relevantes para o especialista, mas afinal elas não são viáveis em sua interface.

O que poderia ajudar? Talvez uma integração mais profunda, ou limitar o projeto ao "controle remoto".

Eu não disse que estas tarefas não são viáveis em minha interface). Eu quis dizer que as tecnologias baseadas no OOP não podem ser integradas ao meu código, devido à incompatibilidade de abordagens. Eu mesmo terei que implementar estas tarefas, depois que as coisas básicas (prioridade máxima) forem feitas.
 

sua energia para fins pacíficos :-)

É claro que entendo que o desenvolvimento de bibliotecas GUI é um negócio criativo e de certa forma até gratificante (você escreve código, desenha janelas, vê o resultado). Mas é um beco sem saída e tanto tempo desperdiçado...

Resumindo, como se obtém uma GUI alternativa à MT:

- uma DLL é escrita que:

- na primeira chamada, cria um traçado separado e inicializa o subsistema gráfico

- para cada usuário duas filas de mensagens - da MT para a GUI e vice-versa.

- é criada uma classe MQ4/5 que basicamente processa/filtra mensagens nestas filas e as move para frente e para trás a partir do site СhartEvent.

- uma API opcional para compartilhar estruturas e sincronizar arrays

Desta forma, você pode se conectar a praticamente qualquer sistema moderno:

- você pode usar Dotnet com seus winforms e outrosShare (havia um artigo em algum lugar no recurso sobre como enganchar o código do gerente e fazer uma dll em C#)

- gtk e design em glade https://glade.gnome.org/

- Qt com seu designer https://www.qt.io/ui/

- você pode até rodar um servidor http com algumas restrições :-)

A arquitetura "certa" acaba sendo - a GUI explorável vive em um fio separado e não retarda os EAs/indicadores. O GUI é projetado e desenhado por "pessoas especialmente treinadas" :-) O Expert Advisor/indicador é praticamente um "modelo" (como na MVC e similares).

Glade - A User Interface Designer
  • glade.gnome.org
Glade is a RAD tool to enable quick & easy development of user interfaces for the GTK+ toolkit and the GNOME desktop environment. The user interfaces designed in Glade are saved as XML, and by using the GtkBuilder GTK+ object these can be loaded by applications dynamically as needed. By using GtkBuilder, Glade XML files can be used in...
 
Реter Konow:
Eu não disse que estas tarefas não são viáveis em minha interface). Eu quis dizer que as tecnologias baseadas no OOP não podem ser integradas ao meu código, devido à incompatibilidade de abordagens. Eu mesmo terei que implementar estas tarefas, depois de ter terminado de implementar as coisas básicas (de maior prioridade).

O OOP não tem nada a ver com isso. É claro que você pode passar cordas e eventos através de variáveis globais, mas este é um caso especial, mas não para um projeto de grande escala, além disso, alegando ser "uma nova geração de programas comerciais".

 
Maxim Kuznetsov:

sua energia para fins pacíficos :-)


Meus objetivos são puramente pacíficos).

Sua sugestão é interessante. Sugiro que você tente implementá-lo.

Pessoalmente, para mim é bastante óbvio: preferir as soluções de outras pessoas às suas é uma escolha contra si mesmo.

A MT tem seu próprio idioma. Por que você precisa dele quando você tem C++ e C#? Por que ela foi criada?

Acho que ele foi criado porque esses idiomas não estavam ajustados de forma ideal para as tarefas dos negociantes de algo. Eles precisavam de uma linguagem especializada e aplicada.

Os usuários não se importam em como criar uma interface, desde que isso possa ser feito facilmente. Criar uma interface, como você sugere, só pode ser criado por um profissional sério, enquanto para o resto é às vezes difícil usar a biblioteca MT padrão, sem mencionar as diferentes conexões de programas de terceiros através de DLL.

Se eu estivesse desenvolvendo sua versão, não seria capaz de divulgá-la na comunidade, onde como você sabe a DLL pode ser usada principalmente para mim mesmo. E o que esta solução faria bem aos outros?

Sua solução é possível, mas não pode ser amplamente distribuída.

 
Yury Kulikov:

O OOP não tem nada a ver com isso. É claro que você pode passar cordas e eventos através de variáveis globais, mas este é um caso especial, mas não para um projeto de grande escala, além disso, alegando ser "uma nova geração de programas comerciais".

Infelizmente, não posso tirar nenhuma vantagem construtiva de suas críticas e transformá-la em meu negócio. Talvez eu não entenda totalmente sua mensagem...
 

Amigos, estou voltando ao trabalho em um projeto que estagnou um pouco enquanto estou ocupado conversando no fórum. Periodicamente postarei aqui sobre o progresso do meu desenvolvimento e responderei a todos.

Se você tiver alguma idéia, idéia ou sugestão para a interface de futuros EAs, sinta-se à vontade para escrever.

Obrigado.

 
Реter Konow:

Entretanto, dificuldades como a falta de tecnologia, a ausência de padrões comuns, a baixa qualidade dos gráficos criados e outros problemas enfrentados por programadores que assumiram o risco de criar uma interface de usuário de seu robô comercial. Ficou claro que é muito mais difícil criar uma IU completa para MTs, do que codificar a lógica comercial, escrever algoritmos de coleta de estatísticas ou implementar o reconhecimento de padrões em uma estratégia. São estas dificuldades que se tornaram um obstáculo para a transição do comércio algorítmico para um novo nível de comércio algorítmico, onde a área de interação necessária entre uma pessoa e um programa é grandemente expandida, aumentando a eficácia do comércio e desbloqueando o potencial das idéias mais originais. A área de interação, que permite compensar as desvantagens do programa de "ferro" ligado a algoritmos, através da flexibilidade do pensamento humano.

Agora os EAs são como bondes que funcionam estritamente sobre trilhos, e os usuários não sabem mais nada, mas imagine se os EAs se tornassem como carros, com a opção de dirigir em qualquer direção? Com tais "carros" você pode se sentir muito mais confiante no mercado ...

Boa tarde a todos.

Muito bem escrito sobre o novo nível de comercialização algorítmica. O fato - uma interface moderna para o comércio é uma coisa muito necessária. Como criar isso é uma questão à parte. Nós, por exemplo, temos estatísticas ao vivo em nosso site. Mas é possível se o robô estiver vinculado a um recurso externo e a IU for implementada lá. Não tentamos usar infografias na MT e criamos onde é conveniente. Além disso, um comerciante comum sabe como usar um navegador, e qualquer nova interface que você ainda precise aprender e se acostumar. Para os usuários, as estatísticas individuais estão a caminho, em breve haverá muito mais.

Mas sobre o bonde: para onde você dirige? O que você quer dizer? Nossa experiência tem mostrado que robôs escritos, testados e afinados que atravessam o mercado de moedas "como bondes" são mais seguros e mais eficazes do que quando os comerciantes dirigem. Voltar para o bonde - compreender qual o caminho que ele toma é importante. Mas se o ponto final for o mesmo - qual é o objetivo de um carro? A probabilidade de um acidente é muitas vezes maior. São precisamente aqueles que tentam "pilotar" que nos causam problemas.

 
Реter Konow:
Isso é ótimo! Eu também gostaria disso. Entretanto, a inteligência artificial poderia ficar gananciosa e levar uma porcentagem de lucro em seu bolso, ou falir o proprietário com base na animosidade pessoal)).
Tudo o que você precisa é de um grande botão "get paid" na tela e os verdes sairiam do DVD de uma só vez))
 
Algorithmfx Algorithmfx:

Boa tarde a todos.

Muito bem escrito sobre o novo nível de comercialização algorítmica. O fato é que uma interface moderna para o comércio é uma coisa muito necessária. Como criar uma é uma questão à parte. Nós, por exemplo, temos estatísticas ao vivo em nosso site. Mas é possível se o robô estiver vinculado a um recurso externo e a IU for implementada lá. Não tentamos usar infografias na MT e criamos onde é conveniente. Além disso, um comerciante comum sabe como usar um navegador, e qualquer nova interface que você ainda precise aprender e se acostumar. Para os usuários as estatísticas individuais estão a caminho, muito mais está por vir em breve.

Mas sobre o bonde: para onde você dirige? O que você quer dizer? Nossa experiência tem mostrado que robôs escritos, testados e afinados que atravessam o mercado de moedas "como bondes" são mais seguros e mais eficazes do que quando os comerciantes dirigem. Voltar para o bonde - compreender qual o caminho que ele toma é importante. Mas se o ponto final for o mesmo - qual é o objetivo de um carro? A probabilidade de um acidente é muitas vezes maior. São precisamente aqueles que tentam "pilotar" que nos causam problemas.

Boa tarde.

A essência do meu conceito de conselheiros do futuro (trabalhando para a MT), baseia-se na convicção de que é necessário conectar e centralizar tudo o que é necessário, dentro de um único programa.

Estou convencido de que a máxima eficiência de qualquer programa reside precisamente em sua centralização e versatilidade. Combinando o número máximo de características relevantes e cortando tudo o que é desnecessário, pode melhorar qualitativamente a eficiência de qualquer mecanismo, incluindo a EA. No momento, a maioria das variantes propostas de robôs comerciais está focada em tentativas de conectar idiomas e recursos incompatíveis de diferentes maneiras. Eles sugerem o uso de DLLs externas, interfaces construídas em estúdios visuais, diferentes serviços estatísticos, etc... Devo observar que a tarefa de aumentar a capacidade do robô comercial pode ser resolvida desta forma, mas é óbvio - esta solução é inconveniente e não é adequada para todos.

Até que cada pessoa, mesmo um não muito hábil algotrader, não será capaz de independentemente (ou com a ajuda de outra pessoa) sem grandes despesas para construir um robô comercial que ele queira usar, e até que ele não seja mais obrigado a recorrer a recursos externos tentando resolver as tarefas mais complicadas de integrá-los e consertá-los, os robôs comerciais não irão saltar para um novo nível. Esta é a minha convicção.

Estatísticas externas e estatísticas dentro de um robô são coisas fundamentalmente diferentes. No primeiro caso somente o usuário pode monitorar as estatísticas e redefinir alguns parâmetros de sua estratégia, no segundo caso as estatísticas comerciais podem ser analisadas pelo Expert Advisor em tempo real, permitindo que o próprio robô ajuste suas configurações. Você pode escrever algoritmos para corrigir configurações da estratégia comercial, com a opção de substituição completa da estratégia a baixos valores estatísticos. O potencial de desenvolvimento desta idéia é óbvio. Isto é o que eu quis dizer com "direção", que está disponível para um carro e não disponível para um bonde.

Uma opção onde a EA está localizada em uma plataforma, sua interface está em outra, e a estatística está em uma terceira, não parece boa em termos de um mecanismo ideal que todos querem ter para sua EA. ))

 
Alexey Volchanskiy:
Basta um grande botão "get paid" na tela, e os verdes saem diretamente do DVD )).
Já tivemos aqui uma discussão sobre tal botão. O tema é muito popular e requer um ramo especial).