Sunday, 4 March 2018

Como desenvolver sistema de negociação automatizado


Como desenvolver um sistema de negociação rentável.


Saiba como desenvolver um sistema de negociação rentável - Criando Sistemas de Negociação Proftibale.


Eu tenho trabalhado no mercado de especulações de mercado e de educação comercial durante cerca de 20 anos. Enquanto Futures e Forex sempre foram os principais mercados em que troco e administro contas, também gastei muito tempo trocando opções de ações também. Meu caminho começou no chão da Chicago Mercantile Exchange, bem antes de o cliente de varejo médio ter acesso à negociação online. Depois do tempo no balcão, eu sai e persegui uma carreira comercial dos confins amigáveis ​​de casa. Naquela época, eu estava confrontado com dados e gráficos de negociação instáveis ​​no melhor dos casos e a tarefa de telefonar para pedidos para uma mesa de comércio. Escusado será dizer que a mudança e o crescimento têm sido explosivos nesta indústria desde os meus primeiros dias.


O Nascimento dos Sistemas de Negociação.


Os avanços na tecnologia têm sido a força motriz por trás da mudança e crescimento. Um dos muitos destinatários de uma tecnologia mais rápida e forte é o comércio de sistemas, pois os computadores de alta velocidade agora ajudam os comerciantes de varejo e institucionais a desenvolver sistemas de negociação, números críticos e testar back resultados comerciais reais e hipotéticos em segundos. No mundo do gerenciamento de dinheiro profissional, eu vi muitos sistemas de negociação. Ironicamente, a maioria não parece funcionar e dos que fazem, eles normalmente trabalham um pouco e depois falham. Sendo do lado da educação da indústria também, eu já vi centenas de sistemas automatizados, só posso dizer que eu vi menos do que uma mão cheia realmente produz um lucro consistente ano após ano. Muitas vezes eu recebo e-mails de pessoas que leram um artigo que escrevi que gostaria de compartilhar uma estratégia de negociação automatizada comigo. Eles estão enviando isso para ajudá-los a revisá-lo e talvez melhorá-lo. Os comerciantes me enviarão de volta provados relatórios de desempenho hipotéticos dessas estratégias que sugerem que eles têm o santo graal dos sistemas de negociação. A maioria destes mostrará 80% de negociações vencedoras ou melhores e lucros enormes. Na maioria das vezes no entanto, quando eles dão o próximo passo e trocam o sistema com dinheiro real, eles perdem e perdem rapidamente. Com avanços explosivos em tecnologia e informações de mercado, por que o sistema de negociação é tão difícil para a maioria de quem tenta? Há uma razão muito simples que vou discutir mais tarde. Neste artigo, vou me concentrar no fundamento de um sistema de negociação rentável, oferecer ferramentas e regras específicas de um sistema lucrativo e expor as armadilhas perigosas que levam à falha na negociação do sistema.


O aspecto mais importante do desenvolvimento de um sistema de negociação rentável.


Tanta mudança e crescimento ocorreu devido à tecnologia, há um componente para a negociação que não mudou um pouco e é assim que o comerciante consistentemente lucrativo obtém lucros consistentes de baixo risco / alta recompensa. A chave para uma estratégia de negociação adequada tudo se resume à base dessa estratégia. Para ter a base adequada, você deve ter uma sólida compreensão de como os mercados funcionam e por que o preço se move como faz. Se você tem uma falha em seu processo de pensamento, você pode ter certeza de que isso irá resultar em resultados comerciais ruins. A realidade é que os mercados não são mais do que a pura oferta e demanda no trabalho, os seres humanos que reagem à relação oferta / demanda em curso em um determinado mercado. Só isso, em última análise, determina o preço. A oportunidade surge quando esse relacionamento simples e direto é "fora de equilíbrio". Quando tratamos os mercados para o que realmente são e olhamos para eles na perspectiva de um relacionamento contínuo de oferta / demanda, a identificação de boas oportunidades comerciais não é tão difícil de uma tarefa. Os especuladores de mercado que entendem esse conceito simples e o que essa oportunidade se parece em um gráfico de preços geralmente obtêm seus rendimentos de especuladores de mercado que não o fazem. Em outras palavras, aqueles que "conhecem" são pagos por aqueles que "não sabem".


Quem está no outro lado do seu comércio?


Se queremos um sistema comercial consistentemente rentável, é melhor ter a certeza de que a pessoa do outro lado dos nossos negócios cometa um erro. Nosso sistema deveria ser um especialista em encontrar um comerciante novato ou estamos com problemas. Nós não precisamos conhecer a pessoa exata do outro lado do nosso comércio, só precisamos saber se eles são um comerciante consistentemente rentável ou um comerciante perdedor consistente, e o gráfico nos dará a maioria dessas informações.


Vamos enfrentá-lo, quando se trata de gráficos e análises técnicas, a maioria dos comerciantes ativos usa indicadores. Embora muitas pessoas, incluindo eu próprio, muitas vezes tenham batido os indicadores, eles são realmente uma boa ferramenta quando usados ​​adequadamente para sistemas de negociação automatizados ou semi-automáticos. O problema é que as pessoas tendem a tomar todos os sinais de compra e venda que produz um indicador e esta é a última coisa que você quer fazer. Aqueles que tomam cada sinal de compra e venda de um indicador, provavelmente perderão o capital comercial rápido. Não é que os indicadores estão fazendo algo de errado. Eles sempre produzirão o que estão programados. A chave para os comerciantes é usá-los em conjunto com a análise de tendências adequada e a base adequada com base nas leis de oferta e demanda. Um dos benefícios para o uso de indicadores técnicos e osciladores é o caminho certo é que eles permitem que você negocie com base em um conjunto de regras mecânicas. Vamos usar uma única média móvel e estocásticos na nossa tentativa de usar indicadores em nosso sistema de negociação para encontrar o comerciante perdedor consistente para negociar com.


