Tuesday 4 February 2020

Csv metatrader download terminal forex


Baixar HotForex MT4 Terminal Descarregar MT4 Terminal O MetaTrader é o aplicativo de front-end mais popular na indústria. O HotForex MT4 tomou a plataforma MetaTrader MT4 e introduziu sua liquidez para criar uma interface de negociação de front-end fácil de usar com liquidez interbancária e execução rápida. O HotForex MT4 Terminal é um local de trabalho comercializado perfeitamente equipado que permite o comércio nos mercados financeiros (Forex, CFD e Futuros). Ele fornece as ferramentas e recursos necessários para analisar a dinâmica dos preços dos instrumentos financeiros, fazer as transações comerciais, criar e usar programas de negociação automatizados (Expert Advisors). Representa o conceito tudo-em-um e é derivado do terminal comercial mais popular do mundo. O MT4 pode ser instalado no Mac OS através do Wine. Embora este não seja um lançamento oficial pelo HotForex ou MetaQuotes, é uma solução alternativa para os usuários de Mac terem o terminal MT4 em seu sistema. O HotForex MT4 Terminal oferece uma série de ferramentas analíticas impressionantes: existem nove cronogramas disponíveis para cada instrumento financeiro que fornece análise detalhada da dinâmica das cotações. Mais de 50 indicadores e ferramentas integrados ajudam a simplificar a análise, permitindo determinar tendências, definir várias formas, determinar pontos de entrada e saída, etc. Além disso, um objeto pode ser aplicado sobre outro, o que vem muito útil em várias operações Sistemas. Como desinstalar o terminal MT4: vá para o menu Iniciar e encontre o nome do aplicativo MT4, clique nela e encontre a guia desinstalar. Se você tiver alguma dúvida, entre em contato com: supportthfeu Vantagens amp. A negociação em um determinado sistema pode ser diferente de negociar em outro. Embora não exista uma plataforma de negociação definitiva que satisfaça todas as necessidades dos comerciantes39, a plataforma MT4 HotForex oferece uma série de benefícios para o usuário final. Além dos benefícios acima, existem muitas outras características que a plataforma oferece, como diferentes recursos de execução comercial, e-mail e alertas. Em suma, a plataforma HotForex MT4 é tudo o que você precisa para começar a negociar nos mercados Forex de forma eficiente. Facilidade de uso através da sua interface amigável. Notícias se alimenta diretamente na plataforma de negociação. Ferramentas analíticas pré-programadas. A capacidade de superar estudos analíticos. Múltiplos gráficos e análises. Encoraja o desenvolvimento de consultores especializados e permite o uso deles. Plataforma multilingue. Declaração de conta diária. Resumo da conta do cliente em tempo real, incluindo patrimônio da conta, lucro e perda flutuante, etc. Legal: HotForex é uma marca registada da HF Markets (Europe) Ltd uma empresa de investimento cipriota (CIF) sob o número HE 277582. Regulada pela Comissão de Valores Mobiliários (CySEC) sob o número de licença 18312. A HotForex é regida pelos Mercados de Directiva relativa aos instrumentos financeiros (DMIF) da União Europeia. O site hfeu é operado pela HF Markets (Europe) Ltd. Aviso de Risco: Os produtos de alavancagem de negociação, como Forex e CFDs, podem não ser adequados para todos os investidores, pois possuem alto grau de risco para o seu capital. Certifique-se de que compreende perfeitamente os riscos envolvidos, tendo em conta os seus objetivos de investimento e nível de experiência, antes da negociação, e, se necessário, procure um conselho independente. Leia a Divulgação de risco completa. A HotForex não aceita clientes dos EUA, Canadá, Bélgica, Irã, Sudão, Síria, Coréia do Norte e Japão. Copyright 2017 - Todos os Direitos Reservados Aviso de Risco: Os produtos de alavancagem de negociação, como Forex e CFDs, podem não ser adequados para todos os investidores, pois possuem um alto grau de risco para o seu capital. Leia a Divulgação de risco completa. Aviso de Risco: Recorde que Forex e CFDs são produtos alavancados e podem resultar na perda de todo o capital investido. Considere a nossa Divulgação de Risco. MetaTrader 4 - Exemplos Interação entre MetaTrader 4 e Matlab via arquivos CSV Introdução O poder computacional dos ambientes Matlab é conhecido por ser consideravelmente superior ao de qualquer linguagem de programação incluindo MQL4. A ampla gama de funções matemáticas fornecidas pela Matlab permite a realização de cálculos complexos, negligenciando completamente a base teórica das operações realizadas. No entanto, a interação em tempo real entre um terminal comercial e Matlab representa uma tarefa não trivial. Neste artigo, sugiro uma maneira de organizar a troca de dados entre MetaTrader 4 e Matlab via arquivos CSV. 1. Interoperabilidade Suponha que, na entrada de cada nova barra, o MetaTrader 4 deve enviar dados sobre as últimas 100 barras para a Matlab e ser respondido com os resultados de processamento. Para resolver este problema, precisaremos criar um indicador no MetaTrader 4 que escreva dados em um arquivo de texto e leia os resultados de processamento de outro arquivo de texto criado pela Matlab. O MetaTrader 4 deve formar seu arquivo de dados na entrada de cada nova barra. Também deve tentar ler os resultados em cada toque. Para não ler o resultado antes do Matlab atualizá-lo, teremos excluído o arquivo que contém o resultado antes de formar nosso arquivo de saída. Neste caso, a tentativa de leitura só terá sucesso após Matlab terminar sua computação e formar um novo arquivo. A Matlab deve analisar atributos de arquivos criados no MetaTrader 4 a cada segundo e começar a processar quando o tempo de criação muda. Após a conclusão do processamento, o arquivo excluído pelo MetaTrader 4 antes do início da gravação de dados é recriado. O MetaTrader 4 o exclui com êxito, carrega novos dados e aguarda responder. 2. Formando um arquivo de dados de saída Existem muitos artigos dedicados a salvar dados como arquivos, então não vou trabalhar aqui. Vou simplesmente deixar claro que nós escrevemos dados em 7 colunas: DATA, HORA, HI, BAIXO, FECHAR, ABERTO, VOLUME. O caractere de separação é. A prioridade da barra é anterior ou posterior, ou seja, a linha que contém as características da barra zero deve ser gravada a última. O arquivo será fornecido com uma linha contendo nomes de colunas. O nome do arquivo consistirá no nome do símbolo e no prazo. Não vamos precisar de todos esses dados, é claro, mas é sempre melhor ter um arquivo significativo do que apenas um conjunto de colunas com figuras desconhecidas. 3. Criação da interface gráfica do usuário (GUI) Então, o arquivo está pronto. Vamos começar Matlab. Devemos desenvolver um aplicativo que leia dados de texto do arquivo, processe e registre os resultados em outro arquivo. Teremos que criar uma GUI para especificar o nome do arquivo, visualizar gráficos e começar o processamento. Comecemos agora. Para criar a GUI, vamos começar o GUIDE Quick Start digitando o guia no console ou pressionando o painel principal do Matlab. Na caixa de diálogo apareceu, selecione Criar Nova GUI --Gt Blank GUI (Padrão). Agora, podemos ver a interface para criar uma GUI com um formulário vazio. Nesta forma, colocaremos os seguintes objetos: Editar texto, botão, texto estático, eixos, botão. Como resultado, deve parecer de alguma forma assim: agora devemos chamar o construtor de propriedades visuais para cada objeto e definir as propriedades da seguinte maneira: Texto estático. HorizontalAlignment left, Tag textInfo, String - Info. Editar Texto: HorizontalAlignment left, Tag editPath, String Path select. Botão: Tag pushBrowse, String Browse. Eixos: Box on, FontName MS Sans Serif, FontSize 8, Tag - axesChart. Botão: Tag pushSrart, String Start. Ao alterar a propriedade Tag, selecionamos um nome exclusivo para cada objeto. Ao mudar os outros, modificamos a aparência. Quando tudo estiver pronto, deixe-nos iniciar a interface pressionando Executar, confirme a gravação e salvamento do arquivo de interface do arquivo M, dê um nome (por exemplo, FromTo) e pressione Salvar. Depois disso, a GUI será lançada e aparecerá como aparece durante seu trabalho. A Matlab gera o arquivo M para ser a base do nosso programa futuro e o abre no editor incorporado. Se a aparência não lhe convém por algum motivo, feche a GUI de trabalho e ajuste de objeto correto usando o editor. Meu distributivo, por exemplo, não mostrou o MS Sans Serif corretamente. Então eu tive que mudar para Sans Serif. 4. Construção da interface do usuário O comportamento da interface pode ser programado no editor de arquivos M usando a linguagem Matlab. O programa de esqueleto gerado pela Matlab representa uma lista de funções a serem chamadas pelo usuário ao trabalhar com os objetos de interface. As funções estão vazias, então a GUI não faz nada ainda. É nossa tarefa preencher funções com os conteúdos necessários. 4.1 Programação do botão Procurar Antes de tudo, precisamos acessar um arquivo gerado pelo MetaTrader 4, então vamos começar com a função chamada pressionando Procurar. O nome da função chamada pressionando o botão consiste do nome do botão (definido pela propriedade Tag) e do retorno de chamada postfix. Deixe-nos encontrar a função pushBrowseCallback no texto do arquivo ou simplesmente pressione Mostrar Funções na barra de ferramentas e selecione pushBrowseCallback na lista. A sintaxe da linguagem de programação Matlab difere das regras convencionais de codificação nos idiomas C e C. Particularmente, não há necessidade de marcar o corpo da função com chaves ou especificar o tipo de dados a serem passados ​​para a função, os índices de matriz (vetor) começam com um e o caracter do comentário é. Então, todo o texto verde acima não é um programa, mas um comentário feito pelos desenvolvedores da Matlab para que possamos entender o caso. Precisamos criar uma caixa de diálogo para inserir o nome completo do arquivo. Para isso, usemos a função uigetfile: as manipulações aqui são uma estrutura que armazena descritores de todos os objetos em nossa GUI, incluindo a do formulário, em que as colocamos. A estrutura é passada de uma função para outra e permite acessar os objetos. HObject é um descritor do objeto que chamou a função. Set ajuda a definir o valor do objeto para um determinado valor e tem a seguinte sintaxe: set (objectdescriptor, objectpropertyname, propertyvalue). Você pode encontrar o valor das propriedades do objeto usando a seguinte função: propertyvalue get (objectdescriptor, objectdescriptorname). Mas não se esqueça de que o nome é um valor do tipo de string, por isso deve ser com aspas simples. A última coisa que temos que saber sobre objetos e suas propriedades. A forma, na qual colocamos os elementos GUI, é em si um objeto colocado no objeto raiz (é seu descendente). Ele também possui um conjunto de propriedades que podem ser modificadas. As propriedades podem ser vistas usando a ferramenta denominada Editor de Objetos a ser chamada a partir da barra de ferramentas principal do editor de interface. A raiz do objeto, como o termo sugere, é a raiz da hierarquia dos objetos gráficos e não tem ascendência. Agora, vamos verificar o que temos como resultado. Agora vamos iniciar nossa GUI pressionando Executar na barra de ferramentas principal do M-file Editor. Tente clicar em Procurar e selecione nosso arquivo. Está ligado Então feche a GUI de trabalho e continue. 4.2 Programação do botão de início, desenho de gráfico Agora, atribuiremos o botão Iniciar com a chamada da função que lê dados do arquivo e mostra-os em um gráfico. Primeiro, vamos criar a própria função. Nós precisaremos da estrutura de manipuladores de descritores de objetos como entradas. Tendo acesso aos objetos, poderemos lê-los e definir suas propriedades. Dlmread lê dados do arquivo de texto com separadores e tem a seguinte sintaxe: dlmread (fullfilename, separator, skipstrings, skipcolumns) length (qqq) o tamanho maior da matriz qqq agora data e data atual (agora) transforma hora e data em um Texto Você deve saber, também, que a Matlab fornece informações de ajuda enorme com teoria e exemplos. Deixe-nos colocar nossa função no final do programa (será mais fácil encontrá-lo lá) e adicione sua chamada em pushStartCallback: Inicie-o usando Executar, selecione um arquivo, pressione Iniciar e aproveite o resultado. 4.3 Salvando o caminho para um arquivo Tudo está tudo bem agora, mas é um pouco irritante clicar permanentemente com o mouse selecionando um arquivo depois de ter pressionado Procurar. Vamos tentar salvar o caminho uma vez selecionado. Começaremos com a leitura. O nome de um arquivo que armazena o caminho consistirá no nome da GUI e no saveparam do postfix e terá extensão de. mat. A função FromToOpeningFcn é executada diretamente após a criação do formulário GUI. Vamos adicionar aí a tentativa de ler o caminho do arquivo. Se a tentativa falhar, o valor padrão será usado. Outras cordas de função FromToOpeningFcn ficarão inalteradas. Vamos modificar a função pushBrowseCallback da seguinte maneira: 4.4 Processamento de dados Como um processo exemplar, vamos interpolar a coluna OPEN por uma função polinomial de quarta ordem. Vamos adicionar o seguinte código no final da nossa função, processo: Vamos tentar iniciar e pressionar Iniciar. Se você tiver aproximadamente o mesmo resultado como mostrado acima, é hora de começar a salvar dados como um arquivo. 4.5 Salvando dados como um arquivo A salvação de dados não é mais complicada do que lê-los. A única vantagem é que o vetor fresco deve ser contado, ou seja, do mais recente para o primeiro. Isso é feito para simplificar a leitura do arquivo no MetaTrader 4, começando a partir da barra zero e até o arquivo terminar. Vamos complementar o processo de função pelo seguinte código: Agora, certifique-se de que o arquivo que contém o resultado foi criado, localizado no mesmo local onde há o arquivo inicial, e tem o mesmo nome complementado pelo resultado postfix. 4.6 Controle do temporizador Esta é a parte mais difícil do trabalho. Teremos que criar um temporizador que verifique o tempo de criação do arquivo MetaTrader 4-formado a cada segundo. Se o tempo mudar, o processo de função deve ser iniciado. O fim de início do temporizador será realizado com o início. Quando a GUI for aberta, iremos excluir todos os temporizadores criados antes. Deixe-nos criar um temporizador colocando o seguinte código dentro da função FromToOpeningFcn: O código acima deve ser inserido imediatamente após a nossa inserção anterior nesta função, ou seja, antes que as strings atendam. Efetue o HObject e o guidata (hObject, handles). Ao executar este código, o Matlab, imediatamente após a criação da GUI, verificará a disponibilidade de temporizadores, excluirá os existentes e criará um novo temporizador. O temporizador chamará o tempo de verificação da função a cada segundo e passará a lista de descritores nos controles. Além das alças, o temporizador passará seu próprio descritor para a função, bem como a estrutura que contém tempo e razão de chamada. Não podemos influenciar isso, mas devemos considerar isso ao codificar a função para ser chamada pelo temporizador. Você pode localizar a própria função onde desejar. Deixe-o escrever na barra de status de Matlab o momento em que foi chamado: Na sua criação, o temporizador é parado, agora devemos iniciá-lo. Vamos encontrar a função pushStartCallback. Deixe-nos comentar o processo de chamada (alças) colocados nele e escreva o gerenciamento de timer para dentro: Agora, vamos verificar como tudo funciona. Vamos tentar ativar e desativar o temporizador usando o Iniciar. Se o temporizador estiver ativado, o relógio acima do campo de entrada do caminho deve funcionar. Seria mais correto excluir o temporizador usando o botão X no fechamento da GUI. Se você deseja fazê-lo, adicione no início da função figure1CloseRequestFcn. Esta função será chamada no encerramento da GUI. Você pode acessar a partir do editor GUI: Mas, leve em consideração que agora, se você pressionar Executar do editor sem ter fechado a GUI operacional, o temporizador antigo não será excluído enquanto o novo será criado. E da próxima vez haverá mais um criado, etc. Você pode lidar com temporizadores não ajustados usando o comando delete (timerfind) do console Matlab. Agora, se tudo estiver funcionando bem, criamos uma função para verificar a hora da última modificação do arquivo do MetaTrader 4: O nome da função (nome completo) retorna uma estrutura que contém as informações do arquivo (nome, data, bytes, isdir). As informações sobre o tempo de criação do arquivo anterior serão armazenadas na propriedade Userdata do objeto timer. Seu descritor é passado para o tempo de verificação da função chamado obj. Agora, ao alterar um arquivo criado pelo MetaTrader 4, nosso programa substituirá o resultado. Você pode verificar isso modificando o arquivo manualmente (por exemplo, excluindo as últimas strings) e rastreando as mudanças no gráfico ou arquivo resultante. Claro, o botão Iniciar deve ser pressionado por isso. Se uma janela extra contendo a cópia do gráfico for criada durante a operação dos programas, adicione a seguinte seqüência de caracteres no início do processo da função: 5. Desenho dos resultados no MetaTrader 4 Agora vamos retornar ao MetaTrader 4. Devemos complementar nosso indicador com um Função que iria ler o resultado do arquivo e desenhá-lo em um gráfico. O comportamento do programa será descrito da seguinte maneira: 1. Se uma nova barra for recebida: Exclua o arquivo de resultados antigo, Apague o gráfico, Guarde o arquivo de dados. 2. Se o arquivo de resultados for legível: Leia o arquivo, Desenhe um gráfico, Exclua o arquivo de resultados. Não descreverei aqui como o código abaixo funciona, pois ler dados de arquivos e indicadores de desenho podem ser encontrados em outros artigos. Eu só percebo que o arquivo de resultados aqui é excluído imediatamente após ter sido colocado no gráfico. Portanto, não se preocupe se você visualizar várias mensagens de erro de leitura. Os erros de leitura ocorrem em dois casos: 1. Imediatamente após uma nova barra ter renda, uma vez que o arquivo de resultados ainda não foi criado. 2. Imediatamente após o resultado ter sido lido e o gráfico foi desenhado, uma vez que o arquivo foi excluído para não reenviar os mesmos dados. Assim, o programa mantém seu status de erro de leitura praticamente o tempo todo. ) Abaixo está o meu resultado final. Espero não ter cometido erros e você poderá reproduzi-lo. Conclusão Neste artigo, descrevemos a maneira de organizar uma interação entre o MetaTrader 4 e o Matlab através de arquivos CSV. Este método não é único nem ótimo. O valor desta abordagem é que ele ajuda a trocar matrizes de dados sem habilidades especiais de operar com qualquer ferramenta de programação diferente do MetaTrader 4 e Matlab.

No comments:

Post a Comment