Friday 18 August 2017

Desenvolvimento De Software Do Sistema De Negociação


Guia para o desenvolvimento do sistema comercial A evolução contínua do software de análise técnica simplificou a criação de sistemas de negociação automatizados por computador. Alguns sistemas apenas geram os sinais para o comerciante seguir, enquanto outros colocam os negócios no mercado em nome do comerciante. No entanto, ser capaz de programar sua plataforma de negociação favorita é apenas o começo. Você deve ter uma estrutura para testar suas teorias de negociação para ter certeza de que os backtests lucrativos não são apenas por causa da sorte, mas são os resultados da modelagem robusta de um comportamento de mercado. Esta série de artigos apresentará uma abordagem simplificada para desenvolver um sistema de negociação para o mercado cambial de varejo. A ferramenta de desenvolvimento do sistema wersquoll usará o MetaTrader 4 (MT4), embora as idéias e o processo apresentados se apliquem a uma ampla gama de plataformas de software. A metodologia abordará conceitos gerais direcionados ao comerciante do sistema inicial. Quando tomamos atalhos por conveniência, a Wersquoll encaminha o leitor a recursos adicionais para obter informações mais detalhadas. Existem cinco fases distintas no desenvolvimento do sistema de negociação: Fase 1: o desenvolvimento do modelo de mercado e o sistema automatizado básico mdash o sistema automatizado básico implementa esse modelo, mas não incorpora perdas de parada ou metas de lucro. O sistema básico é para o único propósito de coletar dados para análise estatística utilizada nas fases de desenvolvimento posterior. Fase 2: Gerenciamento de risco mdash a perda de parada inicial (ISL). Usando os dados coletados na Fase 1 e com base na análise estatística desses dados, adicionamos uma ISL à estratégia de negociação. Utilizamos a otimização para encontrar um parâmetro de paragem que corresponda às nossas necessidades. Usaremos análise walk-forward para testar esta versão do sistema. Fase 3: Gerenciamento de lucro mdash o objetivo de lucro (PT). Como na Fase 2, usaremos a análise estatística de nossos dados para incorporar um objetivo de lucro no sistema. Mais uma vez, usaremos a otimização para encontrar um alvo de lucro apropriado e, em seguida, usaremos a análise progressiva para testar esta versão do sistema. Fase 4: Gerenciamento de dinheiro mdash o algoritmo de tamanho de comércio (TSA). Esta fase não depende dos dados coletados na Fase 1. Em vez disso, incorporaremos o método de tamanho de comércio de fração fixa popular para determinar quantos lotes são alocados para cada comércio. A literatura de comércio popular está repleta de conselhos para restringir o risco por comércio dentro de um intervalo de 1 a 3 de equidade da conta. Vamos executar nossa otimização usando essas porcentagens e, mais uma vez, usar a análise walk-forward para testar esta versão do sistema. Em conjunto, as fases 2 a 4 compreendem o gerenciamento do comércio, mas há um passo mais crítico: Fase 5: análise de Monte Carlo muitos comerciantes param após a Fase 4. No entanto, nossos testes não estão completos naquele momento e o sistema não está pronto para Implantação (supondo que seja lucrativo). Apesar da nossa análise progressiva, não podemos ter certeza de que nossos resultados não são por causa da sorte. Em outras palavras, nosso modelo pode não descrever o comportamento do mercado, resultados com resultados precisos podem se ter beneficiado de um ambiente de mercado cuja ação de preço acabou por coincidir com nossa lógica. A análise de Monte Carlo ajudará a determinar se o nosso modelo foi bem sucedido devido à sorte (aleatoriedade) ou à sua capacidade de identificar e explorar um padrão de mercado real. Este artigo abordará os artigos subsequentes da Fase 1, abrangerão as Fases 2 a 5. Sobre o Autor Neil Rosenthal é um dentista aposentado que negocia sua própria conta. Ele também é um programador de computador experiente. Ele pode ser alcançado na medida em que derrubar o som. Trading Systems: Construindo um sistema Até agora, discutimos os componentes básicos dos sistemas de negociação, os critérios que eles devem atender e algumas das muitas decisões empíricas que um designer de sistemas deve fazer. Nesta seção, examinaremos o processo de construção de um sistema comercial, as considerações que precisam ser feitas e alguns pontos principais para lembrar. The Six-Step System Construction 1. Configuração - Para começar a construir um sistema de negociação, você precisará de várias coisas: Dados - Como o designer do sistema deve usar backtesting extensivo. O histórico de preços passados ​​é essencial para a construção de um sistema comercial. Esses dados podem ser integrados no software de desenvolvimento do sistema de negociação ou como um feed de dados separado. Os dados ao vivo geralmente são fornecidos para uma taxa mensal, enquanto os dados de idade podem ser obtidos gratuitamente. Software - Embora seja possível desenvolver um sistema comercial sem software, é altamente impraticável. Desde o final dos anos 90, o software tornou-se parte integrante da construção de sistemas de negociação. Alguns recursos comuns permitem que o comerciante faça o seguinte: Coloque automaticamente trades - Isso muitas vezes requer permissão do final do corretor porque uma conexão constante deve estar instalada entre o software e a corretora. As negociações devem ser executadas imediatamente e a preços exatos para garantir a conformidade. Para que seu software coloque trades para você, tudo o que você precisa fazer é inserir o número da conta e a senha e tudo o resto é feito automaticamente. Observe que usar este recurso é estritamente opcional. Código de um sistema de comércio - Este recurso de software implementa uma linguagem de programação proprietária que permite que você crie regras com facilidade. Por exemplo, o MetaTrader usa MQL (MetaQuotes Language). Este é um exemplo de seu código para vender se a margem livre for inferior a 5.000: se for FreeMargin lt 5000, então saia Frequentemente, apenas lendo o manual e a experimentação devem permitir que você adote os conceitos básicos do idioma que seu software usa. Backtest sua estratégia - O desenvolvimento do sistema sem backtesting é como jogar tênis sem raquete. O software de desenvolvimento de sistemas geralmente contém um aplicativo de backtesting simples que permite definir uma fonte de dados, informações de conta de entrada e backtest por qualquer período de tempo com o clique de um mouse. Aqui está um exemplo do MetaTrader: após o teste de volta ser executado, é gerado um relatório que descreve as especificidades dos resultados. Este relatório geralmente inclui lucro, número de negociações mal sucedidas, dias consecutivos baixos, número de negociações e muitas outras coisas que podem ser úteis ao tentar determinar como solucionar problemas ou melhorar o sistema. Finalmente, o software geralmente cria um gráfico que mostra o crescimento do investimento ao longo do período de tempo testado. 2. Design - O design é o conceito por trás do seu sistema, a maneira como os parâmetros são usados ​​para gerar lucro ou perda. Você implementa essas regras e parâmetros, programando-os. Às vezes, esta programação pode ser feita automaticamente através de uma interface de usuário gráfica. Isso permite que você crie regras sem aprender uma linguagem de programação. Aqui é um exemplo de um sistema de cross-over médio móvel: Se SMA (20) CrossOver EMA (13), então, insira Se SMA (20) CrossUnder EMA (13), então saia Regras como essas que são colocadas em código permitem que o software automaticamente Gerar entradas e saídas nos pontos quando as regras são aplicáveis. Aqui está o aspecto da interface de design no MetaTrader: o sistema é criado simplesmente digitando as regras na janela e salvando-as. Referências para as diferentes funções disponíveis (por exemplo, osciladores e tal) podem ser encontradas clicando no ícone do livro. A maioria dos softwares terá uma referência similar disponível no próprio programa ou em seu site. Depois de criar as regras desejadas e codificar o sistema, basta salvar o arquivo. Então você pode usá-lo selecionando-o na tela principal. 3. Tomada de decisão - Há muitas decisões a serem feitas neste ponto: Em que mercado eu quero negociar em 13 Que período de tempo devo usar 13 Quais séries de preços devo usar 13 Que subconjunto de ações devo usar para testes Manter em Tenha em mente que os sistemas de negociação devem ser consistentemente lucrativos em muitos mercados. Ao personalizar o período de tempo e a série de preços demais, você pode manchar os resultados e produzir resultados não característicos.4. Prática - Backtesting e papel comercial são essenciais para o desenvolvimento bem sucedido de um sistema comercial: Execute vários backtests em diferentes períodos de tempo e certifique-se de que os resultados sejam consistentes e satisfatórios. O comércio de papel é o sistema (use dinheiro imaginário, mas registre os negócios e os resultados), e novamente, procure uma rentabilidade consistente. Verifique cuidadosamente se há erros no programa ou trocas não intencionais. Estes podem ser o resultado de uma programação defeituosa ou falha em prever certas circunstâncias que tenham repercussões indesejadas. 5. Repetir - Repetição é necessária. Continue trabalhando no sistema até que você possa obter um lucro consistente na maioria dos mercados e condições. Sempre há eventos imprevistos que ocorrem assim que um sistema é atualizado. Aqui estão alguns fatores que muitas vezes causam resultados negativos: custos de transação - Certifique-se de que você está usando a comissão real. E alguns extras para explicar enchimentos imprecisos (diferença entre os preços de oferta e de venda). Em outras palavras, evite o deslizamento (Para analisar o que é e como isso ocorre, veja a seção anterior deste tutorial.) Vigilância - Não ignore a perda de negociações, mantenha um olho em todos os negócios. Otimização - Não sobre otimize o sistema. Em outras palavras, não adapte o sistema a um ambiente de mercado muito específico, tente ser rentável em um ambiente tão amplo quanto possível. Risco - Nunca ignore ou se esqueça do risco. É muito importante ter maneiras de limitar perdas (também conhecidas como stop-loss) e formas de bloquear os lucros (tirar lucros). 6. Comércio - Experimente, mas espere resultados não desejados. Certifique-se de usar operações não automatizadas até estar confiante no desempenho e consistência dos sistemas. Demora muito tempo para desenvolver um sistema de negociação bem sucedido, e antes de aperfeiçoá-lo, você pode ter que suportar algumas perdas de negociação ao vivo para detectar falhas: os testes de volta não podem representar perfeitamente as condições do mercado ao vivo e a negociação de papel pode ser imprecisa. Se o seu sistema perde dinheiro, volte para o quadro de desenho e veja onde ele deu errado (veja o passo 5). Conclusão Estas seis etapas fornecem uma visão geral de todo o processo de construção de um sistema comercial. Na próxima seção, vamos construir sobre esse conhecimento e analisar mais detalhadamente a solução de problemas e a modificação. Personalizar a TI Personalizar a TI e ter o controle total da sua tecnologia da informação. Com o MultiCharts, você pode solicitar recursos ou conexões personalizados, bem como o desenvolvimento de um sistema de comércio personalizado. Oferecemos personalizações para MultiCharts, como a conexão de feeds de dados ou corretores que atualmente não são suportados. Você pode fazer esses desenvolvimentos sozinho com um SDK, ou você pode fazer com que nossa equipe de especialistas faça a conexão para você. Você pode encontrar informações mais detalhadas sobre isso na nossa página SDK. Ou sinta-se à vontade para entrar em contato comigo seja feliz em ajudar. Desenvolvimento e proteção de sistemas comerciais Indicadores, ferramentas de desenho. E as estratégias de negociação são a base da análise técnica, mas a programação delas muitas vezes representa um sério desafio. Podemos converter suas idéias em scripts de forma rápida e profissional. Oferecemos serviços de programação em EasyLanguage. Bem como serviços de conversão de outras linguagens de programação para o EasyLanguage. Se você pretende vender o seu código para outros, oferecemos uma solução econômica para proteger seus estudos do uso não autorizado. Essa proteção consiste em uma DLL integrada no código (fornecida com o estudo) e um sistema de gerenciamento remoto de usuários. O sistema permite que você adicione ou remova usuários, estabeleça acesso temporário e até mesmo controle a frequência com que seu código é usado. Termos e condições A nossa taxa horária é de 100 por hora e uma ordem mínima de 500. O preço inclui 30 dias de suporte (incluindo a resolução de defeitos e consultas). Preparamos um acordo legal, se julgado necessário por qualquer das partes. Todo o nosso desenvolvimento usa as versões de software mais recentes e não podemos garantir o funcionamento adequado do nosso código em ambientes mais antigos. Oferecemos VISA, MasterCard, American Express, PayPal e opções de transferência de transferência bancária. Todos os detalhes do projeto estão sujeitos a confirmação após a conclusão do contrato. Para obter informações completas, entre em contato conosco. E fique feliz em ajudar. Certifique-se de descrever o seu pedido com o maior detalhe possível, com exemplos e uma abordagem passo-a-passo. Isso ajudará a economizar tempo. MULTICHARTS, LLC 19992017 Todas as marcas registradas e os copyrights160 são a propriedade de160 seus respectivos proprietários.

No comments:

Post a Comment