No gráfico é uma média móvel de 50 períodos e um oscilador estocástico lento. Para começar, devemos avaliar a tendência dos preços neste mercado. Para esta tarefa, uso uma média móvel de 50 períodos. Observe que a inclinação da média móvel está acima sugerindo que estamos em uma tendência de alta. Uma vez que sabemos disso, queremos apenas comprar retrocessos no preço. O sinal mecânico de compra vem quando o estocástico produz um sinal de compra em mais do território vendido (cruzamento médio médio, circulado acima). Embora isso tenha se transformado em uma boa oportunidade de compra de baixo risco, observe a ação de preços antes dessa oportunidade de compra. Durante a tendência de alta, o estocástico foi muito comprado demais, produzindo sinais de venda durante grande parte da tendência de alta, o que teria levado a muitas perdas se você tivesse vendido curto naquela época. Esta é uma armadilha em que novos comerciantes podem cair ao usar essas ferramentas sem regras lógicas baseadas na realidade.


Regra de compra: quando a média móvel está inclinada para cima, pegue a cruz média móvel estocástica em território de sobrevenda como sinal de compra. Quando a média móvel está inclinada para cima, IGNORE CADA sinal de venda, a cruz média móvel estocástica em território de sobrecompra produz.


A lógica baseada na realidade: quando os preços estão se movendo mais alto, queremos encontrar uma oportunidade de compra quando as coisas estão à venda. Mais importante ainda, nosso sinal de compra nos disse objetivamente que alguém estava vendendo depois de um declínio no preço e venda no contexto de uma tendência de alta. Isso só pode ser a ação de um vendedor novato. Um comerciante consistentemente rentável nunca venderia depois de um declínio no preço e no contexto de uma tendência de alta. Então, queremos comprar deste vendedor novato.


Como você pode ver, este é um processo de duas partes e é importante entender isso ao construir seu sistema de negociação. As duas partes são as seguintes:


O "Switch": o interruptor é um interruptor on / off que diz que é "ok to buy" ou "ok to sell", mas não ambos ao mesmo tempo, neste caso. Por exemplo, quando a média móvel está inclinada para cima, o interruptor está ligado e diz "está certo para comprar" o que significa que não está certo para vender.


O "Gatilho": o gatilho é a entrada de comércio real. Então, se a média móvel estiver inclinada para cima, o "interruptor" está ativado, diz que é "ok para comprar". Isso significa que o sinal de compra produzido pelas estocásticas Atravessar o território vendido (o gatilho) está ligado. Se a média móvel estava inclinada para baixo no entanto, esse gatilho de sinal de compra seria desligado e o gatilho do sinal de venda seria ativado.


Talvez o seu sistema comercial não inclua indicadores e, em vez disso, se concentrará nos níveis de oferta e demanda. Nesse caso, você ainda teria um "switch" e "trigger". Sua mudança seria preço atingindo o nível de oferta ou demanda e seu gatilho seria a entrada real que pode ser uma vela de inversão ao nível, preço atingindo o nível ou um dos muitos outros gatilhos. Seja qual for a estratégia, sempre há um "interruptor" e "gatilho".


Neste gráfico, também temos uma média móvel de 50 períodos e um oscilador estocástico lento. Aqui, a inclinação da média móvel de 50 períodos nos diz que a tendência está baixa. Uma vez que conhecemos isso, só queremos vender para um comerciante novato que esteja comprando depois de um movimento mais alto no preço de uma tendência descendente. O sinal mecânico de venda vem quando o estocástico produz um sinal de venda em território comprado (cruzamentos médios móveis, circulados acima).


Regra curta de venda: quando a média móvel está inclinada para baixo, pegue a cruz média móvel estocástica no território de sobrecompra como um sinal de venda. Além disso, quando a média móvel está inclinada para baixo, IGNORE CADA sinal de compra, a transformação média estocástica em território de sobrevenda produz.


A lógica de negociação baseada na realidade: quando os preços tendem para baixo, queremos encontrar uma oportunidade de curto prazo quando os preços são altos. Além disso, queremos vender curto para o comprador que cometeu o erro de comprar depois de um aumento no preço e no contexto de uma tendência de baixa (um comprador novato).


Este ou qualquer sistema comercial é perfeito? Certamente, não existe um sistema comercial perfeito e não precisa ser. Se houvesse, essa pessoa teria todo o dinheiro dos mundos. No entanto, envolver algumas regras de negociação simples e lógica em torno de sua negociação é a chave para empilhar as chances a seu favor. Mesmo Las Vegas não ganha o tempo todo, nem quer ou precisa. Eles fazem bem ao longo do tempo, porque percebem que não precisam sempre ganhar. Eles só precisam manter suas regras que lhes permitem manter a vantagem, o que significa apostar contra pessoas que não têm a vantagem.


Qualquer mercado e indicador farão quando você PENSAR corretamente os mercados.


Aqui está outro exemplo com a mesma média móvel de 50 períodos. Neste exemplo, simplesmente mudei o estocástico para o índice Commodity Channel, mais conhecido como CCI, teremos quase os mesmos sinais.


Razão Técnica para Venda Curta:


1) O down slopping 50 & ndash; A média móvel do período sugere que esse mercado está em declínio.


2) Uma leitura CCI Overbought (em círculos estão no gráfico).


Razão lógica para venda curta: Vender curto para um comprador que compra APÓS uma disputa no preço e no contexto de uma tendência de baixa. O único tipo de mentalidade que tomaria essa ação é alguém que toma decisões para comprar e vender qualquer coisa com base em EMOÇÃO, lógica não simples e adequada. Este é o pedigree do comerciante que queremos do outro lado de nossos negócios.


As estratégias de negociação que funcionam não mudam com o tempo, os mercados ou a mudança das condições do mercado. Francamente, pensar que as condições do mercado nunca mudam é uma forte ilusão que só pode ser removida quando se foca na base do movimento dos preços, oferta e demanda puras. Os sistemas que vejo trabalhar são muito simples. O exemplo abaixo é um gráfico intra-dia, vamos aplicar nossos mesmos princípios básicos.


