Os Fundamentos da programação orientada a objetos
Os Fundamentos da programação orientada a objetos
Você não precisa saber o que são polimorfismo, encapsulação, etc. tudo sobre o uso da programação orientada a objeto (OOP)... você pode simplesmente usar estes recursos. Este artigo cobre o básico de OOP com exemplos práticos.
Expondo código C# para MQL5 usando exportações não gerenciadas
Expondo código C# para MQL5 usando exportações não gerenciadas
Neste artigo eu apresentei diferentes métodos de interação entre o código MQL5 e o código C# gerenciado. Eu também ofereci vários exemplos de como organizar estruturas MQL5 contra C# e como invocar funções de DLL exporta em scripts MQL5. Eu acredito que forneci exemplos que podem servir como uma base para pesquisas futuras sobre escrever DLLs em código gerenciado. Este artigo também abre portas para o MetaTrader usar muitas bibliotecas que já estão implementadas em C#.
Guia para escrever uma DLL para MQL5 em Delphi
Guia para escrever uma DLL para MQL5 em Delphi
O artigo examina o mecanismo de criação de um módulo DLL, usando a linguagem de programação popular de ObjectPascal, dentro de um ambiente de programação Delphi. Os materiais, fornecidos neste artigo, são designados a focar principalmente em programadores iniciantes, que estejam trabalhando com problemas que rompem os limites da linguagem de programação embutidos do MQL5, conectando os módulos DLL externos.
O exemplo simples da criação de um indicador utilizando a lógica Fuzzy
O exemplo simples da criação de um indicador utilizando a lógica Fuzzy
O artigo dedica-se à aplicação prática do conceito da lógica fuzzy para análise de mercados financeiros. Propomos o exemplo dos sinais de geração de indicador com base em duas regras fuzzy baseadas no indicador Envelopes. O indicador desenvolvido usa diversos buffers de indicador: 7 buffers para cálculo, 5 buffers para a exibição dos gráficos e 2 buffers de cor.
OpenCL: Da programação ingênua até a mais perceptível
OpenCL: Da programação ingênua até a mais perceptível
Este artigo foca em alguns recursos de otimização que se abrem quando pelo menos alguma consideração é dada ao hardware subjacente em que kernel OpenCL é executado. Os valores obtidos estão longe de serem os valores de teto, mas eles mesmos sugerem que tendo os recursos existentes disponíveis aqui e agora (OpenCL API como implementado pelos desenvolvedores do terminal não permite controlar alguns parâmetros importantes para otimização - particularmente, o tamanho do grupo de trabalho), o ganho de desempenho ao longo da execução do programa anfitrião é muito importante.
Utilizando WinInet.dll para a troca de dados entre plataformas via internet
Utilizando WinInet.dll para a troca de dados entre plataformas via internet
Este artigo descreve os princípios do trabalho com a Internet por meio do uso de requisições HTTP e troca de dados entre terminais, usando um servidor intermediário. Uma classe de biblioteca MqlNet é apresentada para trabalho com recursos de internet no ambiente MQL5. Preços de monitoramento de diferentes corretores, mensagens de câmbio com outros negociadores sem sair do terminal, busca por informação na Internet - estes são apenas alguns exemplos, analisados neste artigo.
Eliminação de DLLs autogeradas
Eliminação de DLLs autogeradas
Se a linguagem MQL5 funcional não é suficiente para o cumprimento de tarefas, um programador MQL5 tem que usar ferramentas adicionais. Ele \ ela tem que passar para outra linguagem de programação e criar uma DLL intermediária. O MQL5 tenha a possibilidade de apresentar vários tipos de dados e transferí-los à API mas, infelizmente o MQL5 não pode resolver a questão levando em consideração a extração de dados do ponteiro aceito. Neste artigo vamos pontuar todos os "i"s e mostrar mecanismos simples de transferência e trabalho tipos complexos de dados.
Documentação gerada automaticamente para o código MQL5
Documentação gerada automaticamente para o código MQL5
A maioria dos codificadores Java estará familiarizada com a documentação gerada automaticamente com o JavaDocs. A ideia é adicionar comentários no código de uma maneira semi-estruturada que possam ser extraídos em um arquivo de ajuda fácil de navegar. O mundo do C++ também possui vários geradores automáticos de documentação, com os dois líderes sendo o SandCastle da Microsoft e o Doxygen. O artigo descreve o uso do Doxygen para criar o arquivo de ajuda HTML a partir dos comentários estruturados no código MQL5. O experimento funcionou muito bem, acredito que a documentação de ajuda que o Doxygen produz do código MQL5 irá agregar uma grande quantidade de valor.
Módulo de sinais de negociação utilizando o sistema Bill Williams
Módulo de sinais de negociação utilizando o sistema Bill Williams
O artigo descreve as regras do sistema de negociação Bill Williams, o procedimento da aplicação de um módulo MQL5 desenvolvido com o objetivo de procurar e marcar padrões deste sistema no gráfico, as negociações automatizadas de acordo com os padrões encontrados e por fim, apresenta os resultados dos testes em vários instrumentos de negociação.
Teoria de Mercado
Teoria de Mercado
A lógica completa da teoria do mercado que cobre todos os tipos e variedades de mercados de bens e serviços, não estava disponível até agora aos mercados micro e macro, como o Forex. Este artigo aborda a essência de uma nova teoria do mercado com base na análise do lucro, revela padrões de mudança dos preços em andamento e o princípio da operação de um mecanismo a permitir que o preço encontre o seu valor ideal, através da formação de uma cadeia de preços virtuais que desenvolvem um controle sobre o preço real. Mecanismos de formação e de mudança das tendências do mercado também são identificados aqui.
Comunicando-se com o MetaTrader 5 utilizando pipes nomeados sem DLLs
Comunicando-se com o MetaTrader 5 utilizando pipes nomeados sem DLLs
Muitos desenvolvedores encontram o mesmo problema - como chegar ao sandbox do terminal sem utilizar DLLs arriscados. Um dos métodos mais fáceis e seguros é utilizar pipes nomeados padrão que funcionam como operações de arquivo normais. Eles permitem que você organize a comunicação cliente-servidor interprocessadores entre programas. Dê uma olhada em exemplos práticos em C++ e MQL5 que incluem servidor, cliente, a troca de dados entre eles e avaliação de desempenho.
Distribuições de probabilidade estatística em MQL5
Distribuições de probabilidade estatística em MQL5
O artigo aborda as distribuições de probabilidade (normal log-normal, binominal, logística, exponencial, distribuição de Cauchy, distribuição T de Student, distribuição Laplace, distribuição Poisson, distribuição Secante Hiperbólica, distribuição Beta e Gama) de variáveis aleatórias usadas nas Estatísticas Aplicadas. Também apresenta classes para lidar com estas distribuições.
Negociação Bidirecional e de cobertura de posições no MetaTrader 5 Através do Painel de HedgeTerminal, Parte 1
Negociação Bidirecional e de cobertura de posições no MetaTrader 5 Através do Painel de HedgeTerminal, Parte 1
Este artigo descreve uma nova abordagem para cobertura de posições e desenha uma linha nos debates entre os usuários do MetaTrader 4 e MetaTrader 5 sobre esta matéria. Os algoritmos que fazem essa cobertura confiável são descritos em termos leigos e ilustrado com gráficos e diagramas simples. Este artigo é dedicado ao novo painel HedgeTerminal, que é essencialmente um terminal de negociação com todos os recursos dentro do MetaTrader 5. Usando HedgeTerminal e a virtualização das operações de negociação que ele oferece, posições podem ser gerenciados de forma semelhante ao MetaTrader 4.
Construindo um negociante de notícias automático
Construindo um negociante de notícias automático
Essa é a continuação do artigo Outra classe orientada a objeto do MQL5, que mostrou a você como construir um CE orientado a objeto simples do inicio e deu a você algumas dicas sobre programação orientada a objeto. Hoje vou mostrar a você o fundamental técnico necessário para desenvolver um EA capaz de negociar as notícias. Meu objetivo é continuar a dar ideias a você sobre OOP e também cobrir um novo tópico nesta série de artigos, trabalhando com o sistema de arquivo.
Criando Filtros Digitais Sem Atraso
Criando Filtros Digitais Sem Atraso
O artigo descreve uma das abordagens para a determinação de um sinal útil (tendência) num fluxo de dados. Pequenos testes de filtragem (suavização) aplicados às cotações do mercado demonstram o potencial para a criação de filtros digitais sem atrasos (indicadores) que não são redesenhados nas últimas barras.
Fundamentos básicos da Programação MQL5: Lista
Fundamentos básicos da Programação MQL5: Lista
A nova versão da linguagem de programação MQL (MQL5) para o desenvolvimento de estratégias de negociação fornece recursos mais poderosos e eficazes em comparação com a versão anterior (MQL4). A vantagem reside essencialmente nos aspectos da programação orientada a objetos. Este artigo analisa a possibilidade de uso de tipos de dados personalizados complexos, como nós e listas. Ele também fornece um exemplo prático de como usar listas na linguagem MQL5.
Princípios da Precificação da Bolsa Tomando como Exemplo o Mercado de Derivativos da Bolsa de Moscou (MOEX)
Princípios da Precificação da Bolsa Tomando como Exemplo o Mercado de Derivativos da Bolsa de Moscou (MOEX)
Este artigo descreve a teoria de precificação cambial e das especificidades da Câmara de Compensação (Clearing) do Mercado de Derivativos da Bolsa de Moscou (MOEX). Este é um artigo abrangente para iniciantes que querem obter uma primeira experiência na negociação de derivativos cambial, bem como para os traders experientes do mercado forex que estão considerando a negociação em plataforma centralizada da bolsa de valores.
Os Expert Advisors prontos a partir do Assistente MQL5 funcionam no MetaTrader 4
Os Expert Advisors prontos a partir do Assistente MQL5 funcionam no MetaTrader 4
No artigo, propõe-se um emulador simples do ambiente de negociação MetaTrader 5 para o MetaTrader 4. Com sua ajuda é possível transferir e adaptar as classes de negociação da biblioteca padrão. Como resultado, os EAs gerados no Assistente do MetaTrader 5 podem ser compilados e executados sem alterações no MetaTrader 4.
Previsão de séries temporais utilizando suavização exponencial
Previsão de séries temporais utilizando suavização exponencial
O artigo familiariza o leitor com os modelos de suavização exponencial usados para previsão de curto prazo de séries de tempo. Além disso, ele toca em assuntos relacionados com a estimativa e otimização dos resultados de previsão e fornece alguns exemplos de scripts e indicadores. Este artigo será útil como primeira familiarização com os princípios de previsão baseados nos modelos de suavização exponencial.
Criação de documentos com base em códigos-fonte MQL5
Criação de documentos com base em códigos-fonte MQL5
No artigo é estudada a criação de documentação para um código em linguagem MQL5, partindo da automação de tags (marcação). Além disso, quanto ao programa Doxygen, é descrito seu funcionamento, adequada configuração e obtenção de resultados em vários formatos (HTML, HtmlHelp e PDF).
Guia Prático Estatística do Trader: Hipóteses
Guia Prático Estatística do Trader: Hipóteses
Este artigo considera a hipótese - uma das idéias básicas da estatística. Várias hipóteses são examinadas e verificadas através de exemplos usando métodos matemáticos da estatística. Os dados reais são generalizados usando métodos não-paramétricos. O pacote Statistica e a bilbioteca de análise numérica ALGLIB MQL5 são usadas ​​para o processamento de dados.
MQL5 vs QLUA - Por que operações de negociação no MQL5 são até 28 vezes mais rápidas?
MQL5 vs QLUA - Por que operações de negociação no MQL5 são até 28 vezes mais rápidas?
Você já se perguntou como a sua ordem é entregue tão rápida na bolsa? Também já se perguntou quanto tempo seu terminal precisa para receber o resultado da operação? Nós fizemos uma comparação da velocidade de execução da operação de negociação, pois ninguém nunca mediu esses valores utilizando aplicações nas linguagens de programação MQL5 ou QLUA.
Os membros mais ativos do website MQL5.community ganharam iPhones!
Os membros mais ativos do website MQL5.community ganharam iPhones!
Após termos decidido premiar os participantes mais proeminentes do website MQL5.com, selecionamos os critérios-chave para determinar a contribuição de cada participante para o desenvolvimento da comunidade. Como resultado, temos os seguintes vencedores que publicaram a maior quantidade de artigos no website - investeo (11 artigos) e victorg (10 artigos), e os que enviaram os seus programas à Base de códigos – GODZILLA (340 programas), Integer (61 programas) e abolk (21 programas).
Como desenvolver um Expert Advisor usando ferramentas de UML
Como desenvolver um Expert Advisor usando ferramentas de UML
Este artigo discute a criação de Expert Advisors usando a linguagem gráfica UML, que é usada para modelagem visual de sistemas de software orientados a objeto. A principal vantagem dessa abordagem é a visualização do processo de modelagem. O artigo contém um exemplo que mostra a modelagem da estrutura e propriedades de um Expert Advisor usando o Software Ideas Modeler.
Expert Advisor baseado em "New Trading Dimensions" por Bill Williams
Expert Advisor baseado em "New Trading Dimensions" por Bill Williams
Neste artigo, discutirei o desenvolvimento do Expert Advisor, baseado no livro "New Trading Dimensions: How to Profit from Chaos in Stocks, Bonds, and Commodities" por Bill Williams. A estratégia em si é bem conhecida e seu uso ainda é controverso entre os negociadores. O artigo considera os sinais de negociação do sistema, os aspectos específicos de sua implementação e os resultados de teste em dados do histórico.
Usar MetaTrader 5 como um provedor de sinal para o MetaTrader 4
Usar MetaTrader 5 como um provedor de sinal para o MetaTrader 4
Análise e exemplos de técnicas de como a análise de negociação pode ser realizada na plataforma MetaTrader 5, mas executada pelo MetaTrader 4. O artigo irá mostrar-lhe como criar provedor de sinais simples em seu MetaTrader 5, e conectá-lo a vários clientes, mesmo executando MetaTrader 4. Além disso, você vai descobrir como você pode acompanhar os participantes do Campeonato de negociação automatizada na sua conta real do MetaTrader 4.
Aplicação prática de bancos de dados para análise de mercado
Aplicação prática de bancos de dados para análise de mercado
Trabalhar com dados se tornou a tarefa principal para o software moderno - tanto para aplicativos autônomos quanto para os de rede. Para solucionar esse problema um software especializado foi criado. São sistemas de gerenciamento de banco de dados (DBMS) que podem estruturar, sistematizar e organizar dados para seu armazenamento e processamento. Quanto aos negócios, a maioria dos analistas não utiliza bancos de dados em seu trabalho. Mas existem tarefas para as quais essa solução teria que ser útil. Este artigo fornece um exemplo de indicadores que podem salvar e carregar dados da partir de bancos de dados com ambas arquiteturas cliente-servidor ou arquivo-servidor.
Resumo do Mercado MetaTrader (infográfico)
Resumo do Mercado MetaTrader (infográfico)
Duas semanas atrás nós publicamos o infográfico do serviço Freelance. Nós também prometemos revelar algumas estatísticas sobre o mercado MetaTrader. Agora, nós convidamos você a examinar os dados que reunimos.
Filtragem de Sinais com Base em Dados Estatísticos de Correlação de Preço
Filtragem de Sinais com Base em Dados Estatísticos de Correlação de Preço
Existe alguma correlação entre o comportamento do preço passado e suas futuras tendências? Por que o preço repete hoje a característica de seu movimento do dia anterior? A estatística pode ser usada para prever a dinâmica de preço? Existe uma resposta, e é positiva. Se tiver alguma dúvida, então, este artigo é para você. Vou lhe dizer como criar um filtro de trabalho para um sistema de negócio no MQL5, revelando um padrão interessante nas mudanças de preço.
Gráficos e diagramas em HTML
Gráficos e diagramas em HTML
Hoje é difícil encontrar um computador que não tenha um WEB-browser instalado. Por um longo tempo os browsers têm evoluído e melhorado. Este artigo discute o modo simples e seguro de criar gráficos e diagramas, com base nas informações obtidas a partir do terminal de cliente MetaTrader 5 para exibí-los no navegador.
Usando Pseudo-modelos como Alternativa para Modelos C++
Usando Pseudo-modelos como Alternativa para Modelos C++
O artigo descreve uma forma de programação sem usar templates, mas mantendo o estilo de programação inerente a eles. Ele nos diz sobre a implementação de templares usando métodos personalizados e possui um script pronto para uso anexo para criação de código com base de templates especificados.
Crie Seu Próprio Expert Advisor no MQL5 Wizard
Crie Seu Próprio Expert Advisor no MQL5 Wizard
O conhecimento das linguagens de programação não é mais um pré-requisito para a criação de robôs de negociação. Anteriormente, a falta de habilidades de programação era um obstáculo intransponível para a implementação de estratégias de negociação próprias, mas com o surgimento do MQL5 Wizard, a situação mudou radicalmente. Os comerciantes inexperientes podem parar de se preocupar por causa da falta de experiência em programação - com o novo Wizard, que permite gerar código do Expert Advisor, isso não é necessário.
Visualize isto! Biblioteca gráfica em linguagem MQL5 como equivalente a plot de R
Visualize isto! Biblioteca gráfica em linguagem MQL5 como equivalente a plot de R
A exibição visual usando gráficos desempenha um importante papel na exploração e estudo de padrões regulares. Nas populares linguagens de programação entre a comunidade científica, tais como R e Python, a função especial plot é destinada para visualização. Com ela você pode desenhar linhas, gráficos de dispersão e histogramas para visualizar padrões. Em linguagem MQL5 você pode fazer a mesma coisa usando a classe CGraphics.
SQL e MQL5: Trabalhando com Banco de Dados SQLite
SQL e MQL5: Trabalhando com Banco de Dados SQLite
Este artigo é destinado aos desenvolvedores interessados ​​em usar SQL em seus projetos. Ele explica as funcionalidades e vantagens do SQLite. O artigo não exige conhecimentos especiais de funções SQLite, mas é interessante um conhecimento mínimo de SQL.
Indicadores de William Blau e sistemas de comércio no MQL5. Parte 1: Indicadores
Indicadores de William Blau e sistemas de comércio no MQL5. Parte 1: Indicadores
O artigo apresenta os indicadores descritos no livro de William Blau "Momentum, Direction, and Divergence". A abordagem de William Blau nos permite prontamente e precisamente aproximar as flutuações da curva de preço, para determinar a tendência de movimentos de preço e os pontos de virada e eliminar o ruído de preço. Entretanto, também somos capazes de detectar estados de excesso de compra ou venda do mercado e sinais indicando o fim da tendência e reverso do movimento de preço.
Troca de dados entre indicadores: é fácil!
Troca de dados entre indicadores: é fácil!
Queremos criar um ambiente que fornecesse acesso aos dados de indicadores anexos ao gráfico e que teria as seguintes propriedades: ausência de cópia de dados; modificação mínima do código dos métodos disponíveis, se precisarmos usá-los; preferencialmente código MQL (claro, temos que usar o DLL, mas usaremos apenas algumas strings do código C++). O artigo descreve um método fácil para desenvolver um ambiente de programa para o terminal MetaTrader, que poderia fornecer meios para acessar os buffers dos indicadores de outros programas MQL.