A Universal Investment Strategies fornece opções de educação individual e de educação para investidores que procuram gerar renda ativa, passiva e de aposentadoria. Com mais de 25 anos de experiência combinada e milhares de clientes satisfeitos, a Universal Investment Strategies foi fundada nos princípios de que iremos caminhar com você lado a lado a cada passo. Nós nos esforçamos para ajudar nossos clientes a desenvolver uma sólida estratégia de negociação de opções para que possam ser bem-sucedidas. Trabalharemos para melhorar a sua compreensão Opções, técnicas de comércio e disciplina. Deixe-nos ajudá-lo a tornar-se um comerciante de opções eficaz. Entendemos que o mercado financeiro pode ser um lugar intimidante, especialmente se você não está devidamente versado na articulação financeira. No entanto, aqui, nas Estratégias de Investimento Universais, tomamos o fator de medo e intimidação nos mercados, pois nossa equipe de profissionais financeiros anda com você o que pode parecer um corredor complicado de confusão financeira. Nós personalizamos nossa plataforma educacional para cada cliente individual, enquanto ensinamos o que eles estão interessados em aprender. Nós fazemos a educação comercial não só diversão, mas tão vantajoso quanto possível para que nossos clientes recebam o retorno máximo de investimento por seu dinheiro, bem como o tempo gasto. Nossos clientesMetaTrader 5 - Exemplos Assistente de especialistas universais: negociação em um grupo e gerenciamento de uma carteira de estratégias (Parte 4) Introdução Introdução Muitas vezes, precisamos criar algoritmos que devem se dar bem um com o outro, ou seja, a operação de um algoritmo não deve ser influenciada Pelas ações de outros algoritmos realizados ao mesmo tempo. Essa situação ocorre quando você precisa combinar vários algoritmos em um módulo executável ex5. Apesar da sua simplicidade aparente, essas tarefas têm algumas características algorítmicas de armadilhas significativas que devem ser consideradas ao construir o mecanismo das estratégias de negociação. O motor de negociação CStrategy inclui um conjunto de algoritmos que implementam a cooperação de duas e mais estratégias de negociação. Vamos discuti-los em detalhes na quarta parte desta série. Além disso, criaremos um perfil comercial de um grupo de consultores de especialistas em simultâneo, a fim de diversificar os riscos de negociação. A classe CStrategyList um contêiner de estratégias de tipo CStrategy pertence aos algoritmos que fornecem operação simultânea de estratégias. A classe permite carregar a apresentação baseada em XML das estratégias, bem como criá-las dinamicamente usando o método correspondente de uma fábrica de estratégias. O vídeo em anexo demonstra o processo de teste de múltiplas estratégias no MetaTrader 5 Strategy Tester. Todas as estratégias baseadas no motor de negociação descrito têm um painel personalizado padrão, que o ajuda a controlar facilmente as estratégias separadas diretamente do gráfico. CStrategyList Strategy Manager O segundo artigo da série Universal Expert Advisor descreveu a classe CStrategy e seus principais módulos. Através do uso desta classe e da sua funcionalidade implementada nos módulos, cada estratégia herdada mantém uma lógica de negociação unificada. No entanto, organizar um processo comercial usando robôs é mais do que apenas uma mera execução de pedidos comerciais. É importante garantir a sua cooperação, incluindo a operação de vários algoritmos em um módulo executável ex5. A classe CStrategyList especial é usada para este propósito específico. Como você pode adivinhar a partir do seu nome, esta classe fornece uma lista de estratégias de tipo CStrategy, mas sua operação é um pouco mais complicada que a operação de um contêiner de dados usual. O módulo resolve as seguintes tarefas: assegurando a operação simultânea de várias estratégias comerciais que oferecem eventos comerciais para cada instância de estratégia, criando objetos de estratégia a partir da interação unificada de estratégias XML (desserialização de dados) com o painel personalizado usado para configuração de EA. Aqui está o cabeçalho da classe CStrategyList: como você pode ver, a maioria dos métodos apresentados são manipuladores de eventos comerciais. Eles têm conteúdo do mesmo tipo. Vamos analisar um deles, OnBookEvent: Como visto nos conteúdos da aula, ele busca estratégias CStrategy na lista e convoca um evento apropriado em cada uma das estratégias. A operação de outros métodos de eventos é semelhante. Além da passagem de eventos, o CStrategyList executa procedimentos especiais que carregam estratégias do arquivo XML. Para obter mais informações sobre como funciona, leia a próxima seção. Carregando Estratégias de uma lista XML. Um portfólio de estratégias Se um módulo executável ex5 contém múltiplos algoritmos de negociação, precisamos de ferramentas para gerar um portfólio de estratégias. Suponha que dois algoritmos com diferentes parâmetros trocam em um módulo executável. Como configurar esses parâmetros A coisa mais simples é produzir os parâmetros de cada estratégia na janela de propriedades de EA. Mas o que fazer quando são utilizadas muitas estratégias, cada uma das quais tem muitos parâmetros. Neste caso, a lista de parâmetros com diferentes modificadores, sinalizadores, strings e comentários seria enorme. Essa é a aparência da janela de parâmetros de um consultor especialista que negocia três estratégias: Fig. 1. A lista de parâmetros da EA que comercializa três estratégias. Um consultor especialista pode usar ainda mais estratégias. Nesse caso, a lista de parâmetros pode ter tamanho inimaginável. O segundo aspecto importante da negociação do portfólio está criando estratégias sobre o fluxo. Suponhamos que queremos executar a mesma estratégia com dois conjuntos diferentes de parâmetros. O que devemos fazer Obviamente, apesar dos diferentes conjuntos de parâmetros, essas duas estratégias são uma e a mesma estratégia, embora com diferentes configurações. Em vez de criar cada uma das estratégias manualmente, podemos confiar esta tarefa a uma classe separada. A classe pode criar automaticamente um objeto de estratégia e configurá-lo corretamente. Antes de criar uma estratégia sobre o fluxo, é necessário fornecer sua descrição completa. A descrição deve conter os seguintes detalhes: o nome da estratégia um ID de estratégia único ou seu número mágico, o símbolo a estratégia está executando no período de trabalho da estratégia uma lista de parâmetros únicos de estratégias (uma lista individual para cada estratégia). A descrição da estratégia pode conter outras propriedades, além da lista acima. A melhor maneira de fornecer essa descrição é usar XML. O idioma foi criado como uma ferramenta de descrição especial. Ele permite descrever convenientemente objetos complexos, de modo que um objeto como uma estratégia de negociação possa ser convertido em um documento XML de texto e um documento de texto pode ser convertido em uma estratégia. Por exemplo, com base em um documento XML, o mecanismo de negociação pode criar uma estratégia e configurar adequadamente seus parâmetros. Para trabalhar com este tipo de documentos diretamente do MQL5, devemos usar uma biblioteca XML-Parser especial disponível na Base de Código. Aqui está um exemplo da descrição XML de um portfólio que carrega três estratégias de MovingAverage com diferentes parâmetros: Cada uma das estratégias forma a unidade ltStrategygt. Os seguintes atributos são especificados: Símbolo, Prazo, Magia e Nome da Estratégia. Do exemplo acima, vemos que cada uma das três estratégias tem seu próprio símbolo, número mágico e prazo. Além desses parâmetros necessários, outras propriedades da estratégia são especificadas na lista XML. Section ltTradeStateStartgt especifica o modo de negociação no momento do lançamento da estratégia. A seção ltParamsgt contém os parâmetros da estratégia. No início, o mecanismo de negociação tentará carregar as estratégias de negociação a partir do arquivo XML acima. Uma estratégia é carregada e cria com base neste documento na classe CStrategyList no seu método LoadStrategiesFromXML. Abaixo estão os conteúdos deste método, bem como de todos os métodos relacionados: A parte mais interessante dos métodos é a criação de uma estratégia usando o método estático especial CStrategy :: GetStrategy. O nome da estratégia deve ser passado para ele como um parâmetro. O método retorna uma instância específica da estratégia associada a esse nome. O método foi feito estático para permitir o acesso antes de criar um objeto de estratégia. O GetStrategy está escrito em um arquivo de cabeçalho separado, pois, ao contrário de outras partes do mecanismo de negociação, você precisará editá-lo de vez em quando, adicionando novas estratégias a ele. Se você deseja que sua estratégia seja carregada a partir de XML, seu procedimento de criação deve ser adicionado diretamente a este método. O código-fonte deste arquivo de cabeçalho é o seguinte: uma vez que a estratégia foi criada, ele deve ser inicializado com os parâmetros necessários da seção ltParamsgt. Uma vez que os parâmetros de cada estratégia são únicos, não é possível inicializar esses parâmetros ao nível do mecanismo de negociação. Em vez disso, a classe base da estratégia pode chamar o método virtual ParseXmlParams. Se a estratégia substituir este método e analisar corretamente a lista de parâmetros como um nó XML, ele poderá especificar os valores necessários de seus próprios parâmetros. Por exemplo, veja o método ParseXmlParams da estratégia CMovingAverage que negocia com base em duas médias móveis (seu algoritmo é descrito no primeiro capítulo deste artigo). Os detalhes desta estratégia são descritos no terceiro artigo da série, que abrange o desenvolvimento de estratégias personalizadas. Usando o mecanismo de criação de estratégia a partir de um arquivo, é possível configurar um conjunto de estratégias uma vez, e depois carregá-lo a partir de um arquivo a cada vez. Você pode ir ainda mais longe e escrever um algoritmo de auto-otimização que economiza os conjuntos de parâmetros de suas melhores execuções para um arquivo XML. O mecanismo de negociação lê este arquivo na inicialização e formará um conjunto de estratégias por sua base. Gerenciando estratégias usando um painel personalizado Do ponto de vista do usuário, as estratégias podem ser convenientemente controladas usando um painel personalizado especial. Este painel seria exibido em um gráfico após o lançamento da EA e permitiria realizar operações simples com cada um dos algoritmos de negociação: alterar o modo de negociação da estratégia de comprar ou vender o volume desejado em vez da estratégia. A última opção é útil se a EA não tiver executado a ação apropriada por algum motivo, e você precisa sincronizar seu estado com a situação atual do mercado. A descrição das classes que criam painéis personalizados e caixas de diálogo está além do escopo do assunto discutido e requer um artigo separado. Nós apenas descreveremos os aspectos básicos relacionados à conexão do painel. O painel de controle Expert Advisor é implementado em uma classe CPanel separada que inclui vários controles, como listas, botões e rótulos de texto. Todas as classes para a criação do gui estão disponíveis em ltdatafoldergtMQL5IncludePanel. Para garantir a operação do painel, é necessário lidar com o evento OnChartEvent diretamente no arquivo EAq mq5. O manipulador de eventos de gráfico está localizado na classe CStrategyList, por isso basta chamar este manipulador no OnChartEvent: O manipulador desses eventos em CStrategyList os envia diretamente para o painel. Com um clique em qualquer botão no painel, ele define a ação a ser executada e executá-la. Por exemplo, se selecionarmos uma estratégia da lista de estratégias, o índice da estratégia atual será igual ao selecionado, então você poderá realizar mais ações de negociação. Por exemplo, você pode alterar o modo de negociação da estratégia eleita selecionando a opção apropriada na lista suspensa dos modos de estratégia: Fig. 2. A lista de modos de uma estratégia selecionada Comprar e vender em nome da estratégia selecionada É executado da mesma forma. Um ponteiro para a estratégia chama os métodos de compra e venda da classe base CStrategy. Esses métodos compram e vendem o volume passado neles. Nesse caso, o número mágico nas operações realizadas corresponde ao número mágico da estratégia, por isso é impossível distinguir a negociação manual das ações EAs. Deve-se notar que a lógica de negociação da EAs é implementada para que todas as posições abertas por um usuário sejam mantidas por esse Consultor Especial no modo normal. Ele gerencia tais posições como suas próprias posições abertas automaticamente. Expert Advisors Trading in a Group Nós podemos montar um portfólio de estratégias de negociação. As estratégias devem conter métodos responsáveis pela análise de parâmetros XML, ou seja, precisamos substituir o método ParseXmlParams. Também é necessário adicionar a criação do tipo de estratégia apropriado ao método CStrategy :: GetStrategy. Finalmente, precisamos criar um arquivo XML com uma lista de estratégias e seus parâmetros. Depois disso, a classe CStrategyList criará instâncias de estratégias e as adicionará à sua lista de estratégias. O painel personalizado exibirá essas estratégias depois disso. Deixe-nos criar um portfólio de estratégias que consistem no Expert Advisors descrito acima. Exemplos de análise de configurações XML para as estratégias CMovingAverage e CChannel estão disponíveis nas seções 3.5 e 4.3. O conteúdo da CStrategy :: GetStrategy para a criação das duas estratégias será o seguinte: o toque final é substituir o método responsável pelo nome completo do EAs. Execute a substituição pela estratégia CMovingAverage: agora tudo está pronto para criar um portfólio de estratégias. Nosso portfólio incluirá quatro sistemas de negociação. Cada um deles trocará seu próprio símbolo. Duas estratégias serão baseadas em MovingAverage, e outras duas usarão BollingerBands. Uma descrição mais detalhada dessas estratégias está disponível no artigo anterior: Universal Expert Advisor: Estratégias Personalizadas e Classes de Comércio Auxiliar (parte 3). Nosso portfólio XML será o seguinte: Este arquivo deve ser salvo uma pasta de dados comum da plataforma MetaTrader como Strategies. xml. Aqui está o código-fonte do módulo mq5 que cria um Expert Advisor: Variáveis personalizadas StrategiesXMLFile e LoadOnlyCurrentSymbol são definidos na classe CStrategyList. Eles são usados dentro desta classe para especificar a lista de estratégias a serem carregadas eo modo que permite apenas carregar as estratégias com o símbolo igual ao nome do instrumento em que o Consultor Especial está em execução. Observe também que alguns eventos, como OnBookEvent e OnTimer, não são usados. Isso significa que eles não serão usados em estratégias personalizadas. A compilação deve ser bem sucedida. Depois disso, o Expert Advisor (chamado Agent. ex5 no projeto) está pronto para uso. Vamos tentar executá-lo no gráfico. Antes disso, devemos garantir que todos os símbolos usados estejam disponíveis no MetaTrader Market Watch. Após o início bem sucedido, o ícone Expert Advisor aparecerá no canto superior direito do gráfico. Outro botão é adicionado ao canto superior esquerdo do gráfico, maximizando o painel personalizado. Se selecionarmos a lista de EAs (chamado Agente) no painel, uma lista de quatro Consultores Especialistas será aberta: Fig. 3. Lista de Consultores Especializados carregados A captura de tela possui a lista de Expert Advisors formada pelo nosso arquivo XML Strategies. xml. Depois de um tempo, as estratégias começarão a negociar cada estratégia em seu símbolo individual. Analisando Operação de Consultor Especialista no Strategy Tester Tendo gerado um portfólio de estratégias, podemos testá-lo no Strategy Tester para garantir que ele funcione corretamente. Nenhuma ação específica adicional é necessária, porque a lista XML de estratégias está localizada na pasta de dados global, acessível através do Strategy Tester. Após o lançamento do módulo Agent. ex5 EA, todos os símbolos necessários serão carregados automaticamente. Cada Consultor Especial realizará operações de negociação seguindo suas regras de negociação individuais e, adicionalmente, desenhará seu próprio conjunto de indicadores. O video abaixo mostra o teste de um portfólio de estratégias em quatro instrumentos diferentes: a simulação de estratégias baseadas no CStrategy no Strategy Tester é semelhante à negociação em tempo real usando essas estratégias. A opção de teste visual permite que você verifique facilmente a precisão das entradas e saídas das estratégias. Conclusão Consideramos algoritmos que permitem criar conjuntos aleatórios de estratégias de negociação. Com esses conjuntos ou carteiras de estratégias, você pode escalar de forma flexível e eficiente o processo de negociação, enquanto gerencia vários algoritmos de negociação localizados no mesmo módulo executável. Os algoritmos são particularmente úteis para as estratégias que utilizam múltiplos instrumentos comerciais simultaneamente. Usando a abordagem proposta, criar algoritmos de negociação semelhantes é tão fácil quanto desenvolver estratégias de negociação convencionais.
Compare as contas de negociação de opções binárias Como trocar as opções binárias com sucesso As opções binárias são muitas vezes vistas como uma maneira simples de negociar, pois todas as negociações têm uma resposta sim ou nenhuma. Nós olhamos para fazer com que essa simplicidade funcione a seu favor. Com o comércio de opções binárias, você sempre saberá exatamente o que você pode perder e exatamente o quanto você pode ganhar para cada comércio que você fizer. No entanto, isso não faz qualquer um comercial mais seguro ou uma aposta melhor. As opções binárias são apostas no valor de um único recurso durante um período de tempo fixo. Para trocar opções com sucesso, você sempre precisa pesquisar completamente cada ativo. Alguns corretores binários se especializam em apenas um ou dois ativos, dependendo do corretor, isso pode ser qualquer estoque, mercado, moeda ou commodity. Então, para ser bem sucedido, você precisará de um esquema que corresponda aos seus conhecimentos e interesses. O...
Comments
Post a Comment