Motivo técnico para comprar:


1) O slopping 50 & ndash; A média móvel do período sugere que esse mercado está em alta tendência.


2) A leitura CCI Oversold (em círculos estão no gráfico).


Razão lógica de compra: compra de um vendedor novato que vende APÓS uma queda no preço e no contexto de uma tendência de alta.


Overcought Uptrend / Oscillator: ignore Downtrend / Oscillator Oversold: Ignore.


Uptrend / Oscillator Oversold: Comprar sinal Downtrend / Oscilator Overbought: Venda curto Sinal.


Transformando a falha no sucesso.


Eu vejo a grande maioria dos comerciantes que derrubam o caminho do sistema gastar os indicadores de ajuste de forma do ano e osciladores e números cruéis com base em resultados de negociação hipotéticos testados no back (números). Eu vejo que poucas pessoas desenvolvem estratégias de negociação com base na lógica simples de como e por que o preço se move como acontece em qualquer mercado. A partir da minha experiência de mercado baseada na realidade, a negociação é uma simples transferência de contas daqueles que não entendem lógica de mercado simples nas contas daqueles que fazem. Os sistemas comerciais apenas aceleram o processo.


Como mencionei anteriormente, a maioria dos comerciantes que desenvolvem sistemas de negociação não adotam essa abordagem ou pensa nos termos simples que estou sugerindo. Por quê? É por causa da forma como a maioria das pessoas aprende sobre mercados e comércio. A maioria não iniciará seu caminho de aprendizagem como eu fiz manipulando o fluxo de ordem institucional no chão de uma troca. A grande maioria dos jogadores do mercado começará com uma carteira comercial ou seminário escrito ou entregue por alguém que escreva livros e oferece seminários, NÃO é um especulador de mercado real. Estes livros são preenchidos com o uso convencional de indicadores e padrões de gráficos que simplesmente não produzem resultados. Se o fizessem, o autor certamente não venderia o livro para você. Isso leva a um comerciante novato a pensar que eles podem ter um sistema de comércio curto e adicionar alguns indicadores e osciladores a um gráfico de preços e deixar o computador encontrar os parâmetros para cada um desses indicadores que teriam produzido os melhores resultados no passado (de volta teste). Normalmente, quando o comerciante do sistema novato começa a negociar com dinheiro real com base em resultados hipotéticos de qualidade e começa a perder dinheiro, eles tomam o próximo passo errado, eles começam a ajustar as configurações dos indicadores e, pior ainda, eles adicionam mais indicadores. Este é um caminho que leva ao desastre comercial, mas o comerciante do sistema novato nem sequer o conhece. Eles dizem: "Como um sistema de negociação com tão grande back testado números não funciona?" Isso não funciona porque o sistema é baseado em resultados de teste de crunching e curva ajustados. A realidade de como os mercados funcionam é ignorada. Ao projetar seu sistema de negociação, certifique-se de trazer suas bases de volta aos conceitos básicos de como e por que o preço se move em todos e quaisquer mercados. Por último, se você deseja supercarregar as informações contidas neste artigo, adicione níveis de oferta e demanda ao seu sistema. Se você olhar para todos os exemplos acima, sempre houve um nível de oferta ou demanda no ponto de viragem. Tem que haver.


Como fazer um robô de negociação sem tempo.


Para fazer um robô de negociação, você precisa de um sistema de comércio.


A negociação nos mercados financeiros envolve muitos riscos, incluindo o mais crítico - o risco de tomar uma decisão comercial incorreta. O sonho de todos os comerciantes é encontrar um robô comercial, que está sempre em boa forma e não sujeito a fraquezas humanas - medo, ganância e impaciência.


Cada recém-chegado quer obter ou criar um sistema de negociação claro e rigoroso que possa ser apresentado sob a forma de algoritmos e se livrar completamente das operações de rotina. É possível?


Um sistema de comércio é uma condição necessária para entrar no mercado e esse sistema deve ser lucrativo, é claro. Quando os recém-chegados chegam ao mercado, eles geralmente estão sobrecarregados com a grande massa de informações difíceis de entender. Livros e fóruns de comerciantes podem fornecer alguma ajuda nesse caso.


Infelizmente, nem todos os autores são comerciantes de sucesso e nem todos os comerciantes de sucesso escrevem livros. Muitos recursos web especiais são criados apenas para ganhar lucro para seus proprietários, pois é muito mais difícil negociar seu próprio dinheiro do que emitir previsões e ensinar sistemas de negociação.


Cada comerciante deve passar de forma independente todos os estágios de uma criação do sistema comercial. Há um ditado popular de que não importa o sistema que você usa para negociação, o principal é que você deve negociar de acordo com esse sistema. Caso contrário, a negociação no mercado se converte em uma aposta com um resultado previsível.


Trading Robots e Forex.


Espera-se que o mercado Forex tenha uma grande liquidez. Além disso, permite a negociação 24 horas por dia, ao contrário de muitos outros mercados. Portanto, muitos comerciantes tentam fazer robôs comerciais especialmente para o mercado Forex, pois oferece uma grande quantidade de instrumentos de negociação.


No entanto, os céticos afirmam que todos os pares de moedas estão fortemente correlacionados entre si, proporcionando uma volatilidade muito baixa no mercado. Mas seus oponentes respondem que cada par de moedas possui características próprias e baixa volatilidade é compensada por uma grande alavanca.


Em qualquer caso, os instrumentos Forex são atraentes para fazer robôs comerciais e a maioria dos adeptos do comércio automatizado aprimoram suas habilidades em pares de moedas.


Os terminais comerciais MetaTrader 4 e MetaTrader 5 são especialmente projetados para desenvolver sistemas de negociação automatizados facilmente, mas, ao mesmo tempo, sua interface também é conveniente para negociação manual.


