Trading Systems Builder.
Abra o construtor no menu: Análise técnica & gt; Trading Systems & gt; Trading Systems Builder.
Veja o Tutorial: Como criar um tópico do Sistema de Negociação para um tutorial sobre o uso do Trading Systems Builder para construir um sistema comercial comercial personalizado. Para obter um modelo de exemplo a ser usado com o Trading Systems Builder, consulte Modelo do sistema comercial.
Um sistema de negociação consiste em um conjunto conciso de regras objetivas com base em fatores mensuráveis que são utilizados para sinalizar quando iniciar negociações de compra e venda em um mercado. Um sistema de negociação pode gerar vários tipos de alertas baseados em condições pré-definidas e solicitar ações de negociação automatizadas *** a serem tomadas nessas condições.
*** Nota: Certas regras e restrições se aplicam a qualquer sistema de negociação iniciado no modo Auto-Trade. É FORTEMENTE recomendável que leve alguns minutos para ler as Perguntas frequentes de Auto-Trading. Não tente usar qualquer sistema de negociação no Advantage Trader no modo Auto-Trade até que esteja absolutamente certo de que compreende completamente as regras e restrições que regem a funcionalidade de negociação automática dos sistemas de negociação.
O Trading Systems Builder é um componente significativo no Advantage Trader. Você pode criar novos sistemas de negociação e: editar, clonar, excluir, importar e exportar sistemas de negociação existentes usando o construtor. Os ícones diretamente à esquerda do nome de cada sistema comercial ajudam você a diferenciar os sistemas de negociação de exemplo Advantage Trader de seus sistemas de negociação personalizados. Os sistemas de negociação de amostra Advantage Trader são identificados com um ícone de engrenagem (ou roda dentada). Os sistemas de negociação personalizados são identificados por um ícone de engrenagem + pessoa.
A janela do Trading Systems Builder contém os seguintes comandos:
Novo sistema)
Esse comando começa a criar um novo sistema de negociação personalizado ao abrir uma janela do Editor de Sistemas de Negociação.
Editando um sistema.
O comando Editar permite que você faça alterações no sistema de negociação selecionado abrindo-o em uma janela do Editor de Sistemas de Negociação.
Clonagem de um sistema.
O comando Clone cria uma cópia do sistema de negociação selecionado e adiciona-o à lista do sistema comercial com "(2)" anexado ao nome do sistema comercial (para distinguir a cópia do sistema comercial original).
Excluindo um sistema.
O comando Excluir move o sistema de negociação selecionado para a Lixeira do Windows para exclusão. Se este comando estiver desativado, primeiro você deve editar o sistema de negociação, removendo a marca de seleção ao lado da opção Proteger de exclusão na guia Geral da janela do Editor de Sistemas de Negociação.
Exportando um sistema.
O comando Exportação exporta o sistema de negociação selecionado para que ele possa ser salvo em um diretório designado em seu computador. Os sistemas comerciais são salvos com uma extensão de arquivo. vttrs. Um sistema de comércio exportado pode ser importado para o Advantage Trader usando o comando Importar.
Importando um sistema.
O comando Importar importa um arquivo do sistema comercial que foi exportado anteriormente do Advantage Trader com uma extensão de arquivo. vttrs. A importação de um sistema de negociação adiciona-o à lista do sistema de negociação usando o texto no campo Nome na guia Geral da janela do Editor de Sistemas de Negociação. Se um sistema de negociação com o mesmo nome já existir no Advantage Trader, um "(2)" será anexado ao nome do sistema de comércio importado para ajudar a distingui-lo do sistema de negociação existente.
Construtor de sistema de negociação automática
Se você não está satisfeito com o Adaptrade Builder por qualquer motivo, devolva-o no prazo de 30 dias para obter um reembolso total. Veja nossos Termos & amp; Condições para detalhes completos.
Você pode baixar o Builder agora. Depois de comprar o Builder on-line, você pode ativá-lo automaticamente, convertendo-o em uma versão licenciada. Clique aqui para obter informações adicionais sobre pedidos.
Processador: 3 GHz ou mais rápido.
RAM: 4 GB ou mais.
Sistema operacional: Windows Vista ou mais recente.
Plataforma de negociação: TradeStation 6 ou superior, TS 2000i, MultiCharts, MetaTrader 4 ou AmiBroker.
Monitor: 17 polegadas ou maior.
Leia como Builder foi usado para desenvolver uma estratégia intradiária de negociação de ouro na edição de julho de 2018 da TASC.
Leia italiano? Veja a revisão do Builder.
Adaptrade Builder é a próxima geração de ferramentas de negociação sistemática. O Builder pode descobrir, codificar e testar milhares de estratégias comerciais exclusivas e completas em minutos. O Builder pode descobrir e codificar sistemas de negociação para ações, futuros, forex, ETFs e outros mercados em intervalos de tempo, desde dados de ticks até barras mensais. Adaptrade Builder é a maneira rápida e fácil de desenvolver estratégias comerciais comerciais para a TradeStation, MultiCharts, NinjaTrader 7, MetaTrader 4 e AmiBroker. Recursos recentemente adicionados: condições opcionais de entrada de rede neural, indicadores adaptativos e de atraso zero, encontrando o tamanho da barra intradía ideal. Custa menos de uma estratégia comercial única.
Por exemplo, digamos que você quer uma estratégia de negociação para um pequeno portfólio de ações - que poderia ser também futuros, forex ou outros instrumentos - e que você deseja que sua estratégia tenha um fator de lucro maior do que 2, não mais do que 20 % de redução, e uma boa curva linear. Você quer ganhar negócios para durar, digamos, cinco dias em média. Para que o Builder gere tal estratégia, você carregaria os dados de preços para os símbolos de interesse; insira seus requisitos de fator de lucro, redução, coeficiente de correlação e barras médias em vitórias (por exemplo, factor de lucro & gt; = 2,0); em seguida, pressione o botão Construir. O construtor usará um algoritmo avançado de programação genética para evoluir sua estratégia enquanto assiste. Quando terminar, você pode revisar os resultados de desempenho e o código da estratégia e aceitá-lo como está ou modificar uma das configurações e construir novamente.
O Builder possui uma variedade de configurações que permitem que você personalize os resultados, como especificar os tipos de ordens de negociação usadas para entrada e saída, o conjunto de indicadores que podem ser considerados para uso nas estratégias e se as estratégias são apenas longas , apenas de curta duração, ou incluem negócios longos e curtos. Você também pode especificar o intervalo de valores disponíveis usados para entradas de indicadores e cálculos de preços de pedidos. Outras opções permitem limitar o número de entradas por dia e especificar os tempos de entrada e saída para estratégias intradiárias. Você também pode adicionar uma rede neural como uma condição de entrada, controlar a complexidade da estratégia para limitar o risco de sobreposição e especificar a quantidade de dados reservada para testes fora da amostra.
Por que não criar estratégias você mesmo?
Desenvolver uma estratégia comercial eficaz, a maneira tradicional não é fácil. Se você faz sua própria programação ou contrata alguém para implementar suas idéias, o processo de desenvolvimento é complicado e demorado. Supondo que você tenha uma idéia viável para começar, o primeiro passo é programá-lo e verificar se o código faz o que você deseja que ele faça. Você então precisa testá-lo para ver se ele tem potencial. Infelizmente, a maioria das idéias comerciais simplesmente não funcionam, o que significa mais programação, mais testes e assim por diante.
Como você sabe que as estratégias serão lucrativas?
Ninguém pode garantir que uma estratégia de negociação seja lucrativa. No entanto, o Builder foi projetado com recursos que lhe proporcionem a melhor chance de desenvolver estratégias de negociação robustas e lucrativas. O Builder incorpora vários recursos que ajudam a orientar o processo para estratégias que provavelmente terão um bom desempenho fora da amostra e em tempo real. Em particular, você pode separar os dados nos quais as estratégias são construídas ("treinamento", dados) dos dados usados para testes ("teste" e "validação" de dados).
Além disso, você pode criar estratégias que maximizem ou minimizem qualquer combinação de 84 métricas de desempenho diferentes, incluindo as relacionadas à qualidade e robustez da estratégia, como significância, coeficiente de correlação da curva de equidade, valor de Kelly f, relação MAR, razão Sortino, fator de lucro , e complexidade do sistema. Além disso, a lógica de estratégia produzida pelo Builder incorpora parâmetros normalizados de volatilidade, que ajudam a adaptar as estratégias a diferentes condições de mercado. O guia do usuário inclui uma seção que abrange fatores que afetam o desempenho fora da amostra e maneiras de maximizar os resultados de negociação fora de amostra e em tempo real.
A versão mais recente do Builder também inclui regras especiais de rastreamento de compilação que monitoram o processo de compilação e reinicia ou termina quando os resultados começam a se tornarem excessivos. Para minimizar as chances de sobreposição, você pode incorporar opções de teste de estresse que tornam as estratégias menos sensíveis às variações nos valores dos parâmetros de entrada e nos preços de mercado. Depois que as estratégias são criadas, um teste exclusivo de significância estatística pode ser executado para verificar se o desempenho positivo da estratégia não é simplesmente resultado da boa sorte.
Sua compra do Builder inclui:
- Licença de vida por usuário para o programa.
- Atualizações gratuitas por um ano a partir da data de compra.
- Três arquivos de exemplo para demonstrar diferentes configurações que podem ser usadas no Builder e o tipo de código de estratégia que pode resultar.
- Seis novas estratégias de bônus. Essas estratégias, desenvolvidas usando o Builder versão 2, incluem estratégias para barras de 3 minutos e barras diárias do E-mini S & amp; P 500, barras de 60 minutos dos futuros mini Russell 2000, barras diárias da Amazon, barras de 15 min do Google e Barras de 60 min de EURUSD. Além disso, sete estratégias de bônus desenvolvidas usando o Builder versão 1 também estão incluídas. Essas estratégias de bônus só estão disponíveis para usuários licenciados do programa.
O software é projetado para comerciantes individuais e profissionais. A interface familiar do Windows torna o programa fácil de usar, e arquivos de ajuda detalhados estão disponíveis se necessário para explicar como usar o programa. Para começar, tudo que você precisa é TradeStation, MultiCharts, NinjaTrader, MetaTrader 4 ou AmiBroker. Se você troca apenas dados de fim de dia e pode fazer ordens de negociação manualmente através do seu corretor, então, você pode usar o Builder como uma plataforma de negociação independente, sem a necessidade de uma das plataformas suportadas.
"Primeiro eu quis dizer o quanto o Builder foi útil para mim. Eu tenho usado isso há alguns anos (com tradição) e quase todas as estratégias têm sido lucrativas na vida real ".
"Apenas compre seu software e execute a primeira compilação.
120 min de futuros de ouro 2001-2009. A amostra não apresentou maior PF do que na amostra. . Muito agradável. Obrigado. & Quot;
R. D., Stephens City, VA.
"... queria soltar uma nota e informá-lo de que o AdaptiveIRSI provou ser um ótimo código na negociação do DAX. Eu troco o período de tempo mais curto (1-3 dias) e descobriu que esta função era um excelente padrão de confirmação quando combinado com minhas estratégias ".
"Por exemplo, há excelentes semanas de negociação de sistemas de construção de futuros de ouro! "
C. D., Palo Alto, CA.
Copyright (c) 2004-2017 Adaptrade Software. Todos os direitos reservados.
Construtor de sistema de negociação automática
Se você ainda procura uma vantagem nos mercados, os sistemas de negociação automatizada são a melhor maneira de obtê-lo. Saber mais.
Copyright (c) 2018 Adaptrade Software. Todos os direitos reservados.
OS RESULTADOS DE DESEMPENHO HIPOTÉTICOS OU SIMULADOS TÊM CERTAS LIMITAÇÕES INERENTES. DESEJO UM REGISTRO DE DESEMPENHO REAL, OS RESULTADOS SIMULADOS NÃO REPRESENTAM A NEGOCIAÇÃO REAL. TAMBÉM, DESDE QUE OS NEGÓCIOS NÃO SEJAM REALMENTE EXECUTOS, OS RESULTADOS PODEM TENER SOB OU COMENTÁRIOS COMPLEMENTARES PARA O IMPACTO, SE HAVER, DE CERTOS FATORES DE MERCADO, TAL COMO FALTA DE LIQUIDEZ. PROGRAMAS DE NEGOCIAÇÃO SIMULADOS EM GERAL SÃO TAMBÉM SUJEITOS AO FATO QUE ESTÃO DESIGNADOS COM O BENEFÍCIO DE HINDSIGHT. NENHUMA REPRESENTAÇÃO ESTÁ FAZENDO QUE QUALQUER CONTA VÁ OU SEJA PROBABILITÁVEL PARA ALCANÇAR LUCROS OU PERDAS SIMILARES ÀOS MOSTRADOS.
EasyLanguage e TradeStation são marcas registradas da TradeStation Technologies, Inc.
Uma das maiores tendências no comércio varejista na última década foi o aumento da popularidade do comércio automatizado. Neste tipo de negociação, também conhecida como execução automatizada de ordens, os sinais de compra e venda gerados por um sistema de negociação são executados automaticamente por uma plataforma conectada à conta corretora do comerciante. Isso permite o comércio livre de mãos, o que permite uma execução mais rápida, menos erros e a capacidade de trocar prazos mais curtos com estratégias de maior freqüência.
O algoritmo básico para a construção de sistemas de negociação usando a geração automática de código é mostrado abaixo na Fig. 1. Começa com um método para combinar diferentes elementos da estratégia de negociação. Esses elementos podem incluir vários indicadores técnicos, como médias móveis, estocásticos e assim por diante; diferentes tipos de pedidos de entrada e saída; e condições lógicas para entrar e sair do mercado.
Figura 1. Algoritmo básico para construção de estratégia automatizada.
Depois que os diferentes elementos são combinados em uma estratégia coerente, ele pode ser avaliado no mercado ou mercados de interesse. Isso requer dados de mercado - preços, volume, interesse aberto, etc. - para cada mercado. De um modo geral, você também teria um conjunto de objetivos de construção para ajudar a classificar ou marcar cada estratégia. Exemplos de objetivos de construção incluem várias medidas de desempenho, como o lucro líquido, redução, porcentagem de vencedores, fator de lucro e assim por diante. Estes podem ser declarados como requisitos mínimos, como um fator de lucro de pelo menos 2.0 ou como objetivos para maximizar, como maximizar o lucro líquido.
Base teórica da geração automática de código.
Conforme descrito acima, construir um sistema comercial usando a geração automática de código é essencialmente um problema de otimização. A combinação de elementos estratégicos que maximizam os objetivos de construção é tomada como a estratégia final. Alguns comerciantes argumentariam que os sistemas comerciais deveriam ser construídos com base em uma hipótese de comportamento ou ação do mercado. Se você tem uma boa hipótese de como os mercados funcionam, uma estratégia pode ser construída em torno dessa hipótese e testada. Se isso funciona, ele apóia a hipótese e justifica a negociação da estratégia.
Gerador de código de sistema padrão para TradeStation.
Esta seção descreve uma abordagem ad hoc para a geração automática de código em que um sistema comercial para a TradeStation gera automaticamente outros sistemas de negociação baseados em padrões para a TradeStation. O sistema AutoSystemGen procura um conjunto de regras de negociação, juntamente com os valores de parâmetros associados, que atendem a um conjunto específico de requisitos de desempenho.
Embora quase qualquer tipo de indicador ou lógica de negociação possa ser incluído no gerador do sistema comercial descrito aqui, para manter as coisas bastante simples, as regras dos sistemas gerados serão restritas aos padrões de preços. Cada regra de entrada de um sistema de negociação gerado terá a seguinte forma:
A chave para este processo é encontrar sistemas de negociação de candidatos. Um sistema pode consistir de uma e dez regras do formulário mostrado acima. As negociações são introduzidas no mercado se todas as regras forem verdadeiras, e os negócios são encerrados um certo número de barras mais tarde. Se isso fosse codificado como um sistema TradeStation tradicional, com um máximo de 10 regras, haveria 52 entradas. Isso faria para uma estratégia pesada.
O código para o sistema AutoSystemGen e suas funções relacionadas está disponível no Breakout Futures (breakoutfutures /) na página Free Downloads.
Por exemplo, considere o mercado de futuros de títulos de tesouraria de 30 anos (símbolo @ US. P na TradeStation 8). O AutoSystemGen foi otimizado nos últimos 20 anos de preços de T-bond com a entrada OptStep aumentada de 1 para 10000. Isso significa que o sistema avaliou 10.000 sistemas de negociação diferentes. A otimização foi executada duas vezes, uma vez por trades longos e uma vez para negociações curtas. Foram utilizados os seguintes requisitos de desempenho: lucro líquido de pelo menos US $ 30.000, o pior caso de desconto no máximo de US $ 7500, pelo menos 200 negócios, porcentagem rentável de pelo menos 50% e fator de lucro de pelo menos 1,2. Em um computador dual core com o Vista, levou aproximadamente 10 minutos para executar cada otimização (10.000 sistemas por otimização).
Sistema 2332, @ US. P, 17/9/2007 12:23:00, Long Trades.
Lucro líquido = 53562.50, DD máximo = -7381.25, Num Trades = 250, Percentual de vitórias = 56.80, Prof factor = 1.631.
Var: EntNext (falso);
EntNext = Open [2] & gt; = Low [16] e.
Fechar [14] & lt; = Low [6] and.
Se EntNext então.
Compre o próximo bar no mercado;
Se BarsSinceEntry = 2 então.
Venda o próximo bar no mercado;
Sistema 5771, @ US. P, 17/9/2007 12:27:00, Long Trades.
Lucro líquido = 42145,00, DD máximo = -5733.75, Num Trades = 207, Percentagem de vitórias = 57,00, factor Prof = 1,631.
Var: EntNext (falso);
EntNext = High [7] & gt; = Low [19] e.
Fechar [20] & gt; = Fechar [5] e.
High [18] & gt; = Low [2] and.
Se EntNext então.
Compre o próximo bar no mercado;
Se BarsSinceEntry = 2 então.
Venda o próximo bar no mercado;
Sistema 7622, @ US. P, 17/9/2007 12:29:00, Long Trades.
Lucro líquido = 59348.75, Max DD = -7222.50, Num Trades = 208, Percentual de vitórias = 60.58, Fator Prof. = 1.924.
Var: EntNext (falso);
EntNext = Low [2] & lt; = High [9] and.
Abra [11] & gt; = Abrir [18] e.
Se EntNext então.
Compre o próximo bar no mercado;
Se BarsSinceEntry = 3 então.
Venda o próximo bar no mercado;
Sistema 7718, @ US. P, 9/17/2007 12:29:00, Long Trades.
Lucro líquido = 35526.25, DD máximo = -6936.25, Num Trades = 292, Percentual de vitórias = 56.85, factor Prof = 1.418.
Var: EntNext (falso);
EntNext = Fechar [3] & gt; = High [19] and.
High [6] & lt; = Open [10] e.
Se EntNext então.
Compre o próximo bar no mercado;
Se BarsSinceEntry = 1 então.
Venda o próximo bar no mercado;
Sistema 6160, @ US. P, 9/17/2007 12:42:00, Short Trades.
Lucro líquido = 31277,50, DD máximo = -6846,25, Num Trades = 369, Percentual de vitórias = 51,76, Fator Prof. = 1,297.
Var: EntNext (falso);
EntNext = High [9] & gt; = Low [6] and.
Fechar [15] & gt; = Alto [8] e.
High [7] & lt; = Low [20] e.
Se EntNext então.
Venda curta barra seguinte no mercado;
Se BarsSinceEntry = 1 então.
Compre para cobrir a próxima barra no mercado;
A listagem para cada sistema inclui o número do sistema (correspondente à entrada OptStep), o símbolo do mercado, a data atual e se o sistema é apenas longo ou curto. A próxima linha contém algumas estatísticas de desempenho resumidas para ajudar na avaliação de cada sistema. Finalmente, o código do sistema é mostrado. Para avaliar os sistemas na TradeStation, o código entre as duas linhas de comentários () pode ser copiado e colado em uma estratégia no TradeStation e, em seguida, executado na janela do gráfico.
O último sistema no arquivo de saída é para um sistema de apenas curto-som (# 6160). Quando guardado na TradeStation como uma estratégia e aplicado ao mesmo gráfico de T-bond, a seguinte curva de equidade foi produzida:
Figura 3. Sistema de apenas curto prazo para títulos T, nos últimos 20 anos, com US $ 15 por negócio deduzido para custos de negociação, gerado pelo sistema AutoSystemGen.
Programação genética para geração automática de código.
A abordagem ad hoc descrita na seção anterior é simples, mas tem duas limitações: (1) as estratégias geradas aleatoriamente não convergem para os objetivos de construção e (2) o modelo do sistema de padrões é difícil de generalizar para estratégias mais complexas . Isso sugere que uma abordagem mais sofisticada seja necessária.
Um método para a geração automática de código que aborda essas duas preocupações é chamado de programação genética (GP), 1 que pertence a uma classe de técnicas chamadas algoritmos evolutivos. Algoritmos evolutivos e GP em particular foram desenvolvidos por pesquisadores em inteligência artificial baseados nos conceitos biológicos de reprodução e evolução. Um algoritmo GP "evolui" uma população de estratégias de negociação de uma população inicial de membros gerados aleatoriamente. Os membros da população competem uns contra os outros com base na sua "aptidão". Os membros do ajuste são selecionados como "pais" para produzir um novo membro da população, que substitui um membro mais fraco (menos adequado).
Reduz a necessidade de conhecimento de indicadores técnicos e design de estratégias. O algoritmo GP seleciona as regras de negociação individuais, indicadores e outros elementos da estratégia para você.
O processo de construção da regra permite uma complexidade considerável, incluindo regras comerciais não-lineares.
O processo GP elimina os elementos mais laboriosos e tediosos do processo de desenvolvimento da estratégia tradicional; ou seja, surgir uma nova idéia comercial, programá-la, verificar o código, testar a estratégia, modificar o código e repetir. Isso é feito automaticamente no GP.
O processo de GP é imparcial. Considerando que a maioria dos comerciantes desenvolveu vieses para ou contra indicadores específicos e / ou lógica de negociação, o GP é guiado apenas pelo que funciona.
Ao incorporar uma semântica de regras de negociação adequada, o processo de GP pode ser projetado para produzir regras de negociação logicamente corretas e código sem erros.
O processo GP geralmente produz resultados que não são únicos, mas não óbvios. Em muitos casos, essas gemas escondidas seriam quase impossíveis de encontrar de outra maneira.
Ao automatizar o processo de compilação, o tempo necessário para desenvolver uma estratégia viável pode ser reduzido de semanas ou meses a uma questão de minutos em alguns casos, dependendo do comprimento do arquivo de dados de preço de entrada e outras configurações de compilação.
A programação genética tem sido usada com sucesso em diversos campos, incluindo processamento de sinal e imagem, controle de processo, bioinformática, modelagem de dados, geração de código de programação, jogos de computador e modelagem econômica; veja, por exemplo, Poli et al. 2 Uma visão geral do uso de GP em finanças é fornecida por Chen. 3 Colin 4 foi um dos primeiros a explicar como usar o GP para otimizar combinações de regras para uma estratégia de negociação.
J. Koza. Programação genética. O MIT Press, Cambridge, MA. 1992.
R. Poli, W. B. Langdon e N. F. McPhee. Um guia de campo para programação genética. Publicado via lulu e disponível gratuitamente em gp-field-guide. uk, 2008. (Com contribuições de J. R. Koza).
Shu-Heng Chen (Editor). Algoritmos genéticos e programação genética em finanças computacionais. Kluwer Academic Publishers, Norwell, MA. 2002.
A. Colin. Algoritmos genéticos para modelagem financeira, Trading on the Edge. 1994, páginas 165-168. John Wiley & amp; Sons, Inc. Nova York.
Risto Karjalainen. Evolução das regras de negociação técnica para futuros S & amp; P 500, Regras de Negociação Avançadas, 2002, Páginas 345-366. Elsevier Science, Oxford, Reino Unido.
Jean-Yves Potvin, Patrick Soriano, Maxime Vallee. Gerando regras de negociação nos mercados de ações com programação genética. Computadores e Pesquisa de operações, Volume 31, edição 7, junho de 2004, páginas 1033-1047.
Massimiliano Kaucic. Investimento utilizando métodos evolutivos de aprendizagem e regras técnicas. European Journal of Operational Research, volume 207, edição 3, 16 de dezembro de 2018, páginas 1717-1727.
Algoritmo de construção usando programação genética.
Expandindo o algoritmo de compilação apresentado anteriormente (ver Fig. 1), um algoritmo mais detalhado é ilustrado abaixo na Fig. 4 com base na programação genética. As caixas sombreadas de cinza representam os dados de entrada, que incluem os dados de preços para o (s) mercado (s) de interesse, indicadores e tipos de pedidos no chamado conjunto de compilação e as opções e critérios de desempenho (objetivos de construção) selecionados pelo do utilizador.
Figura 4. Algoritmo de compilação para geração automática de código com programação genética.
O processo GP pode ser usado para desenvolver simultaneamente dois elementos de estratégia essenciais: condições de entrada e pedidos de entrada e saída. As condições de entrada são tipicamente representadas como estruturas de árvores, como mostrado abaixo na Fig. 5.
A chave para a evolução das ordens de entrada e saída usando programação genética é representar os diferentes tipos de pedidos de forma generalizada. Por exemplo, parar e limitar os preços de entrada podem ser representados da seguinte forma:
Embora a programação genética seja capaz de gerar estratégias de negociação com uma variedade considerável, é necessário começar com uma estrutura generalizada para as estratégias a serem seguidas. A estrutura de estratégia mostrada abaixo em pseudo-código fornece uma estrutura para estratégias de construção com base em condições de entrada e tipos de pedidos como os discutidos acima:
Entradas: N1, N2, N3, ...
Se a posição for plana e LongEntryCondition for verdade, então.
Ordem de entrada longa ...
Inicialize as ordens de saída longas, conforme necessário ...
Se a posição for plana e ShortEntryCondition for verdade, então.
Ordem de entrada curta ...
Inicialize ordens de saída curtas, conforme necessário ...
Se a posição é longa então.
Ordem de saída longa 1 ...
Ordem de saída longa 2 ...
Se a posição for curta, então.
Ordem de saída curta 1 ...
Ordem de saída curta 2 ...
[Saída opcional de fim de dia]
As estratégias começam com a lista de insumos. É fornecida uma entrada para qualquer parâmetro do indicador, comprimento do look-back do padrão de preços e quaisquer parâmetros exigidos pelas ordens de entrada e saída, como o comprimento de look-back para o ATR.
Para ilustrar o uso de programação genética para a geração automática de código na construção de estratégias, o programa Adaptrade Builder foi administrado em barras diárias de um mercado de futuros de índices de ações para uma pequena população e um número limitado de gerações. As métricas de desempenho escolhidas para orientar o processo foram o lucro líquido, o número de trades, o coeficiente de correlação, a significância estatística e a relação retorno / redução. Alvos específicos foram definidos para o número de negociações e a relação retorno / retirada. As outras métricas selecionadas foram maximizadas. A função de fitness foi uma média ponderada de termos para cada métrica.
Figura 6. Percentagem de membros da população com lucro líquido fora da amostra superior a US $ 1.000.
Da mesma forma, o lucro líquido médio da OOS aumentou após cinco e dez gerações, como mostrado na Figura 7. Observe que esses resultados são para o lucro líquido da OOS. Por definição, os dados fora da amostra não são usados na compilação, então os resultados da OOS são imparciais; eles não se beneficiam de retrospectiva. Isso implica que o processo GP não só tende a melhorar os resultados na amostra em sucessivas gerações, o que é um efeito direto do algoritmo GP, mas os resultados da OOS também tendem a melhorar à medida que as estratégias são desenvolvidas. Isso indica uma compilação de alta qualidade.
Código de Estratégia EasyLanguage para a TradeStation.
Membro da população: 46.
Criado por: Adaptrade Builder versão 1.1.0.0.
Criado: 19/10/2018 2:19:52 PM.
Código do TradeStation para TS 6 ou posterior.
Arquivo de preço: C: \ TestData. txt.
Var: EntCondL (falso),
EntCondL = (Maior (Volume, NL1) & gt; = Menor (Volume, NL2)) ou (Volume & lt; Média (Volume, NL3));
Se MarketPosition = 0 e EntCondL, em seguida, comece.
Compre a próxima barra na XAverage (L, NBarEnL1) + EntFrL * ATREnL parar;
Se MarketPosition = 0 e EntCondS, em seguida, comece.
Vender curto barra seguinte no Mais alto (H, NBarEnS1) - EntFrS * AbsValue (Menor (L, NBarEnS2) - Menor (H, NBarEnS3)) parar;
SStop = Power (10, 10);
Se MarketPosition & gt; 0 então comece.
Se BarsSinceEntry & gt; = NBarExL então.
Venda o próximo bar no mercado;
Venda o próximo bar no EntryPrice + TargFrL * ATRTargL limite;
Se MarketPosition & lt; 0 então comece.
Se EntryPrice - C & gt; ATRFrTrailS * ATRTrailS então.
Se STrailOn então começar.
NewSStop = EntryPrice - TrailPctS * (EntryPrice - C) / 100 .;
SStop = MinList (SStop, NewSStop);
Se BarsSinceEntry & gt; = NBarExS então.
Compre para cobrir a próxima barra no mercado;
Se STrailOn então.
Compre para cobrir a próxima barra na parada SStop;
Construir sistemas de negociação através da geração automática de código é um tipo de otimização. A maioria dos comerciantes sistemáticos provavelmente está familiarizado com a otimização de parâmetros, em que as entradas para uma estratégia são otimizadas. Ao contrário da otimização de parâmetros, a geração automática de código otimiza a lógica de negociação da estratégia. No entanto, o risco de sobre-otimização, ou "excesso de ajuste", também é uma preocupação para a geração automática de código, assim como é para a otimização de parâmetros.
Para obter informações sobre software para estratégias de negociação de construção usando programação genética, clique aqui.
Se você quiser ser informado de novos desenvolvimentos, novidades e ofertas especiais do Adaptrade Software, por favor, junte-se à nossa lista de e-mail. Obrigado.
Copyright © 2004-2018 Adaptrade Software. Todos os direitos reservados.
Construtor de sistema de negociação automática
Nós mantemos esta página para demonstrar nosso compromisso firme com os direitos e privacidade de nossos usuários. Esta página explica como nosso site coleta informações de nossos membros.
Boletim informativo e lista de discussão gratuitos: respeitamos a privacidade de nossos usuários e, como tal, nunca compartilharemos nosso banco de dados de endereços de e-mail e nomes com terceiros.
Após a confirmação de que você gostaria de participar da nossa newsletter, enviaremos de vez em quando informações gratuitas sobre os produtos que comercializamos, conselhos gerais relacionados ao marketing on-line e material promocional para outros produtos. Seu e-mail nunca será passado para terceiros. Nós também nunca o enviaremos spam. Você pode se desinscrever da lista de discussão a qualquer momento.
Informações pessoais que coletamos e como é usado: quando você compra o acesso ao EA Builder, o pagamento é processado pela Clickbank (Keynetics Inc), que irá coletar seu nome, endereço e informações do cartão de crédito (se houver) para verificar seu pedido. Eles não podem usar as informações para qualquer outro propósito. Ao solicitar, também cobramos seu nome e endereço de e-mail. Nós usamos essas informações para segui-lo conforme a seção de boletim acima. Não compartilharemos ligações com nenhuma outra parte.
Disclaimer de Risco.
O CFTC exigiu o aviso: a troca de câmbio na margem comporta um alto nível de risco e pode não ser adequada para todos os investidores. O alto grau de alavancagem pode funcionar contra você, bem como para você. Antes de decidir investir em divisas, você deve considerar cuidadosamente seus objetivos de investimento, nível de experiência e apetite de risco. Existe a possibilidade de que você possa sustentar uma perda de algum ou todo seu investimento inicial e, portanto, você não deve investir dinheiro que não pode perder.
Autotrading Made Easy.
Crie Indicadores e Estratégias sem Programação.
MetaTrader 4 & amp; 5 Opções Binárias Suportadas suportadas do EasyLanguage suportadas NOVO! Crie Indicadores Ilimitados para Criar Estratégias Gratuitas com Tutorias de Vídeo de Upgrade One-Time Free Access.
Descubra as possibilidades.
Setas e alertas personalizados.
Transforme suas condições comerciais manuais em setas e alertas! Crie indicadores para o MetaTrader 4 & amp; 5 ou ferramentas de análise técnica para a TradeStation.
Sistema de negociação automatizado.
Agora, você pode converter facilmente qualquer sistema de negociação manual em um Consultor Especializado para o MetaTrader 4 & amp; 5 ou em uma estratégia para a TradeStation.
Negocie apenas sobre qualquer coisa.
Dependendo do tamanho da sua conta e suas metas financeiras, você pode estar interessado em desenvolver indicadores e estratégias para Forex, ações, commodities, ETFs, índices. tudo sem limitações!
O que é Inside?
É Quick & amp; Fácil!
A melhor coisa sobre o EA Builder é que o trabalho é praticamente feito em poucos cliques. Transforme sua idéia comercial em um sistema automatizado em poucos minutos, sem contratar um programador e sem saber nada sobre programação. Mesmo os programadores profissionais apreciam os benefícios de criar indicadores e estratégias com alguns pequenos cliques.
Trade Forex, Stocks e Futuros.
Você pode criar estratégias para negociar qualquer instrumento financeiro disponível em qualquer uma das três plataformas de negociação mais populares: MetaTrader 4, MetaTrader 5 e TradeStation.
Intuitivo & amp; Direto.
Comece a criar suas primeiras estratégias ou indicadores em poucos minutos! Nenhum manual para estudar. Nada para instalar, porque é um aplicativo baseado na web. A criação é bastante direta, e cada recurso possui uma popup-tip que o guia com uma breve explicação, então você nunca se perde!
Grandes recursos.
Só quer trocar em horários específicos do dia? Deseja limitar o número de trades ou a duração do comércio? Tudo o que é preciso é um único clique!
Indicadores e funções personalizados.
Além de todos os indicadores padrão e incríveis funções incorporadas, como linhas de tendência, suporte, resistência e hora do dia, você pode adicionar indicadores personalizados ou funções personalizadas, portanto, não há realmente nenhuma limitação sobre o que você pode fazer com o EA Builder!
Alertas sonoras, alertas de e-mail, janela de impressão para saída e assim por diante, são formas convenientes de receber notificações de que trocas foram executadas ou novas setas indicadoras apareceram.
Gerenciamento de dinheiro.
As técnicas de gerenciamento de dinheiro configuradas com alguns cliques garantirão que sua conta nunca esteja exposta a perdas substanciais.
Tamanho Fixo de Lotes, Ações ou Contratos Ponderação de Posicionamento (Compounding) Risco% por Martingale Comercial ou Função Customizada Anti-Martingale.
Saída agradável.
O código gerado é legível por humanos, bem comentado e bem formatado. Não usa objetos, classes ou funções avançadas, e está contido em um único arquivo. Você não precisa entender o código, basta baixá-lo. No entanto, para os não profissionais interessados em mergulhar na fonte e aprender algo sobre isso, esta é uma ótima ferramenta.
Opções binárias.
Além do mercado padrão e das ordens pendentes, você pode trocar opções binárias diretamente no MetaTrader 4. Um breve tutorial de vídeo irá orientá-lo sobre como usar esse novo recurso.
Tutoriais em vídeo.
Existem 15 tutoriais em vídeo que variam de 2 a 7 minutos de duração, projetados para ajudá-lo a descobrir todo o potencial do EA Builder. A criação é demonstrada tanto no MetaTrader 4 quanto no TradeStation. Você obterá orientação passo a passo sobre como projetar, testar e otimizar uma estratégia vencedora. Confira o primeiro vídeo abaixo para ver o quão fácil é para você criar indicadores que irão notificá-lo sobre as últimas oportunidades de negociação.
Mais Tutoriais em Vídeo.
Todos os tutoriais em vídeo são feitos para MetaTrader 4 e TradeStation.
Como criar estratégias Estratégia diária Breakout Estratégia diária com otimização da estratégia de pedidos pendentes.
Demonstração de Gerenciamento de Dinheiro Trendline Breakout Automated Entry Crie EA From Custom Indicator.
Nossos exemplos oferecem uma ótima inspiração quanto ao que você pode criar com o EA Builder. Além dos tutoriais em vídeo, também criamos três indicadores legais: Trend Colored, CCI Colored e Trendline Break Alert que podem ser usados como eles são para melhorar sua negociação ou modificados da maneira que quiser.
Comece em minutos!
Criar Indicadores MetaTrader 4 & amp; 5 Funcionalidade suportada de TradeStation EasyLanguage suportada Funcionalmente Funcionada para Indicadores, NÃO é uma Demonstração ou Demonstração de Acesso Livre de Inscrição com um clique.
Criar Indicadores e Estratégias (Expert Advisors) MetaTrader 4 & amp; 5 Funcionalidade suportada do TradeStation EasyLanguage suportada para estratégias Pagamento único de $ 97 para o acesso de vida Adicionar ao carrinho.
Perguntas freqüentes & amp; Respostas.
É adequado para iniciantes?
Sim. Embora a programação de EA tenha sido tradicionalmente um trabalho para profissionais de TI, agora, com a chegada do EA Builder, qualquer pessoa pode criar indicadores e estratégias e ndash; Não é necessária nenhuma experiência de programação ou habilidades especiais.
Posso me registrar gratuitamente e atualizar mais tarde?
Sim. Quando você decide que deseja criar estratégias automatizadas, bem como indicadores, basta clicar no & quot; upgrade & quot; botão, preencha os detalhes do pagamento e obtenha acesso ilimitado para toda a vida.
Existem outros pagamentos para atualizações adicionais?
Não. Para um pagamento único, você terá acesso ao produto totalmente funcional.
Isso funciona nas três plataformas para um único pagamento?
Sim. Com a versão gratuita, você pode criar indicadores para MetaTrader 4 e amp; 5 e ferramentas de análise técnica para a TradeStation. Na versão ilimitada (paga), você também pode criar estratégias automatizadas para as três plataformas.
Isso funcionará no meu computador?
É um aplicativo baseado na web, portanto, você não precisa baixar ou instalar nada. É compatível com todos os principais navegadores da web, então, sim, ele funcionará no seu computador.
Lunarpages Web Hosting.
Fale Conosco 877-586-2772 877-586-7207 - Sales Intl. 714-521-8150 Suporte - Opção 1 Chat ao vivo com vendas Siga-nos Facebook Twitter Google Plus.
Entre em contato com o suporte 877-586-2772 - Suporte ao bate-papo ao vivo com vendas Siga-nos Facebook Twitter Google Plus / ul>
Nós lamentamos!
Esta conta não está disponível no momento.
Isso pode ser por muitas razões, incluindo um problema de excesso de largura de banda ou um problema de uso de recursos. Verifique o endereço de e-mail no registro para esta conta para obter uma notificação da Lunarpages.
Se você é o proprietário desta conta, entre em contato conosco por e-mail em support @ lunarpages ou via Lunarpages Helpdesk em support. lunarpages.
Cloud Hosting.
O Lunarpages agora oferece planos Cloud Hosting que permitem aos clientes controlar seus recursos e pagar com base no que eles usam. Com a rápida implantação de serviços de computação, hardware de alto desempenho e nossa equipe especializada de profissionais de TI, o Cloud Hosting da Lunarpages pode dar ao seu negócio a vantagem de competir no mercado.
Programa de Afiliados.
A Lunarpages oferece uma oportunidade emocionante para nossos clientes existentes que se inscrevem no nosso programa exclusivo de afiliados. O Programa de afiliados Lunarpages funciona como um serviço de referência, onde recompensamos você apenas por divulgar a boa palavra sobre Lunarpages Internet Solutions, referindo seus amigos, familiares, clientes, colegas de trabalho, de fato absolutamente qualquer um para usar nossos serviços. Nos últimos 10 anos, pagamos cerca de 5 milhões de dólares em comissões! Nosso programa de afiliados é gratuito e, quando você compra hospedagem de Lunarpages, você está automaticamente matriculado.
LINKS RÁPIDOS.
Lunarpages | 1908 N. Enterprise St. | Orange, CA 92865 | 877-586-2772 | 714-521-8150.
& copy; 2000 - 2017 Add2Net, Inc. "Lunarpages", "Add2Net", "Símbolo Lunar" e "Intelligent Web Hosting" são marcas comerciais ou marcas registradas da Add2Net, Inc.
Todos os direitos reservados. É proibido o uso não autorizado.
Se você ainda procura uma vantagem nos mercados, os sistemas de negociação automatizada são a melhor maneira de obtê-lo. Saber mais.
Copyright (c) 2018 Adaptrade Software. Todos os direitos reservados.
OS RESULTADOS DE DESEMPENHO HIPOTÉTICOS OU SIMULADOS TÊM CERTAS LIMITAÇÕES INERENTES. DESEJO UM REGISTRO DE DESEMPENHO REAL, OS RESULTADOS SIMULADOS NÃO REPRESENTAM A NEGOCIAÇÃO REAL. TAMBÉM, DESDE QUE OS NEGÓCIOS NÃO SEJAM REALMENTE EXECUTOS, OS RESULTADOS PODEM TENER SOB OU COMENTÁRIOS COMPLEMENTARES PARA O IMPACTO, SE HAVER, DE CERTOS FATORES DE MERCADO, TAL COMO FALTA DE LIQUIDEZ. PROGRAMAS DE NEGOCIAÇÃO SIMULADOS EM GERAL SÃO TAMBÉM SUJEITOS AO FATO QUE ESTÃO DESIGNADOS COM O BENEFÍCIO DE HINDSIGHT. NENHUMA REPRESENTAÇÃO ESTÁ FAZENDO QUE QUALQUER CONTA VÁ OU SEJA PROBABILITÁVEL PARA ALCANÇAR LUCROS OU PERDAS SIMILARES ÀOS MOSTRADOS.
EasyLanguage e TradeStation são marcas registradas da TradeStation Technologies, Inc.
Uma das maiores tendências no comércio varejista na última década foi o aumento da popularidade do comércio automatizado. Neste tipo de negociação, também conhecida como execução automatizada de ordens, os sinais de compra e venda gerados por um sistema de negociação são executados automaticamente por uma plataforma conectada à conta corretora do comerciante. Isso permite o comércio livre de mãos, o que permite uma execução mais rápida, menos erros e a capacidade de trocar prazos mais curtos com estratégias de maior freqüência.
O algoritmo básico para a construção de sistemas de negociação usando a geração automática de código é mostrado abaixo na Fig. 1. Começa com um método para combinar diferentes elementos da estratégia de negociação. Esses elementos podem incluir vários indicadores técnicos, como médias móveis, estocásticos e assim por diante; diferentes tipos de pedidos de entrada e saída; e condições lógicas para entrar e sair do mercado.
Figura 1. Algoritmo básico para construção de estratégia automatizada.
Depois que os diferentes elementos são combinados em uma estratégia coerente, ele pode ser avaliado no mercado ou mercados de interesse. Isso requer dados de mercado - preços, volume, interesse aberto, etc. - para cada mercado. De um modo geral, você também teria um conjunto de objetivos de construção para ajudar a classificar ou marcar cada estratégia. Exemplos de objetivos de construção incluem várias medidas de desempenho, como o lucro líquido, redução, porcentagem de vencedores, fator de lucro e assim por diante. Estes podem ser declarados como requisitos mínimos, como um fator de lucro de pelo menos 2.0 ou como objetivos para maximizar, como maximizar o lucro líquido.
Base teórica da geração automática de código.
Conforme descrito acima, construir um sistema comercial usando a geração automática de código é essencialmente um problema de otimização. A combinação de elementos estratégicos que maximizam os objetivos de construção é tomada como a estratégia final. Alguns comerciantes argumentariam que os sistemas comerciais deveriam ser construídos com base em uma hipótese de comportamento ou ação do mercado. Se você tem uma boa hipótese de como os mercados funcionam, uma estratégia pode ser construída em torno dessa hipótese e testada. Se isso funciona, ele apóia a hipótese e justifica a negociação da estratégia.
Gerador de código de sistema padrão para TradeStation.
Esta seção descreve uma abordagem ad hoc para a geração automática de código em que um sistema comercial para a TradeStation gera automaticamente outros sistemas de negociação baseados em padrões para a TradeStation. O sistema AutoSystemGen procura um conjunto de regras de negociação, juntamente com os valores de parâmetros associados, que atendem a um conjunto específico de requisitos de desempenho.
Embora quase qualquer tipo de indicador ou lógica de negociação possa ser incluído no gerador do sistema comercial descrito aqui, para manter as coisas bastante simples, as regras dos sistemas gerados serão restritas aos padrões de preços. Cada regra de entrada de um sistema de negociação gerado terá a seguinte forma:
A chave para este processo é encontrar sistemas de negociação de candidatos. Um sistema pode consistir de uma e dez regras do formulário mostrado acima. As negociações são introduzidas no mercado se todas as regras forem verdadeiras, e os negócios são encerrados um certo número de barras mais tarde. Se isso fosse codificado como um sistema TradeStation tradicional, com um máximo de 10 regras, haveria 52 entradas. Isso faria para uma estratégia pesada.
O código para o sistema AutoSystemGen e suas funções relacionadas está disponível no Breakout Futures (breakoutfutures /) na página Free Downloads.
Por exemplo, considere o mercado de futuros de títulos de tesouraria de 30 anos (símbolo @ US. P na TradeStation 8). O AutoSystemGen foi otimizado nos últimos 20 anos de preços de T-bond com a entrada OptStep aumentada de 1 para 10000. Isso significa que o sistema avaliou 10.000 sistemas de negociação diferentes. A otimização foi executada duas vezes, uma vez por trades longos e uma vez para negociações curtas. Foram utilizados os seguintes requisitos de desempenho: lucro líquido de pelo menos US $ 30.000, o pior caso de desconto no máximo de US $ 7500, pelo menos 200 negócios, porcentagem rentável de pelo menos 50% e fator de lucro de pelo menos 1,2. Em um computador dual core com o Vista, levou aproximadamente 10 minutos para executar cada otimização (10.000 sistemas por otimização).
Sistema 2332, @ US. P, 17/9/2007 12:23:00, Long Trades.
Lucro líquido = 53562.50, DD máximo = -7381.25, Num Trades = 250, Percentual de vitórias = 56.80, Prof factor = 1.631.
Var: EntNext (falso);
EntNext = Open [2] & gt; = Low [16] e.
Fechar [14] & lt; = Low [6] and.
Se EntNext então.
Compre o próximo bar no mercado;
Se BarsSinceEntry = 2 então.
Venda o próximo bar no mercado;
Sistema 5771, @ US. P, 17/9/2007 12:27:00, Long Trades.
Lucro líquido = 42145,00, DD máximo = -5733.75, Num Trades = 207, Percentagem de vitórias = 57,00, factor Prof = 1,631.
Var: EntNext (falso);
EntNext = High [7] & gt; = Low [19] e.
Fechar [20] & gt; = Fechar [5] e.
High [18] & gt; = Low [2] and.
Se EntNext então.
Compre o próximo bar no mercado;
Se BarsSinceEntry = 2 então.
Venda o próximo bar no mercado;
Sistema 7622, @ US. P, 17/9/2007 12:29:00, Long Trades.
Lucro líquido = 59348.75, Max DD = -7222.50, Num Trades = 208, Percentual de vitórias = 60.58, Fator Prof. = 1.924.
Var: EntNext (falso);
EntNext = Low [2] & lt; = High [9] and.
Abra [11] & gt; = Abrir [18] e.
Se EntNext então.
Compre o próximo bar no mercado;
Se BarsSinceEntry = 3 então.
Venda o próximo bar no mercado;
Sistema 7718, @ US. P, 9/17/2007 12:29:00, Long Trades.
Lucro líquido = 35526.25, DD máximo = -6936.25, Num Trades = 292, Percentual de vitórias = 56.85, factor Prof = 1.418.
Var: EntNext (falso);
EntNext = Fechar [3] & gt; = High [19] and.
High [6] & lt; = Open [10] e.
Se EntNext então.
Compre o próximo bar no mercado;
Se BarsSinceEntry = 1 então.
Venda o próximo bar no mercado;
Sistema 6160, @ US. P, 9/17/2007 12:42:00, Short Trades.
Lucro líquido = 31277,50, DD máximo = -6846,25, Num Trades = 369, Percentual de vitórias = 51,76, Fator Prof. = 1,297.
Var: EntNext (falso);
EntNext = High [9] & gt; = Low [6] and.
Fechar [15] & gt; = Alto [8] e.
High [7] & lt; = Low [20] e.
Se EntNext então.
Venda curta barra seguinte no mercado;
Se BarsSinceEntry = 1 então.
Compre para cobrir a próxima barra no mercado;
A listagem para cada sistema inclui o número do sistema (correspondente à entrada OptStep), o símbolo do mercado, a data atual e se o sistema é apenas longo ou curto. A próxima linha contém algumas estatísticas de desempenho resumidas para ajudar na avaliação de cada sistema. Finalmente, o código do sistema é mostrado. Para avaliar os sistemas na TradeStation, o código entre as duas linhas de comentários () pode ser copiado e colado em uma estratégia no TradeStation e, em seguida, executado na janela do gráfico.
O último sistema no arquivo de saída é para um sistema de apenas curto-som (# 6160). Quando guardado na TradeStation como uma estratégia e aplicado ao mesmo gráfico de T-bond, a seguinte curva de equidade foi produzida:
Figura 3. Sistema de apenas curto prazo para títulos T, nos últimos 20 anos, com US $ 15 por negócio deduzido para custos de negociação, gerado pelo sistema AutoSystemGen.
Programação genética para geração automática de código.
A abordagem ad hoc descrita na seção anterior é simples, mas tem duas limitações: (1) as estratégias geradas aleatoriamente não convergem para os objetivos de construção e (2) o modelo do sistema de padrões é difícil de generalizar para estratégias mais complexas . Isso sugere que uma abordagem mais sofisticada seja necessária.
Um método para a geração automática de código que aborda essas duas preocupações é chamado de programação genética (GP), 1 que pertence a uma classe de técnicas chamadas algoritmos evolutivos. Algoritmos evolutivos e GP em particular foram desenvolvidos por pesquisadores em inteligência artificial baseados nos conceitos biológicos de reprodução e evolução. Um algoritmo GP "evolui" uma população de estratégias de negociação de uma população inicial de membros gerados aleatoriamente. Os membros da população competem uns contra os outros com base na sua "aptidão". Os membros do ajuste são selecionados como "pais" para produzir um novo membro da população, que substitui um membro mais fraco (menos adequado).
Reduz a necessidade de conhecimento de indicadores técnicos e design de estratégias. O algoritmo GP seleciona as regras de negociação individuais, indicadores e outros elementos da estratégia para você.
O processo de construção da regra permite uma complexidade considerável, incluindo regras comerciais não-lineares.
O processo GP elimina os elementos mais laboriosos e tediosos do processo de desenvolvimento da estratégia tradicional; ou seja, surgir uma nova idéia comercial, programá-la, verificar o código, testar a estratégia, modificar o código e repetir. Isso é feito automaticamente no GP.
O processo de GP é imparcial. Considerando que a maioria dos comerciantes desenvolveu vieses para ou contra indicadores específicos e / ou lógica de negociação, o GP é guiado apenas pelo que funciona.
Ao incorporar uma semântica de regras de negociação adequada, o processo de GP pode ser projetado para produzir regras de negociação logicamente corretas e código sem erros.
O processo GP geralmente produz resultados que não são únicos, mas não óbvios. Em muitos casos, essas gemas escondidas seriam quase impossíveis de encontrar de outra maneira.
Ao automatizar o processo de compilação, o tempo necessário para desenvolver uma estratégia viável pode ser reduzido de semanas ou meses a uma questão de minutos em alguns casos, dependendo do comprimento do arquivo de dados de preço de entrada e outras configurações de compilação.
A programação genética tem sido usada com sucesso em diversos campos, incluindo processamento de sinal e imagem, controle de processo, bioinformática, modelagem de dados, geração de código de programação, jogos de computador e modelagem econômica; veja, por exemplo, Poli et al. 2 Uma visão geral do uso de GP em finanças é fornecida por Chen. 3 Colin 4 foi um dos primeiros a explicar como usar o GP para otimizar combinações de regras para uma estratégia de negociação.
J. Koza. Programação genética. O MIT Press, Cambridge, MA. 1992.
R. Poli, W. B. Langdon e N. F. McPhee. Um guia de campo para programação genética. Publicado via lulu e disponível gratuitamente em gp-field-guide. uk, 2008. (Com contribuições de J. R. Koza).
Shu-Heng Chen (Editor). Algoritmos genéticos e programação genética em finanças computacionais. Kluwer Academic Publishers, Norwell, MA. 2002.
A. Colin. Algoritmos genéticos para modelagem financeira, Trading on the Edge. 1994, páginas 165-168. John Wiley & amp; Sons, Inc. Nova York.
Risto Karjalainen. Evolução das regras de negociação técnica para futuros S & amp; P 500, Regras de Negociação Avançadas, 2002, Páginas 345-366. Elsevier Science, Oxford, Reino Unido.
Jean-Yves Potvin, Patrick Soriano, Maxime Vallee. Gerando regras de negociação nos mercados de ações com programação genética. Computadores e Pesquisa de operações, Volume 31, edição 7, junho de 2004, páginas 1033-1047.
Massimiliano Kaucic. Investimento utilizando métodos evolutivos de aprendizagem e regras técnicas. European Journal of Operational Research, volume 207, edição 3, 16 de dezembro de 2018, páginas 1717-1727.
Algoritmo de construção usando programação genética.
Expandindo o algoritmo de compilação apresentado anteriormente (ver Fig. 1), um algoritmo mais detalhado é ilustrado abaixo na Fig. 4 com base na programação genética. As caixas sombreadas de cinza representam os dados de entrada, que incluem os dados de preços para o (s) mercado (s) de interesse, indicadores e tipos de pedidos no chamado conjunto de compilação e as opções e critérios de desempenho (objetivos de construção) selecionados pelo do utilizador.
Figura 4. Algoritmo de compilação para geração automática de código com programação genética.
O processo GP pode ser usado para desenvolver simultaneamente dois elementos de estratégia essenciais: condições de entrada e pedidos de entrada e saída. As condições de entrada são tipicamente representadas como estruturas de árvores, como mostrado abaixo na Fig. 5.
A chave para a evolução das ordens de entrada e saída usando programação genética é representar os diferentes tipos de pedidos de forma generalizada. Por exemplo, parar e limitar os preços de entrada podem ser representados da seguinte forma:
Embora a programação genética seja capaz de gerar estratégias de negociação com uma variedade considerável, é necessário começar com uma estrutura generalizada para as estratégias a serem seguidas. A estrutura de estratégia mostrada abaixo em pseudo-código fornece uma estrutura para estratégias de construção com base em condições de entrada e tipos de pedidos como os discutidos acima:
Entradas: N1, N2, N3, ...
Se a posição for plana e LongEntryCondition for verdade, então.
Ordem de entrada longa ...
Inicialize as ordens de saída longas, conforme necessário ...
Se a posição for plana e ShortEntryCondition for verdade, então.
Ordem de entrada curta ...
Inicialize ordens de saída curtas, conforme necessário ...
Se a posição é longa então.
Ordem de saída longa 1 ...
Ordem de saída longa 2 ...
Se a posição for curta, então.
Ordem de saída curta 1 ...
Ordem de saída curta 2 ...
[Saída opcional de fim de dia]
As estratégias começam com a lista de insumos. É fornecida uma entrada para qualquer parâmetro do indicador, comprimento do look-back do padrão de preços e quaisquer parâmetros exigidos pelas ordens de entrada e saída, como o comprimento de look-back para o ATR.
Para ilustrar o uso de programação genética para a geração automática de código na construção de estratégias, o programa Adaptrade Builder foi administrado em barras diárias de um mercado de futuros de índices de ações para uma pequena população e um número limitado de gerações. As métricas de desempenho escolhidas para orientar o processo foram o lucro líquido, o número de trades, o coeficiente de correlação, a significância estatística e a relação retorno / redução. Alvos específicos foram definidos para o número de negociações e a relação retorno / retirada. As outras métricas selecionadas foram maximizadas. A função de fitness foi uma média ponderada de termos para cada métrica.
Figura 6. Percentagem de membros da população com lucro líquido fora da amostra superior a US $ 1.000.
Da mesma forma, o lucro líquido médio da OOS aumentou após cinco e dez gerações, como mostrado na Figura 7. Observe que esses resultados são para o lucro líquido da OOS. Por definição, os dados fora da amostra não são usados na compilação, então os resultados da OOS são imparciais; eles não se beneficiam de retrospectiva. Isso implica que o processo GP não só tende a melhorar os resultados na amostra em sucessivas gerações, o que é um efeito direto do algoritmo GP, mas os resultados da OOS também tendem a melhorar à medida que as estratégias são desenvolvidas. Isso indica uma compilação de alta qualidade.
Código de Estratégia EasyLanguage para a TradeStation.
Membro da população: 46.
Criado por: Adaptrade Builder versão 1.1.0.0.
Criado: 19/10/2018 2:19:52 PM.
Código do TradeStation para TS 6 ou posterior.
Arquivo de preço: C: \ TestData. txt.
Var: EntCondL (falso),
EntCondL = (Maior (Volume, NL1) & gt; = Menor (Volume, NL2)) ou (Volume & lt; Média (Volume, NL3));
Se MarketPosition = 0 e EntCondL, em seguida, comece.
Compre a próxima barra na XAverage (L, NBarEnL1) + EntFrL * ATREnL parar;
Se MarketPosition = 0 e EntCondS, em seguida, comece.
Vender curto barra seguinte no Mais alto (H, NBarEnS1) - EntFrS * AbsValue (Menor (L, NBarEnS2) - Menor (H, NBarEnS3)) parar;
SStop = Power (10, 10);
Se MarketPosition & gt; 0 então comece.
Se BarsSinceEntry & gt; = NBarExL então.
Venda o próximo bar no mercado;
Venda o próximo bar no EntryPrice + TargFrL * ATRTargL limite;
Se MarketPosition & lt; 0 então comece.
Se EntryPrice - C & gt; ATRFrTrailS * ATRTrailS então.
Se STrailOn então começar.
NewSStop = EntryPrice - TrailPctS * (EntryPrice - C) / 100 .;
SStop = MinList (SStop, NewSStop);
Se BarsSinceEntry & gt; = NBarExS então.
Compre para cobrir a próxima barra no mercado;
Se STrailOn então.
Compre para cobrir a próxima barra na parada SStop;
Construir sistemas de negociação através da geração automática de código é um tipo de otimização. A maioria dos comerciantes sistemáticos provavelmente está familiarizado com a otimização de parâmetros, em que as entradas para uma estratégia são otimizadas. Ao contrário da otimização de parâmetros, a geração automática de código otimiza a lógica de negociação da estratégia. No entanto, o risco de sobre-otimização, ou "excesso de ajuste", também é uma preocupação para a geração automática de código, assim como é para a otimização de parâmetros.
Para obter informações sobre software para estratégias de negociação de construção usando programação genética, clique aqui.
Se você quiser ser informado de novos desenvolvimentos, novidades e ofertas especiais do Adaptrade Software, por favor, junte-se à nossa lista de e-mail. Obrigado.
Copyright © 2004-2018 Adaptrade Software. Todos os direitos reservados.
No comments:
Post a Comment