Apresentação de programação genética para modelagem preditiva.
Recentemente encontrei este interessante vídeo de 30 minutos sobre o uso de programação genética para modelagem preditiva.
Acabei de terminar um novo tutorial sobre Predictive Modeling, Genetic Programming e Time Series Prediction. Este tutorial apresenta os assuntos e, em seguida, fornece uma demonstração do Discipulus ™ produzindo um modelo preditivo de séries temporais em tempo real. & # 8221;
Sobre o autor Jeff Swanson.
Jeff é o fundador do System Trader Success - um site e uma missão para capacitar o profissional de varejo com o conhecimento e as ferramentas adequadas para se tornar um operador lucrativo no mundo da negociação quantitativa / automatizada.
Posts Relacionados.
Conceitos em Análise Técnica.
Wes McKinney & # 8211; Meetup de Finanças Algorítmicas.
Regras de Investimento / Negociação, Aforismos & # 038; Livros
O TSL é muito interessante. No entanto, qual é a diferença entre seu produto (que quando eu chequei 2 anos atrás era de $ 60k) e o programador genético do adapttrade & # 8211; que custa cerca de US $ 1k? Tanto quanto eu posso dizer que estes dois produtos fazem aproximadamente o mesmo.
Eu usei o último produto lucrativamente por um par de anos agora no TF & amp; ES futuros. Muito bom, sem queixas em tudo. Você tem que saber o que procurar / como direcionar a evolução do sistema. Mas, além disso, é simples e eficaz.
Não sei ao certo quais são todas as diferenças, mas acredito que uma delas é o fato de o Adaptrade Builder não fazer modelagem preditiva. Ele usa um algoritmo genético para desenvolver um sistema baseado na ação do preço e nos indicadores. Talvez alguém possa esclarecer, mas eu também estou supondo que os recursos de backtesting e o formato de saída do TSL são muito diferentes. Em resumo, o TSL é claramente um produto institucional, diferente do Builder.
Eu gosto muito do seu blog e de seus exemplos práticos de sistemas e códigos para o TS.
Eu conheço alguns poucos PhD que trabalham para fundos de hedge que não tiveram sucesso tentando programação genética. Um deles está usando strategyquant / que é mais barato, mas um pouco mais avançado que o Adaptrade. Sobre o TSL não posso falar, mas ouvi reclamações de usuários não foram capazes de gerar quaisquer sistemas rentáveis.
Na minha opinião, a afirmação de que "Atualmente, os sistemas de negociação desenvolvidos pelo Trading System Lab são classificados por terceiros como entre os sistemas de negociação mais lucrativos do mundo". Não é verificável devido à natureza dos GPs e sua aleatoriedade inerente. Cada vez que um GP passa por uma nova geração aleatória, o viés de mineração de dados é introduzido em virtude da reutilização dos mesmos dados. Esse processo de testar bilhões de combinações de lógica de entrada e saída acabará encontrando alguns sistemas que minimizam a função objetivo especificada na amostra de dados, mas também em qualquer amostra fora da amostra, incluindo todas as amostras possíveis de avanço. Isso é basicamente ajuste de curva imposto pelo viés de mineração de dados. Embora os GPs sejam extremamente úteis em problemas onde a otimização é necessária, isso é uma desvantagem quando se trata de sistemas de negociação, porque a otimização é uma desvantagem em vez de desejada, como você bem sabe.
Um cara me disse que usar um programa desse tipo era muito frustrante e demorado, pois, eventualmente, tudo o que era gerado e testado como lucrativo na amostra se desfez muito rapidamente. Eu acho que seus leitores devem estar cientes dessas outras visões. Mantenha o bom trabalho!
Eu sou um usuário do TSL e achei muito poderoso. Há uma parede clara e distinta que separa a & # 8216; evolução & # 8217; fase (quando o GP estabelece as regras de negociação) e o & # 8216; comércio ao vivo & # 8217; fase (durante a qual o GP não está ativo ou mesmo disponível). Os registros de trilha de negociação ao vivo do sistema TSL são, portanto, confiáveis, já que a empresa que faz a verificação (Futures Truth) só tem acesso às regras de negociação fixas e estáticas, não ao mecanismo de evolução. Alguns dos sistemas TSL foram rastreados e continuam a "liderar o pacote" # 8217; 5+ anos após o lançamento & # 8230; .. as melhores coisas que eu já vi.
Eu participei de um seminário Trader System Labs (TSL) esta semana e fiquei intrigado com isso. Eu pesquisei e encontrei este site.
com seus comentários sobre o sistema TSL. Você escreveu em dezembro de 2013, é possível que você possa compartilhar comigo como o sistema tem se comportado no ano passado, houve algum problema, como ele lidou com a correção do mercado no mês passado, etc.? Você criou outras estratégias? Que tipo de retorno você está vendo?
Você conhece outros usuários do sistema TSL com quem posso conversar, procurando mais algumas informações da comunidade de usuários antes de gastar o dinheiro.
Meu email é: airbear77 (at) msndotcom.
Eu sou atualmente um usuário do TSL, e tenho sido nos últimos 3 anos. Eu tenho negociado alguns dos sistemas que construí desde 2010 (é atualmente dezembro de 2013) e eles continuam a resistir bem fora da amostra. Eu me concentro principalmente em futuros, mais especificamente em Futuros de Dez Anos (TY) e Bond Bonds (EUA), que são negociados no CME.
O TSL não é o Santo Graal, mas é sem dúvida o melhor software que já usei quando se trata de construir sistemas de negociação. Seguindo as regras que a TSL estabeleceu, eu construí um número de sistemas com grandes fatores de lucro e taxas de troca-parâmetro muito razoáveis que continuam a superar qualquer sistema que eu anteriormente era capaz de construir manualmente. O melhor de tudo, a TSL é capaz de encontrar sistemas de negociação lucrativos em poucos minutos.
Eu sei que a verdade de futuros monitora o progresso em tempo real de sistemas de negociação algorítmica, levando em conta quantidades muito razoáveis de derrapagens e comissões, e a TSL continua no topo de algumas dessas listas diferentes.
Eu recomendo que você veja os vídeos no site da TSL para ter uma idéia do que o TSL é capaz (os vídeos são gratuitos). Eu continuo a evoluir sistemas com TSL que continuam a resistir em tempo real, que podem ser negociados em tempo real tanto por programadores como por não programadores.
Eu participei de um seminário do Trader System Labs (TSL) esta semana e fiquei intrigado com isso. Eu pesquisei e encontrei este site.
com seus comentários sobre o sistema TSL. Você escreveu em dezembro de 2013, é possível que você possa compartilhar comigo como o sistema tem se comportado no ano passado, houve algum problema, como ele lidou com a correção do mercado no mês passado, etc.? Você criou outras estratégias? Que tipo de retorno você está vendo?
Você conhece outros usuários do sistema TSL com quem posso conversar, procurando mais algumas informações da comunidade de usuários antes de gastar o dinheiro.
Meu email é: airbear77 (at) msndotcom.
Muito boa apresentação. Algum outro bom recurso para pesquisa de modelagem preditiva por aí? Minha empresa, a Modern Analytics, produziu uma incrível técnica de modelagem preditiva que empacotamos em uma solução SaaS, mas estamos sempre tentando aprimorar nossa pesquisa para melhorar a solução.
Posts populares.
Atualização de RSI de 2 períodos do Connors para 2013.
Este indicador simples faz dinheiro de novo e de novo.
O portfólio Ivy.
Melhorando a estratégia do intervalo simples, parte 1.
Copyright © 2011-2018 pela Capital Evolution LLC. - projetado por prosperar temas | Alimentado por WordPress.
Por favor faça login novamente. A página de login será aberta em uma nova janela. Após o login, você pode fechá-lo e retornar a esta página.
Tipos de AFLs de Negociação Automatizada em Amibroker.
Negociação de Níveis AFL.
Agora vamos dar uma olhada em alguns tipos diferentes de estratégias que podem ser automatizadas no Amibroker.
Vamos começar com uma estratégia discricionária. Esta é uma estratégia de negociação baseada em nível para negociar em níveis de suporte / resistência com SL, TSL e alvo. Você pode inserir os níveis para negociação a seu critério. Os sinais gerados por níveis pré-definidos serão negociados automaticamente.
Neste exemplo, estou usando o nível 7920 para acionar a posição Longa. O 7920 poderia ser esperado nível de fuga acima de um canal. Se a posição Long for tomada, eu quero que Amibroker coloque um stop loss inicial de 7910. Se o mercado se mover a meu favor, eu quero que Amibroker coloque um stop loss stop de 15 pontos. Observe que a perda de parada inicial é mais apertada do que a perda de parada de trilha.
O alvo definido para este comércio é 7945, que é baseado no nível de resistência.
Além disso, quero que todos os negócios sejam acionados somente depois das 9:20, quando o mercado se estabilizar. As negociações devem ser inseridas apenas até as 15h. Se houver alguma posição comercial no final do dia, a Amibroker deve sair às 15h15.
Então, você vê, negociação de algo não tem que ser ciência de foguete. Pode ser extremamente simples.
Você pode fazer uma combinação do melhor que pode e o melhor computador pode fazer.
Mesmo nessa estratégia simples, você pode inserir parâmetros apenas uma vez pela manhã. Quando a estratégia estiver configurada, você poderá voltar ao trabalho ou à sua empresa. Amibroker gerará sinais automaticamente conforme a lógica. Sua API de corretora executará negociações automaticamente com base na lógica. Você também pode configurar o sistema para receber alertas automáticos de e-mail enquanto estiver no escritório. O trading Algo pode ser aplicado em muitas situações e economiza tempo e dinheiro.
AFL Baseada em Indicador.
Agora dê uma olhada nesta estratégia 100% livre de discordância baseada em indicadores. Ele é baseado no Indicador RSI e também usa escalonadores de tamanho de posição.
Essa estratégia leva a posição Longa quando o RSI mostra impulso ascendente. Leva uma posição curta quando o RSI mostra momentum descendente.
Quando é necessária uma posição longa, ela configura uma perda de parada de trilha e uma meta de lucro. Se a meta de lucro for alcançada, 50% da posição será encerrada na meta de lucro. Os restantes 50% da posição permanecerão no mercado usando a perda de parada de trilha. Esse conceito é basicamente usado para capturar tendências longas usando a perda de parada de trilhas. Mas, ao mesmo tempo, a estratégia garante algum lucro por reserva na meta de lucro.
Observe também que os múltiplos de ATR são usados para definir a meta de lucro, bem como a perda de parada de trilha. Eu estou usando múltiplos ATR em vez de pontos fixos ou valores percentuais. Toda ação tem volatilidade diferente. Os níveis de ATR me ajudam a ajustar automaticamente a volatilidade de uma ação. Se eu usar valores de ponto fixo ou%, a estratégia não será capaz de se adaptar dinamicamente à volatilidade.
O código AFL desta estratégia é inferior a 100 linhas. Este AFL usa scaleins e scaleouts que são considerados tópicos relativamente avançados. Para codificar scaleins e scaleouts, você deve ter um comando muito bom em loops no AFL. Para ter um bom comando em loops forçados, você deve ter uma boa compreensão dos arrays e flags.
Observe também a diferença entre o AFL e outros scripts. O que você acha? Quantas linhas de código serão necessárias no Python ou no MQL para codificar a mesma estratégia?
Opção Negociação AFL.
Este é um código AFL que eu vou usar para testar as opções bacanas do banco. Eu tenho dados de opções para mais de 13,00 instrumentos de opção. Todas as manhãs, a Amibroker capta automaticamente o preço de exercício apropriado. Isso é feito com o arredondamento do preço do Bank Nifty em 9:30 para as 100 mais próximas. A AFL então seleciona o preço de exercício que está a uma distância de 200 pontos do preço futuro do Bank Nifty.
Esperando pelo backtest para completar.
Tome nota disso novamente. A Amibroer é capaz de fazer backtest de mais de 13.000 instrumentos em 30 segundos. Qual outro script corresponde a essa velocidade?
Agora vamos dar uma olhada no código AFL. Este não é um código AFL muito inteligente. O que eu fiz foi que eu defini o vencimento para cada mês durante o período de backtesting. Mesmo que o AFL não seja codificado de forma inteligente, são necessárias quase 100 linhas de código.
A maneira inteligente de implementar isso seria calcular automaticamente a última quinta-feira de cada mês. E então, a AFL deveria ter escolhido corretamente os preços de exercício apropriados no próximo mês.
Se eu quiser negociar essa estratégia ao vivo, não preciso fazer alterações significativas no código da AFL. Posso apenas executar o scanner em todos os preços de exercício da opção ativa, e o código AFL acionará os negócios para mim.
Par de negociação AFL.
Agora, dê uma olhada nesta estratégia de negociação em pares.
O gráfico no topo da maioria dos painéis mostra os preços do Nifty. O gráfico no painel intermediário mostra os preços mais atrativos do banco. Na parte inferior, temos um gráfico que representa a oportunidade de arbitragem estatística entre o bacana e o bacana.
Os sinais são disparados ao mesmo tempo do Nifty e do Bank nifty para executar uma troca de pares. Você pode ver as pequenas setas vermelhas e verdes que indicam sinais de negociação para este par.
Essas estratégias multi-perna também podem ser implantadas no Amibroker. Este é um exemplo de estratégia de duas etapas, mas você também pode implantar uma estratégia de três ou quatro etapas no Amibroker.
O código desta AFL é bastante simples. O que eu fiz é, basicamente, tomar o desvio padrão dos rendimentos dos dois instrumentos. Compra e Venda são acionados com base no spread entre os dois rendimentos.
Padrão gráfico AFL.
Esta é uma estratégia baseada em padrão gráfico. O código AFL identifica triângulos, canais, topos duplos e outros padrões gráficos.
Muitos de vocês podem ter perguntado, eu deveria escolher indicadores, ou apenas ações de preço para negociação? Qual é a melhor abordagem no design de estratégia? Usando indicadores ou ação de preço?
Em teoria, os padrões gráficos tendem a funcionar melhor que os indicadores. Na verdade, também faz sentido intuitivo. . Um padrão gráfico é formado em várias barras de dados. Assim, um padrão de gráfico quantificado tem um contexto maior com um grande número de pontos de dados.
Comparativamente, os indicadores estão em preto & amp; branco. Um indicador ou dá cruzamento ou não. A maioria dos indicadores é unidimensional e fornece muito menos informação. Indicadores comuns, como os indicadores do oscilador de saída única, dificilmente lhe dão qualquer contexto.
No entanto, dito isto, é muito difícil codificar padrões de preços. Comerciantes discricionários analisam 100 pontos de dados para encontrar um padrão gráfico ou um pivô de negociação. Você pode ver este código AFL. Tem mais de 300 linhas, mas quase nada útil.
É por isso que eu discuti com você anteriormente uma estratégia discricionária usando os níveis de compra e venda. É uma boa prática deixar apenas essa tarefa para os computadores, o que pode ser feito por computadores.
Padrões Candlestick AFL.
Esta é uma estratégia padrão de velas. Identifica padrões de vela, como.
E Engolfing de alta.
Essa AFL sofre dos mesmos problemas que discutimos sobre a estratégia do padrão gráfico. Um código meio cozido não lhe dá nada. Se você tentar codificar padrões de preços sem a abordagem apropriada, isso não o levará a lugar nenhum.
AFL semi-discricionária.
Até agora, discutimos a automação de muitas estratégias. Discutimos a estratégia discricionária que também foi sistemática,
100% Automatizado, Quantitativo, Maus exemplos.
Agora, vamos olhar para outro mix interessante - usando uma camada discricionária sobre a estratégia baseada em indicadores.
Essa estratégia de AFL gera sinais de compra e venda com base em um indicador adaptativo. No entanto, adicionamos muitas entradas de discrição. Um valor de entrada de 0 significa que a discrição não está sendo usada para essa entrada específica.
Primeiro, você pode selecionar um nível acima do qual compra. Muitas vezes, o estoque mostra a alta apenas acima de um certo nível. A estratégia recebe entrada com base no indicador personalizado, mas apenas acima de um nível discricionário.
Semelhante à opção buy above, temos a opção Short below. Isso significa que Entradas curtas só podem ser feitas abaixo de um nível que significa baixa.
Em seguida, estão o Stop e o Custom Target personalizados. Embora a estratégia tenha seu próprio mecanismo de saída com base nos indicadores, você também pode especificar regras de saída personalizadas. Isso pode ser muito útil às vezes. Suponha que você esteja em uma negociação longa e exista um nível de suporte imediatamente abaixo do preço de entrada. Em tal situação, você pode gostar de usar a perda de parada personalizada, em vez de uma perda de parada baseada em indicador.
Há também um mecanismo de saída defensiva versus uma saída agressiva, dependendo das condições do mercado.
Existe uma opção para o modo intradiário, que você pode desativar, se você deseja negociar posicional.
Há também opções para desativar o short e desativar o short. Você pode usar essas opções em conjunto com o período de tempo mais alto.
Finalmente, há insumos para definir os horários de entrada do comércio e os horários de saída do comércio. Estes são muito úteis para negociação intraday. Durante os primeiros minutos após a abertura do mercado, você pode não querer entrar em uma negociação. Você pode esperar até o mercado se estabilizar.
Da mesma forma, para negociação intraday, é uma boa opção definir também o tempo de saída da negociação.
Rotacional Backtesting AFL.
Dê uma olhada nessa estratégia de rotação de portfólio.
Eu estou executando em um portfólio de cerca de 45 scripts, que são na maioria das vezes scripts engenhosos.
Essa estratégia faz o melhor e pior desempenho em um intervalo de tempo de hora em hora. Você também pode usar a mesma versão de estratégia em um período de tempo maior. Por exemplo, a mesma estratégia pode ser usada para rotação mensal ou trimestral de estoques em um portfólio,
Em cada intervalo de 60 minutos, essa estratégia encontra os melhores e piores desempenhos. Compra os piores desempenhos e vende os melhores artistas. Você pode ver Amibroker tomando posições de acordo com o rank relativo do estoque em carteira.
Às 3:15, essa estratégia liquida todas as posições, uma vez que é uma estratégia de negociação intradia. No dia seguinte, começará com um novo portfólio.
Você quer ver o código da AFL para essa estratégia? Aqui está:
Tem apenas 10 linhas de código AFL. Apenas o amibroker permite esse tipo de backtesting de nível de portfólio rotacional. Outros softwares de varejo populares, como NinjaTrader, MultiCharts ou MT4, não possuem esse recurso.
Exploração Trading AFL.
Estratégia executada na lista de observação de 100 ações através da exploração.
A negociação em tempo real nem sempre precisa ser feita nos gráficos. É sempre possível negociar com a Amibroker sem usar gráficos.
Veja este exemplo. Eu fiz uma lista de observação de cerca de 20 ações para o comércio. Da mesma forma, você também pode criar uma lista de observação de 100 ações para negociar.
Para negociar no intradiário, estou definindo periodicidade de 1 minuto.
O intervalo no qual o Amibroker deve escanear é definido para apenas 1 barras recentes. Como estou negociando usando o scanner, não preciso do Amibroker para escanear todas as vezes todo o histórico de dados.
Em seguida, defino um intervalo de repetição automática de 1 segundo. Isso significa que a Amibroker fará a varredura de todas as 20 ou 100 ações na lista de observação em um intervalo de 1 segundo para encontrar um sinal de negociação.
Agora basta pressionar o botão de digitalização.
A Amibroker agora está repetindo a varredura automaticamente a cada 1 segundo para encontrar sinais de negociação. Você pode ver que as negociações estão sendo acionadas no Arvind HDIL.
Negociar através do scanner é um dos recursos mais úteis. Se você está negociando através de gráficos, você precisa ter certeza de que os gráficos estão abertos o tempo todo. Você pode usar o scanner para negociação e gráficos para análise.
Painel de negociação AFL.
Neste exemplo, codifiquei todo um painel de negociação, diretamente nos gráficos. Este painel de negociação tem,
Botões habituais de compra / venda.
Ordens de brackets com stop loss e target predefinidos.
Botões para arredondar metade do tamanho da posição.
Coloque os botões TSL e Target.
Botão para cancelar o último pedido aberto, bem como cancelar todos os pedidos em aberto.
Há também um botão para atualizar a conexão com a API, útil no caso de a conectividade com a API ser perdida.
Botão para definir a perda da parada da trilha.
E, finalmente, um botão de informações que mostra o preço em que os pedidos estão sendo enviados.
Os parâmetros de entrada para este painel de negociação permitem muito controle sobre a execução do negócio.
Você pode optar por negociar usando ordem de mercado ou ordem de limite.
O preço limite para o pedido pode ser em lance-pedido ou uma pequena diferença entre o lance-pedido. Você também pode escolher o último preço como preço de compra e venda.
Você pode predefinir o stop loss e o target em termos de múltiplos de ATR.
Você também pode ativar alertas de email, push ou de som.
Tudo isso sendo feito pela própria Amibroker, transformando a Amibroker em um terminal comercial completo.
Curso gratuito de comércio de Python Algo.
1 Introdução à Algo Trading & amp; Configurando o Python.
2 Codificação para MA, MACD, Bandas de Bollinger, RSI, Z-score, Testes de Stationarity, Charts de Candlestick.
3 Download e preparação de dados no Python.
4 Regra de Compra e Venda de Codificação para MAs, MACD, Bandas de Bollinger, RSI, Z-score.
5 Estratégias de Backtesting - MA, MACD, BBands, RSI, Z-score, estratégia de negociação em pares.
6 Otimizando Estratégias Usando Computação Paralela.
Para acessar o curso de negociação de algo livre python, simplesmente faça o login em algoji / pro / (você pode precisar se registrar se ainda não estiver registrado)
AlgoJi é o único fórum na Índia que não tem parceria comercial (partilha de comissão) com qualquer corretor / fornecedor. Mesmo que tenhamos colaborações do setor em toda a Índia. Isso nos torna imparciais e mantém seus dados identificáveis seguros.
No comments:
Post a Comment