Como começar a fazer um robô de negociação?


Existem muitas abordagens para construir um sistema de negociação automatizado. Descreveremos apenas algumas das principais.


A primeira abordagem é baseada em matemática. Um desenvolvedor tenta criar uma espécie de equação que pode considerar muitos fatores. Esta abordagem baseia-se na firme convicção de que os movimentos de preços são gerenciados por um modelo que pode ser encontrado usando os dados históricos disponíveis.


Na maioria dos casos, os seguidores dessa abordagem conhecem muito matemática, mas não sabem nada sobre / não estão interessados ​​no mercado. O mercado é uma abstração pura, um tipo de jogo intelectual para eles. Esta abordagem geralmente leva a muitos anos de estudo e desenvolvimento, enquanto um resultado definitivo na forma de um sistema de negociação automatizado não é tão importante.


A segunda abordagem baseia-se no estudo das leis de mercado. Não são feitas tentativas para entender por que o preço subiu ou desce quando vários números de análise técnica aparecem em um gráfico. A vantagem desta abordagem é que não requer conhecimentos especiais de matemática e não faz suposições sobre a força motriz do mercado.


É mais claro e conveniente ao estudar comércio. É mais popular entre os comerciantes que receberam reconhecimento universal. A desvantagem da abordagem é a necessidade de acompanhar constantemente todos os símbolos necessários.


Mais cedo ou mais tarde, um comerciante começa a considerar a automação dos processos de negociação e a questão mais considerável aparece nesse estágio - a complexidade da formalização das regras de negociação ao tentar expressá-las sob a forma de algoritmos. Em alguns casos, os comerciantes que tentam solicitar um robô comercial não podem descrever as regras comerciais e encontrar um terreno comum com os programadores.


A terceira abordagem baseia-se na tentativa de criar uma "caixa preta" baseada em redes neurais com o uso das ferramentas pré-fabricadas amplamente disponíveis em pacotes especiais de software e matemática. A criação de um sistema de negociação automatizado com os elementos da inteligência artificial é uma tarefa emocionante e desafiadora, mesmo para os recém-chegados, uma vez que não requer fundo matemático profundo, nem experiência de programação - tudo é feito usando auxílios visuais.


Um comerciante deve conhecer os conceitos básicos de indicadores técnicos, possuir uma capacidade para preparar dados de preços necessários e experiência em algum pacote definido para trabalhar com redes neurais. A principal desvantagem desta abordagem é que um robô comercial obtido usando essas ferramentas especializadas para trabalhar com redes neurais é na verdade uma "caixa preta". Os comerciantes não conhecem seus princípios de trabalho e, em geral, é impossível prever qual a fase de mercado que será o mais problemático para o robô.


Os programadores geralmente escolhem a quarta abordagem - eles começam a fazer um robô comercial desde o início, sem gastar tempo para negociação manual. Por que trocar manualmente? Você pode fazer um robô passar alguns meses e colher os benefícios dos seus esforços, então.


Mas "sem dores, sem ganhos". Na maioria dos casos, os programadores começam a criar toda a infra-estrutura necessária usando uma linguagem de programação familiar em vez de apenas fazer um robô comercial - obter e processar dados de preços, representação visual de gráficos e indicadores, meios personalizados de testar estratégias em dados históricos e assim por diante.


Eles ganham muita experiência no processo. Mas na maioria dos casos, essa experiência não os aproxima do objetivo final - criação de um sistema de negociação automatizado. E, mesmo se um robô comercial for criado, não há garantia de que seja lucrativo. E se um programador quiser escrever outro sistema comercial? Reestruturação profunda e novos erros de programação são inevitáveis.


Há também a quinta abordagem - comprando um sistema comercial pronto feito sob a forma de um robô comercial. Neste caso, um comerciante atua como operador ou sintonizador. Esta abordagem economiza muito tempo (não precisa aprender muitas coisas novas) e permite que os comerciantes entrem rapidamente no mundo da negociação automatizada.


A principal desvantagem desta abordagem decorre de suas vantagens: você não conhece os princípios de operação do seu robô comercial e sua estrutura. E mesmo que um vendedor tenha fornecido uma descrição detalhada do sistema de negociação implementado, você nunca estará completamente seguro nele.


No entanto, nenhuma das abordagens mencionadas pode dar-lhe garantia absoluta exceto um depósito bancário. Mas essa não é uma solução muito adequada para pessoas interessadas em negociação no mercado e maneiras de aumentar seus ativos privados.


Qual é a melhor abordagem para a negociação automatizada de um comerciante?


Cada uma das cinco abordagens descritas tem suas vantagens e corresponde a algum tipo de comerciante definido. É improvável que você escolha a primeira abordagem (descrição analítica do mercado) sem um bom histórico matemático. É igualmente improvável que você comece a fazer robôs comerciais com base em redes neurais. No entanto, ambas as abordagens são muito emocionantes e proporcionam um bom exercício intelectual.


Abaixo, vamos discutir apenas a segunda abordagem, que já é considerada a clássica. Essa é a abordagem geralmente escolhida por novos seguidores do comércio automatizado, uma vez que a análise técnica continua a ser a área de conhecimento chave ao aprender noções básicas de negociação.


Outra vantagem da segunda abordagem é que depois de passar algum tempo para negociação manual e obter o senso do mercado, você já terá uma boa compreensão das ferramentas de análise técnica. Além disso, você poderá programar estratégias de negociação ou criar redes neurais em um nível superior.


Os primeiros passos na criação de um robô de negociação.


Para criar um sistema de negociação automatizado, você precisa de habilidades de programação e conhecimento de todas as complexidades do processamento de pedidos comerciais. Mas, em primeiro lugar, você pode começar com os Expert Advisors, fabricados em linha, negociando robôs da biblioteca gratuita do Code Base.


