Discussão do artigo "Os projetos permitem que criar robôs de negociação lucrativos! Mas não é exatamente isso" - página 2
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
Só pode haver um arquivo compilado principal em um projeto. Todos os outros códigos-fonte podem servir como arquivos de inclusão.
Você pode incluir arquivos EX5 no projeto como recursos, por exemplo, indicadores compilados.
E como incluir um indicador personalizado no projeto EA? (não como um recurso, mas para que o código editável esteja disponível).
Como incluir um indicador personalizado no projeto EA? (não como um recurso, mas para que o código editável esteja disponível)
Essa possibilidade não existe. O indicador pode estar fora da pasta do projeto; você precisa especificar corretamente o caminho para ele, conforme indicado no anúncio da versão 2485.
Essa possibilidade não existe. O indicador pode estar fora da pasta do projeto; você precisa especificar corretamente o caminho para ele, conforme declarado no anúncio da compilação 2485.
Esclareça: "agora não existe mais essa possibilidade"? Ou seja, as regras de criação de projetos se tornaram mais rígidas?
Esclareça: "agora não há mais essa possibilidade"? Então as regras para a criação de um projeto se tornaram mais rígidas?
É assim que sempre foi
É assim que sempre foi
Meu projeto foi criado há muito tempo: ele tinha um indicador e um Expert Advisor - tudo estava funcionando no momento da publicação. Tanto o indicador quanto o Expert Advisor estavam em uma pasta Shared project.
Em 2485, ele parou de funcionar.
Bem, movi o indicador para uma pasta separada - fora do Shared Projets: (é claro, eu o compilei em um novo local).
[pasta de dados]\MQL5\Indicators\AlligatorAndStochastic histogram\AlligatorAndStochastic histogram.mq5
Escrevi o caminho no Expert Advisor.
Supostamente, estou acessando a pasta Indicators\AlligatorAndStochastic histogram\AlligatorAndStochastic histogram.
Mas recebo um erro:
Mas o arquivo está definitivamente lá:
O que são esses milagres?
Vou repetir: a variante (que funcionava anteriormente) - há um Expert Advisor e um indicador juntos no projeto
Hoje, no dia 2485, ele começou a gerar um erro - arquivo não encontrado.
Depois de muitos experimentos, movi o indicador para fora dos Projetos Compartilhados, para uma pasta separada. Nenhum resultado
Excluí a pasta. Reverti todas as alterações do projeto (ou seja, agora tanto o COUNTER quanto o INDICATOR estão na mesma pasta) - e, oh, que maravilha: a depuração no histórico começou:
Quem deseja verificar o projeto 'AlligatorAndStochastic'?
O tópico do artigo é bastante importante, mas o artigo em si é uma promoção vazia que se concentra no objetivo final de criar EAs lucrativos, mas não considera de forma alguma os aspectos aplicados do uso da funcionalidade Projetos para organizar a interação entre os participantes enquanto trabalham em EAs complexos.
De fato, a funcionalidade atual do MQL-projects é muito pobre e essencialmente inadequada para a organização de projetos. É por isso que muitos membros proeminentes do fórum escolhem o Github para hospedar seus projetos públicos e privados (por exemplo, o repositório PublicMqlProjects de Vasily Sokolov é bastante famoso).
Recentemente, fiz um pedido no Freelance de componentes gráficos separados para o meu especialista(SixPanels), porque queria paralelizar o trabalho - concentrar-me na funcionalidade central e terceirizar a criação da interface gráfica, ou seja, organizar a interação do projeto com um dos desenvolvedores. No entanto, para economizar meu próprio conhecimento, isso exigiu de mim e do cliente vários insumos de trabalho improdutivos:
- Eu tive que criar um conjunto inteiro de classes vazias emulando o trabalho de classes reais,
- o cliente, no decorrer da implementação, teve que reescrever uma parte dessas classes, o que foi feito sem sincronização com meu desenvolvimento contínuo da parte central do EA,
.- Como resultado do atendimento do pedido, precisei realizar a reintegração dos componentes gui com meu código, fazendo alterações no código dos componentes gui.
Além disso, para passar a habilitar o segundo pedido, precisarei fazer adaptações adicionais de classes vazias no código dos componentes gui integrados.
Portanto, hoje, quando tenho um dia livre, decidi abordar o tópico das deficiências da funcionalidade do MT5.Projects de forma mais completa, tendo em vista minha experiência recente em desenvolvimento distribuído e minha experiência profissional no gerenciamento de projetos de TI.
As deficiências da funcionalidade do projeto MQL descritas abaixo estão condicionalmente divididas em duas partes:
A. Deficiências da funcionalidade atual em termos de organização e manutenção de projetos
B. Desvantagens da funcionalidade atual em termos de integração no ecossistema MQL5.com
А. Desvantagens da funcionalidade atual dos projetos MQL em termos de organização e manutenção de projetos
Desvantagens, por causa das quais os participantes agora escolhem o Github em vez do MT5.Projects1.Estrutura de funções incompleta, sem a capacidade de fornecer acesso de participantes individuais a catálogos de projetos individuais
Caso de uso 1: Contratação de um freelancer pago para realizar parte do trabalho em um projeto maior
Caso de uso 2: Distribuição de trabalho entre desenvolvedores para fins de proteção
Como eliminar a desvantagem: criar distribuição de acesso no nível de catálogos de projetos individuais e estender a estrutura de acesso atual para o seguinte.Proprietário (acesso total no nível de todo o projeto + administração do participante) , Participante (acesso total no nível de todo o projeto), Desenvolvedor (acesso total no nível do diretório raiz e subdiretórios individuais) , Observador (acesso de visualização no nível de todo o projeto); sem atribuir direitos de acesso, um participante com a função Desenvolvedor não tem acesso a todos os subdiretórios.
2.Não há funcionalidade de agendamento e alocação de tarefas
Caso de uso 1: Requer a fixação de uma lista de tarefas a serem executadas e a alocação/atribuição de tarefas aos participantes
Caso de uso 2: Requer a criação de uma estrutura ordenada de tarefas a serem concluídas durante o projeto
Caso de uso 2: Necessidade de levar em conta feriados e períodos de inatividade dos participantes
Como solucionar a deficiência: paralelamente ao sistema de versionamento de arquivos e armazenamento em nuvem SVN, lançar o sistema jira server, integrando alguns de seus componentes ao MetaEditor, em particular componentes como Tarefas e Quadros; ou seja, essencialmente criando um projeto MQL.Ou seja, em essência, a criação de um projeto MQL no MetaEditor deve resultar na alocação de espaço de arquivo no SVN e no registro automático do novo projeto no sistema Jira.
3.Não há funcionalidade para executar/compilar vários mq5 em um projeto
Caso de uso 1: É necessário o desenvolvimento paralelo em diferentes classes; para a conveniência dos testes, cada desenvolvedor faz uma cópia da classe principal do programa, alterando as referências às classes aninhadas que ele está refinando; para acelerar os testes, cada um executa sua própria instância da classe principal do programa.
Caso de uso 2: para distribuir threads nos núcleos do processador, desenvolva um Expert Advisor distribuído, cujas partes individuais se comunicam entre si por meio de um sistema de eventos ou arquivos comuns;
, por exemplo, agora tenho um Expert Advisor de 2 componentes: O back-end do bot do Telegram funciona como um especialista independente em um gráfico, analisa os comandos e os redireciona por meio de eventos para o núcleo em execução como um Expert Advisor no outro gráfico do mesmo símbolo (+ planejo adicionar um elemento 3x que funcionará como um serviço e fornecerá dados de fontes externas), e ambos os componentes dependem das mesmas bibliotecas e são essencialmente um projeto.
Como eliminar a desvantagem: dentro da estrutura do projeto, criar um ponteiro que indique qual arquivo .mq5 está compilado, o que pode ser definido no nível de cada participante do projeto; se houver mais de 2 arquivos .mq5 aninhados dentro do projeto, o MetaEditor permitirá, no nível do projeto, alterar o arquivo compilado pelo participante.
4.Não há funcionalidade de desenvolvimento integrado com relação a indicadores
Caso de uso 1: Os indicadores externos são, muitas vezes, a parte mais importante dos Expert Advisors, realizando funções de cálculo e visualização em gráficos.
Caso de uso 2: Os indicadores permitem a paralelização de cálculos dentro do fluxo do indicador.
A funcionalidade estava funcionando anteriormente, mas, por algum motivo, foi removida na versão mais recente do MetaEditor.
Basicamente descrito nas postagens acima, e acredito que o tópico não precisa de comentários separados.
Como corrigir o defeito: restaurar a funcionalidade da chamada no Expert Advisor e trabalhar por meio dos indicadores iCustom contidos nos subdiretórios do projeto.
5.Não há funcionalidade para dar suporte ao trabalho paralelo em diferentes versões do projeto (também conhecido como DevOps)
Caso de uso 1: É necessário garantir que diferentes participantes trabalhem no projeto em diferentes estágios para acelerar os lançamentos.
Caso de uso 2: Em uma situação em que o Expert Advisor já é usado pelos participantes para negociar em contas reais, é necessário fornecer versões com testes de alta qualidade
Como eliminar a desvantagem: criar uma estrutura mínima de edições do projeto: DEV, TEST, PROD; inicialmente, o projeto é criado como DEV, depois um participante com a função de proprietário pode criar a edição TEST e, em seguida, PROD; ao trabalhar com o projeto, cada participante pode alternar a versão definindo-a nas propriedades do projeto e voltar a trabalhar na edição anterior; um participante com a função de proprietário pode atualizar as edições TEST/PROD, enquanto o sistema exige o "consentimento" de todos os participantes com a função de proprietário.
В. Deficiências da funcionalidade atual dos projetos MQL em termos de integração no ecossistema MQL5.com
Deficiências que impedem o uso amplo dentro do ecossistema MQL5.com.Na verdade, a funcionalidade atual dos projetos MQL não está conectada ao ecossistema, portanto, é uma questão de estabelecer os links mais importantes.
O principal objetivo neste caso é o desenvolvimento do ecossistema MQL5.com e, em alguns casos, a monetização adicional para a empresa MQ.
6.Conexão com a seção Freelance (1): não há registro de solicitações conjuntas para encontrar participantes
Caso de uso 1: é necessário encontrar possíveis participantes do projeto com as habilidades necessárias, é necessário entender a experiência dos possíveis parceiros.
Caso de uso 2: é necessário selecionar a lista de possíveis projetos nos quais seria interessante participar.
Como eliminar a deficiência: criar uma subseção "Project Board" (Quadro de projetos) dentro da seção Freelance, na qual serão exibidas as solicitações dos organizadores para a busca de participantes (participação gratuita implícita na implementação de projetos), com o direito conjunto de usar o resultado final.
P.S.: agora, em uma determinada forma de cooperação, as discussões no fórum são feitas na forma de tópicos separados "Vou escrever um consultor de graça", etc., mas na verdade não estão organizadas de forma organizada, mas, na verdade, ele não está organizado de forma alguma em torno da função do projeto e, com frequência, a discussão se transforma em algum tipo de scrum e flooding. A organização do Comitê Diretor do Projeto permitirá vincular essa atividade à funcionalidade do projeto.
7Link para o Freelance (2): não há possibilidade de fazer um projeto como um pedido conjunto
Caso de uso 1: Vários participantes precisam pagar pela criação de uma nova funcionalidade com o envolvimento de um desenvolvedor externo do Freelance.
Como eliminar a desvantagem: crie uma guia "Pedidos de freelancers" no projeto, na qual serão registradas as solicitações com orçamento para freelancers; depois de selecionar um desenvolvedor, esse participante terá acesso ao projeto com a função "Desenvolvedor", cujos acessos contratuais são definidos pelos participantes com a função Proprietário.
Monetização (para MQ): aumento da complexidade dos pedidos conjuntos, possível aumento da verificação média dos pedidos.
8Link para o mercado (1): não há possibilidade de colocar os resultados do projeto à venda, recebendo participação automática nos lucros
Caso de uso 1: após a conclusão do projeto, os participantes decidem publicar o Expert Advisor/utilitário no mercado e precisam da funcionalidade de participação nos lucros na proporção fixada no projeto.
Como eliminar a desvantagem: crie uma guia "Freelance orders" no projeto, onde é possível registrar solicitações com um orçamento para Freelance; depois de selecionar um desenvolvedor, esse participante obtém acesso ao projeto com a função
9.Link para a seção Artigos
Caso de uso 1: Após a publicação de uma série de artigos com alguma biblioteca útil, o autor perde o interesse no desenvolvimento dessa biblioteca, a comunidade não tem ferramentas para suporte/desenvolvimento organizado dos produtos; o dinheiro da MQ pago aos autores da série de artigos vai para a areia (ou seja, o efeito é perdido por 1-2 anos após a publicação); os exemplos incluem "Universal Trading Expert" (V. Sokolov), "Easy & Fast GUI Library" (A. Kazharsky), que foram publicados pelos autores da série de artigos. Kazharsky), que foram abandonados/esquecidos por seus autores.
Como eliminar a desvantagem: para todos os autores que desenvolvem sua biblioteca em uma série de artigos, defina um requisito obrigatório para publicar a biblioteca na forma de um projeto público; nesse caso, a partir do terceiro artigo, deve ser definido um requisito adicional para incluir nesse projeto +1 membro da comunidade mql com a função de proprietário antes de cada artigo subsequente, ou +3 membros com a função de proprietário antes de cada artigo subsequente. Artigos ou +3 participantes com a função de Participante.
P.S. Em essência, se as publicações dos autores não encontrarem uma resposta nos participantes da comunidade mql na forma daqueles que desejam se tornar coproprietários do projeto e desenvolvê-lo ainda mais, então essa biblioteca não é interessante para a comunidade e seu desenvolvimento por meio de artigos não está sujeito a financiamento. Deixe que os autores a publiquem no Codebase e isso é tudo.
10 .Link para a funcionalidade MQ-Messaging
Caso de uso 1: Depois de reunir os participantes, você precisa organizar uma discussão, que agora é mais frequentemente realizada no Telegram ou no WhatsApp, ou seja, fora do ecossistema MQL5.com
Como eliminar essa desvantagem: nas configurações do projeto, crie uma caixa de seleção para abrir um canal fechado no sistema MQ-Communications associado ao projeto, ao qual os participantes do projeto são adicionados automaticamente.
Sem eliminar as desvantagens mencionadas acima, qualquer agitação como este artigo é apenas slogans vazios. Elas não levarão nem à popularidade da funcionalidade atual dos projetos nem à monetização do MQ.
O que é feito agora no âmbito dos projetos MQL pode ser considerado apenas como uma primeira etapa básica.
Para levar a funcionalidade dos projetos MQL a um novo nível de integração no ecossistema MQL5.com, é necessário eliminar as deficiências mencionadas acima.