Baixe qualquer Consultor Especializado (robô comercial) e inicie-o nos terminais de clientes do Strategy Tester de MetaTrader 4 ou MetaTrader 5. Selecione um intervalo de histórico que mostre uma forte tendência e um intervalo com um plano. Execute a otimização de parâmetros de entrada do Expert Advisor e examine suas diferenças nesses dois intervalos.


Inicie um Expert Advisor com os parâmetros ótimos para um plano em um intervalo de tendências e com os parâmetros ótimos para uma tendência em um intervalo plano. Examine as diferenças nos resultados da negociação, distribuições de negócios e outros parâmetros estatísticos. Como resultado, você saberá o quanto o comportamento do seu sistema comercial pode variar quando a situação do mercado muda.


Seria melhor tentar várias estratégias de negociação padrão usando este método em diferentes partes da história e vários símbolos. Tal operação de teste impede o ajuste de um sistema de negociação para algum intervalo de histórico definido e fornece uma melhor compreensão dos sistemas de tendência e contrapressão.


O próximo passo seria criar sistemas de negociação mais complexos com base na combinação de sinais simples já existentes do MQL5 Wizard set. Você pode testar e desenvolver sua intuição comercial, classificando sinais ruins de um sistema usando um filtro baseado em outro sistema sem meios de programação.


O principal não é superar. Quanto mais os parâmetros de entrada que um sistema de negociação tem, mais fácil será montar. Houve muitas discussões sobre as diferenças entre otimização e adequação. Não há soluções amplamente aceitas aqui. Mas a visualização de resultados de teste / otimização e seu próprio senso comum podem ajudá-lo.


Aprenda a identificar os parâmetros de entrada mais críticos que afetam seu sistema comercial de todo o conjunto de dados de entrada. Não preste muita atenção aos parâmetros secundários que levam tempo durante a otimização, mas não afetam a própria lógica do sistema. Lembre-se de que um bom sistema de negociação sempre demonstra um pequeno movimento livre de parâmetros secundários, mas não apresenta volatilidade dramática no caso de mudanças no mercado insignificantes.


Você pode gastar tanto tempo nesta fase, conforme desejar, até ter certeza de que pode entender qualquer estratégia de negociação que examine resultados de teste e otimização. O conhecimento de pontos fortes e fracos dos sistemas padrão permitirá que você esteja melhor preparado ao criar seu próprio robô comercial.


Programação de um robô de negociação.


Suponha que você tenha aprendido / esteja aprendendo linguagem de programação MQL4 ou MQL5 e agora você está pronto para escrever seu primeiro consultor especialista para o terminal do cliente MetaTrader. Vários casos são possíveis aqui.


Primeiro, você pode examinar vários robôs comerciais prontos, descritos nos artigos para entender melhor as complexidades de programação.


Em segundo lugar, você pode fazer perguntas sobre MQL4munity ou MQL5munity, se você tiver problemas não resolvidos. Os participantes da comunidade experientes geralmente ajudam os recém-chegados a mostrarem interesse sincero no assunto.


Em terceiro lugar, você pode solicitar imbricação ou desenvolvimento de um Consultor Especialista ou um indicador no serviço de Emprego, se você não conseguir escrever um programa necessário por conta própria. Mas, mesmo que você faça um pedido por meio do serviço freelance, você deve ter uma idéia sobre testes de estratégia para encontrar um idioma comum com um desenvolvedor.


Além disso, o conhecimento básico de uma linguagem de programação permite implementar pequenas correções e alterações no código depois que o trabalho já foi concluído. Afinal, não seria muito conveniente chamar um programador para corrigir todos os pequenos problemas que você encontrar. Seria muito mais fácil e rápido consertar você mesmo.


Não há necessidade de reinventar a roda.


Como encontrar sua própria estratégia de negociação, ou pelo menos em que direção você deve concentrar sua pesquisa? Todos os comerciantes protegem seus próprios sistemas de negociação, se tiverem um. Todos os recém-chegados querem criar um sistema rentável ou obter um ready-made. Ao mesmo tempo, qualquer solução obtida parece ser muito simples em comparação com as idéias dos recém-chegados sobre um sistema de comércio genuíno.


Os homens do exército de todo o mundo são propensos a níveis excessivos de sigilo. Há muitas piadas sobre isso, incluindo o seguinte: "O segredo militar não está no que você está estudando, - um oficial diz aos estudantes da escola militar, - mas no fato de que exatamente você está estudando isso". A situação com os sistemas de negociação é bastante similar: a maioria dos comerciantes usa idéias comerciais simples e bem conhecidas com pequenas modificações, por exemplo, adicionando Trailing Stop ou confirmações de indicadores de tendência.


Há muitos fóruns de comerciantes com acesso limitado, onde os participantes se unem para desenvolver ou melhorar alguns sistemas comerciais secretos. O mais interessante é que esses sistemas não contêm nada de especial. Geralmente, uma idéia bem conhecida (como "comércio com a tendência") é usada como base. Então, é aperfeiçoado com alguns novos indicadores desconhecidos para o público em geral.


Portanto, você pode facilmente obter códigos de código de robô comercial disponíveis e tentar usá-los corretamente com vários símbolos e prazos. Outro exemplo popular pode ser mencionado aqui: "Você não gosta de gatos? Você simplesmente não sabe como cozinhar!" É difícil de acreditar, mas a probabilidade de desenvolver algo realmente novo é muito pequena. O principal aqui é criar um sistema usando ingredientes disponíveis. Não pense que alguns gênios tenham acesso a alguns sistemas secretos dos laboratórios da NASA. Esse é o segredo do Graal.


Apenas alguns os farão.


Então, por que ninguém usa idéias comerciais, se eles estão literalmente ao alcance do braço? A resposta provavelmente está na psicologia humana. A equipe de muitos bancos e grandes fundos de investimento inclui comerciantes que realizam negócios de acordo com regras rígidas e dentro de volumes limitados. Mas por algumas razões, apenas alguns comerciantes institucionais deixam suas empresas e começam a negociar usando seu próprio dinheiro.


Acontece que você precisa não só de uma estratégia de negociação, mas também da disciplina de ferro para segui-la. Muitos comerciantes descobriram com arrependimento que eles também têm os mesmos problemas psicológicos descritos nos livros. Depois de perceber que o pior inimigo dos comerciantes são eles próprios, um recém-chegado começa a pensar em fazer um robô comercial para eliminar um fardo psicológico.


Embora eu me desvie um pouco do assunto, devo mencionar os lendários comerciantes de tartarugas que negociaram com êxito em múltiplos mercados no final do século XX. Leia "Way of the Turtle" e você verá que a coisa mais importante para um comerciante é uma autodisciplina e não um sistema top secreto. Infelizmente, a maioria dos recém-chegados não conseguirá seguir uma estratégia rentável, mesmo que obtenha gratuitamente.


O problema é que a maioria das estratégias de negociação perfeitamente ajustadas para o comércio manual dificilmente podem ser formalizadas e transcritas para uma linguagem de programação. As estratégias que podem ser facilmente formalizadas (por exemplo, as que envolvem duas médias móveis "interseção") são muito simples e exigem muitos aprimoramentos e melhorias, para que possam ser usados ​​na prática. Assim, uma idéia simples é gradualmente complicada por uma abundância de parâmetros externos impedindo um robô comercial de entradas falsas e erros claramente visíveis para um desenvolvedor. Emerge uma questão de otimização de robô comercial. Este processo não deve se transformar em uma sobre-optimização e ajuste para um intervalo de histórico específico.


Para resolver este problema, o teste direto usando os parâmetros do sistema obtidos foi implementado no terminal MetaTrader 5. Se os resultados de teste direto não diferirem significativamente daqueles obtidos na seção de otimização, existe uma probabilidade de um robô comercial ser suficientemente estável por algum tempo após o lançamento em uma conta de negociação. Um comprimento de um intervalo para otimização de parâmetros e um valor real desse "algum tempo" depende de um determinado sistema de negociação.


Assim, a otimização de um robô comercial antes de iniciá-lo em uma conta comercial lembra de desenrolar uma funda - quanto mais cuidadosamente desenrolamos e lançamos um projétil da funda, mais longe voará e mais precisa será a trajetória dele. Um robô de negociação completamente desenvolvido manterá um resultado positivo em uma conta de negociação por mais tempo do que um robô comercial obtido como resultado de uma montagem. Podemos dizer que o Grail é uma idéia de trabalho e ajuste correto dos parâmetros realizados de tempos em tempos nos momentos de mudanças nas condições do mercado.


Isso pode ser ilustrado pelos resultados do Campeonato Automatizado de Negociação que é realizado por muitos anos já. Os assessores de especialistas enviados de todos os participantes passam por testes automáticos no intervalo de tempo de janeiro até o final de julho. O principal requisito para passar o teste automático é um lucro obtido por oito meses de teste. Mas menos de metade dos robôs comerciais admitidos para o Campeonato continuam lucrativos após os meses de trabalho autônomo.


Você também pode tentar suas habilidades em fazer e ajustar o seu robô comercial para participar do Campeonato e obter os resultados de testes avançados do seu Consultor Especialista. Além disso, a participação é gratuita e os prêmios são impressionantes. Esperamos ver você lá!


Conclusão.


Os comerciantes intradiários profissionais passam muitas horas sentados em seus computadores e esperando o momento certo para realizar um acordo. Claro, eles não podem estar em boa forma o tempo todo.


A maioria dos comerciantes chega à conclusão de que suas ações violam suas próprias regras de negociação. Nem todos os sistemas de negociação podem ser completamente formalizados, mas mesmo esses sistemas podem, na maioria dos casos, adotar ferramentas adicionais, como indicadores, sistemas analíticos e filtros de sinais falsos.


Não fazemos recomendações especiais aqui sobre o aprendizado de línguas MQL4 ou MQL5, pois há muitos outros artigos úteis sobre esse assunto. O objetivo deste artigo foi fornecer uma idéia inicial sobre como começar a fazer seu robô comercial para os terminais MetaTrader 4 e MetaTrader 5.


Esperamos que este artigo economize tempo para os recém-chegados e mostre a direção certa na difícil tarefa de desenvolver um sistema de negociação automatizado.


Traduzido do russo pela MetaQuotes Software Corp.


Codificação de sistemas de negociação.


Por Justin Kuepper.


Como são criados sistemas de negociação automatizados?


Este tutorial se concentrará nas segunda e terceira partes deste processo, onde suas regras são convertidas em um código que seu software comercial pode entender e usar.


Vantagens e desvantagens.


Um sistema automatizado leva a emoção e ocupado - trabalhe fora da negociação, o que permite que você se concentre em melhorar sua estratégia e regras de gerenciamento de dinheiro. Uma vez que um sistema lucrativo é desenvolvido, não requer nenhum trabalho de sua parte até que ele quebre, ou as condições do mercado exigem uma mudança. Desvantagens:


Se o sistema não estiver corretamente codificado e testado, grandes perdas podem ocorrer muito rapidamente. Às vezes, é impossível colocar certas regras em código, o que dificulta o desenvolvimento de um sistema de negociação automatizado. Neste tutorial, você aprenderá como planejar e projetar um sistema de negociação automatizado, como traduzir esse design para o código que seu computador irá entender, como testar seu plano para garantir um desempenho ótimo e, finalmente, como colocar seu sistema em uso.


Prós e contras de sistemas de negociação automatizados.


Os comerciantes e os investidores podem transformar regras de entrada, saída e gerenciamento de dinheiro precisas em sistemas de negociação automatizados que permitem aos computadores executar e monitorar os negócios. Uma das maiores atrações da automação de estratégia é que pode tirar parte da emoção fora da negociação, uma vez que os negócios são automaticamente colocados assim que determinados critérios forem atendidos. Este artigo apresentará os leitores e explicará algumas das vantagens e desvantagens, bem como as realidades, dos sistemas de negociação automatizados. (Para leitura relacionada, veja The Power Of Program Trades.)


O que é um sistema de negociação automatizado?


Os sistemas de negociação automatizados, também denominados sistemas de negociação mecânica, negociação algorítmica, negociação automatizada ou negociação de sistema, permitem que os comerciantes estabeleçam regras específicas para ambas as entradas comerciais e saídas que, uma vez programadas, podem ser executadas automaticamente através de um computador. As regras de entrada e saída comercial podem ser baseadas em condições simples, como um crossover médio móvel, ou podem ser estratégias complicadas que requerem uma compreensão abrangente da linguagem de programação específica para a plataforma de negociação do usuário ou a experiência de um programador qualificado. Os sistemas de negociação automatizados normalmente exigem o uso de software que esteja vinculado a um corretor de acesso direto, e quaisquer regras específicas devem ser escritas na linguagem proprietária dessa plataforma. A plataforma TradeStation, por exemplo, usa a linguagem de programação EasyLanguage; A plataforma NinjaTrader, por outro lado, utiliza a linguagem de programação NinjaScript. A Figura 1 mostra um exemplo de uma estratégia automatizada que desencadeou três negociações durante uma sessão de negociação. (Para leitura relacionada, veja Comércio Global e Mercado Moeda.)


[Os sistemas de negociação automatizada podem usar muitos indicadores técnicos diferentes para definir pontos de entrada e saída. O Curso de Análise Técnica da Investopedia fornece uma visão geral detalhada desses indicadores técnicos e padrões de gráficos que os comerciantes podem usar ao criar sistemas de negociação automatizados.]


Algumas plataformas de negociação possuem "assistentes" de construção de estratégias que permitem aos usuários fazer seleções a partir de uma lista de indicadores técnicos comumente disponíveis para construir um conjunto de regras que podem ser negociadas automaticamente. O usuário poderia estabelecer, por exemplo, que um longo comércio será inserido uma vez que a média móvel de 50 dias cruza acima da média móvel de 200 dias em um gráfico de cinco minutos de um instrumento comercial específico. Os usuários também podem inserir o tipo de ordem (mercado ou limite, por exemplo) e quando o comércio será acionado (por exemplo, no fechamento da barra ou aberto da próxima barra), ou use as entradas padrão da plataforma. Muitos comerciantes, no entanto, optam por programar seus próprios indicadores e estratégias personalizados ou trabalhar em estreita colaboração com um programador para desenvolver o sistema. Embora isso geralmente requer mais esforço do que usar o assistente da plataforma, ele permite um grau de flexibilidade muito maior e os resultados podem ser mais gratificantes. (Infelizmente, não existe uma estratégia de investimento perfeita que garanta o sucesso. Para mais informações, consulte Usando Indicadores Técnicos para Desenvolver Estratégias de Negociação.)


Uma vez que as regras foram estabelecidas, o computador pode monitorar os mercados para encontrar oportunidades de compra ou venda com base nas especificações da estratégia comercial. Dependendo das regras específicas, assim que uma negociação for inserida, serão gerados automaticamente quaisquer pedidos de perdas de proteção de paradas, paradas de trânsito e metas de lucro. Em mercados em movimento rápido, esta entrada de ordem instantânea pode significar a diferença entre uma pequena perda e uma perda catastrófica no caso de o comércio se mover contra o comerciante.


Vantagens de Sistemas de Negociação Automatizados.


Há uma longa lista de vantagens em ter um computador monitorando os mercados para oportunidades comerciais e executar os negócios, incluindo:


Minimize Emoções. Os sistemas de negociação automatizados minimizam as emoções ao longo do processo de negociação. Ao manter as emoções sob controle, os comerciantes normalmente têm um tempo mais fácil de aderir ao plano. Uma vez que as ordens comerciais são executadas automaticamente uma vez que as regras comerciais foram cumpridas, os comerciantes não poderão hesitar ou questionar o comércio. Além de ajudar os comerciantes que têm medo de "puxar o gatilho", o comércio automatizado pode conter aqueles que estão aptos a vender demais - comprando e vendendo em todas as oportunidades percebidas.


Capacidade de Backtest. Backtesting aplica as regras de negociação aos dados históricos do mercado para determinar a viabilidade da idéia. Ao projetar um sistema de negociação automatizada, todas as regras precisam ser absolutas, sem espaço para interpretação (o computador não pode fazer suposições - é preciso dizer exatamente o que fazer). Os comerciantes podem tomar esses conjuntos precisos de regras e testá-los em dados históricos antes de arriscar dinheiro em negociação ao vivo. O backtesting cuidadoso permite aos comerciantes avaliar e afinar uma idéia comercial e determinar a expectativa do sistema - o valor médio que um comerciante pode esperar para ganhar (ou perder) por unidade de risco. (Oferecemos algumas dicas sobre este processo que podem ajudar a repor suas estratégias de negociação atuais. Para mais informações, consulte Backtesting: Interpreting the Past.)


Preserve Discipline. Como as regras comerciais são estabelecidas e a execução comercial é executada automaticamente, a disciplina é preservada mesmo em mercados voláteis. A disciplina é muitas vezes perdida devido a fatores emocionais, como o medo de sofrer uma perda, ou o desejo de obter um pouco mais de lucro de um comércio. O comércio automatizado ajuda a garantir que a disciplina seja mantida porque o plano de negociação será seguido exatamente. Além disso, o erro piloto é minimizado, e uma ordem para comprar 100 ações não será inserida incorretamente como uma ordem para vender 1.000 ações.


Alcançar Consistência. Um dos maiores desafios na negociação é planejar o comércio e negociar o plano. Mesmo que um plano de negociação tenha o potencial de ser rentável, os comerciantes que ignoram as regras estão alterando a expectativa de que o sistema teria tido. Não existe um plano de negociação que ganhe 100% do tempo - as perdas são parte do jogo. Mas as perdas podem ser psicologicamente traumatizantes, então um comerciante que tem duas ou três negociações perdidas em uma fila pode decidir ignorar o próximo comércio. Se esse próximo comércio fosse um vencedor, o comerciante já havia destruído qualquer expectativa do sistema. Os sistemas de negociação automatizados permitem que os comerciantes obtenham consistência ao negociar o plano. (É impossível evitar o desastre sem regras de negociação. Para mais informações, veja 10 Passos para construir um Plano de Negociação vencedor.)


Velocidade de entrada de pedido aprimorada. Uma vez que os computadores respondem imediatamente às mudanças nas condições do mercado, os sistemas automatizados são capazes de gerar ordens assim que os critérios comerciais forem atendidos. Entrar ou sair de um comércio alguns segundos antes pode fazer uma grande diferença no resultado do comércio. Assim que uma posição é inserida, todos os outros pedidos são gerados automaticamente, incluindo perdas protetoras de parada e metas de lucro. Os mercados podem se mover rapidamente, e é desmoralizante ter um comércio atingindo o objetivo de lucro ou superar um nível de perda de parada - antes que as ordens possam ser inseridas. Um sistema de negociação automatizado evita que isso aconteça.


Desvantagens e Realidades dos Sistemas Automatizados de Negociação.


Os sistemas de negociação automatizados possuem muitas vantagens, mas existem algumas quedas e realidades a que os comerciantes devem estar cientes.


Falhas mecânicas. A teoria por trás do comércio automatizado faz com que pareça simples: configurar o software, programar as regras e assisti-lo comercializar. Na realidade, no entanto, a negociação automatizada é um método sofisticado de negociação, mas não infalível. Dependendo da plataforma de negociação, uma ordem comercial pode residir em um computador - e não em um servidor. O que isso significa é que, se uma conexão com a Internet for perdida, um pedido pode não ser enviado ao mercado. Também pode haver uma discrepância entre os "negócios teóricos" gerados pela estratégia e o componente da plataforma de entrada de pedidos que os transforma em trades reais. A maioria dos comerciantes deve esperar uma curva de aprendizado ao usar sistemas de negociação automatizados, e geralmente é uma boa idéia começar com pequenos tamanhos comerciais enquanto o processo é refinado.


Monitoramento. Embora seja ótimo ligar o computador e sair para o dia, os sistemas de negociação automatizados requerem monitoramento. Isso é devido ao potencial de falhas mecânicas, como problemas de conectividade, perdas de energia ou falhas no computador, e às peculiaridades do sistema. É possível que um sistema de negociação automatizado experimente anomalias que possam resultar em ordens erradas, ordens faltantes ou pedidos duplicados. Se o sistema for monitorado, esses eventos podem ser identificados e resolvidos rapidamente.


Os comerciantes têm a opção de executar seus sistemas de negociação automatizados através de uma plataforma de negociação baseada no servidor, como o Strategy Runner. Essas plataformas freqüentemente oferecem estratégias comerciais para venda, um assistente para que os comerciantes possam projetar seus próprios sistemas ou a capacidade de hospedar sistemas existentes na plataforma baseada no servidor. Por uma taxa, o sistema de negociação automatizado pode pesquisar, executar e monitorar negócios - com todos os pedidos que residem em seu servidor, resultando em entradas de pedidos potencialmente mais rápidas e confiáveis.


Embora seja atraente por uma variedade de fatores, os sistemas automáticos de negociação não devem ser considerados um substituto para negociações cuidadosamente executadas. Falhas mecânicas podem acontecer e, como tal, esses sistemas requerem monitoramento. As plataformas baseadas em servidor podem fornecer uma solução para comerciantes que desejam minimizar os riscos de falhas mecânicas. (Para leitura relacionada, veja Day Trading Strategies For Beginners.)


Guia para o desenvolvimento do sistema de negociação.


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 rentáveis ​​não são apenas por causa da sorte, mas são os resultados da modelagem robusta do comportamento de um mercado.


Esta série de artigos apresentará uma abordagem simplificada para o desenvolvimento de um sistema de negociação para o mercado cambial de varejo. A ferramenta de desenvolvimento do sistema que usamos será 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, iremos ao leitor para obter recursos adicionais para obter informações mais detalhadas.


Existem cinco fases distintas no desenvolvimento do sistema de negociação:


Fase 1: Desenvolvimento do modelo de mercado e do sistema automatizado básico e mdash; O sistema automatizado básico implementa este 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. Usamos a otimização para encontrar um parâmetro de paragem que atenda às nossas necessidades. Usaremos análise walk-forward para testar esta versão do sistema.


Fase 3: Gerenciamento de lucro e 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 objetivo de lucro apropriado e, em seguida, usaremos a análise walk-forward 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% do patrimônio da conta. Nós administraremos nossa otimização usando essas porcentagens e, mais uma vez, usaremos a análise walk-forward para testar esta versão do sistema.


Tomados em conjunto, as fases 2 a 4 compreendem o gerenciamento comercial, mas há um passo mais crítico:


Fase 5: análise de Monte Carlo e mdash; 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 a implantação (assumindo que é 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 com precisão o comportamento do mercado; resultados favoráveis ​​podem ter beneficiado de um ambiente de mercado cuja ação de preço acabou de coincidir com nossa lógica. A análise de Monte Carlo ajudará a determinar se nosso modelo foi bem sucedido devido à sorte (aleatoriedade) ou à sua capacidade de identificar e explorar um padrão de mercado real.


Este artigo abordará a Fase 1; Os artigos subsequentes abordarão as Fases 2 a 5.

No comments:

Post a Comment