Monday 5 March 2018

Fonte de estratégias de negociação


20 Regras seguidas pelos comerciantes profissionais.
Reservar lucros confiáveis ​​nos mercados financeiros é mais difícil do que parece à primeira vista. Na verdade, estima-se que mais de 80% de todos os participantes acabem lavando e adotando passatempos mais seguros. Mas a indústria de corretagem raramente publica taxas de falha de clientes, uma vez que eles estão preocupados com a verdade pode assustar novas contas, então a taxa de lavagem poderia ser muito maior.
A rentabilidade a longo prazo requer dois conjuntos de habilidades inter-relacionados. Primeiro, precisamos de estratégias que ganhem mais dinheiro do que perdem. Em segundo lugar, essas estratégias devem funcionar bem enquanto a forma do mercado se desloca através de impulsos de touro e urso, com muitos períodos intermitentes no meio. Enquanto muitos comerciantes sabem como ganhar dinheiro em condições de mercado específicas, como uma forte tendência de alta, eles falham no longo prazo porque suas estratégias não se adaptam a mudanças inevitáveis. (Para saber mais, veja: Dicas para investir em mercados voláteis).
Então, você pode se afastar da matilha e se juntar à minoria profissional com uma abordagem que aumenta suas chances de prosperidade a longo prazo? Comece com um plano claro e conciso (Leia: O que é necessário para tornar-se um comerciante Elite).
Agora, internalize estas 20 regras que os profissionais de longo prazo usam para permanecer no círculo do vencedor.
1. Siga sua disciplina - A disciplina não pode ser ensinada em um seminário ou encontrada em um software de negociação caro. (Mas você pode aprender mais lendo: A Importância da Psicologia e Disciplina de Negociação). Os comerciantes gastam milhares de dólares tentando compensar sua falta de autocontrole, mas poucos percebem que um longo olhar no espelho realiza a mesma tarefa a um preço muito mais barato!
2. Perder a multidão - A rentabilidade a longo prazo exige posicionamento à frente ou por trás da multidão, mas nunca na multidão, porque é aí que as estratégias predatórias visam. Fique longe das placas de estoque e salas de bate-papo. Este é um negócio sério e todos naqueles lugares têm um motivo interior. (Confira como o poder das massas conduz o mercado para saber mais).
3. Envolva seu plano de negociação - Atualize seu plano de negociação semanalmente ou mensalmente para incluir novas idéias e eliminar as más. Volte e leia o plano sempre que você cair em um buraco e esteja procurando uma maneira de sair.
4. Não corte cantos - Sua competição gasta centenas de horas aperfeiçoando estratégias e você está fazendo um despertar grosseiro se você espera jogar alguns dardos e sair com um lucro. É ainda pior se você cortar os cantos no resto de sua vida porque esse mau hábito é muito mais difícil de quebrar.
5. Evite o óbvio - O lucro raramente segue a maioria. Quando você vê uma configuração de troca perfeita, é provável que todos os outros vejam também, plantando você na multidão e preparando você para o fracasso.
6. Não quebre suas regras - Você cria regras de negociação para tirar você de problemas quando as posições correm mal. Se você não permitir que eles façam seu trabalho, você perdeu sua disciplina e abriu a porta para perdas ainda maiores.
7. Evite os gurus do mercado - É o seu dinheiro em jogo, e não o deles. Tenha em mente que eles provavelmente estão falando em suas posições, esperando que a conversa excitada aumente seus lucros, e não os seus.
8. Ouça sua intuição - A Trading usa os lados matemáticos e artísticos do seu cérebro, então você precisa cultivar ambos para ter sucesso no longo prazo. Uma vez que você se sinta confortável com as matemáticas, você pode melhorar os resultados com a meditação, algumas posturas de yoga ou uma caminhada tranquila no parque.
9. Não acredite em uma empresa ou um produto - Se você está muito apaixonado por seu veículo comercial, você cede o caminho para a tomada de decisões com defeito. É seu trabalho aproveitar a ineficiência, ganhar dinheiro enquanto todos os outros se inclinam para o caminho errado. (Para leitura relacionada, veja: Como evitar o investimento emocional).
10. Obtenha sua vida pessoal em ordem - Tudo o que for errado em sua vida eventualmente será transferido para o seu desempenho comercial. Isto é especialmente perigoso se você não fez a paz com dinheiro, riqueza e a polaridade magnética de abundância e escassez.
11. Não tente se equilibrar. - Drawdowns são uma parte natural do ciclo de vida do comerciante. Aceite-os graciosamente e fique com as estratégias testadas pelo tempo que você conhece, eventualmente, obterá sua performance no caminho certo.
12. Preste atenção aos sinais de alerta precoce - grandes perdas raramente ocorrem sem múltiplos avisos técnicos. Os comerciantes ignoram rotineiramente esses sinais e permitem que a esperança substitua a disciplina pensativa, preparando-se para a dor.
13. Não confunda a execução com a oportunidade - Os comerciantes compensam habilidades insuficientes com um software caro, pré-embalado com todos os tipos de sinais de compra e venda proprietários. Essas ferramentas interferem com uma experiência valiosa porque você acha que o software é mais inteligente do que você.
14. Jogue com a cabeça, não sobre ele - É natural que os comerciantes imitam seus heróis financeiros, mas também é uma maneira perfeita de perder dinheiro. Saiba o que você pode de outros, depois recupere e estabeleça sua própria identidade de mercado, com base em suas habilidades únicas e tolerância ao risco.
15. Esqueça o Santo Graal - Os comerciantes perdedores fantasizam sobre fórmula secreta que irá melhorar magicamente seus resultados. Na realidade, não há segredos porque o caminho para o sucesso sempre passa por uma escolha cuidadosa, gerenciamento efetivo de riscos e aproveitamento lucrativo. (Ver: Técnicas de Gerenciamento de Riscos para Traders ativos).
16. Abaixe a mentalidade de cheque de pagamento - Nos ensinamos a esmagar a semana de trabalho e depois a retirar os nossos cheques de pagamento. Essa mentalidade de recompensa de pagamento por esforço entra em conflito com o fluxo natural de ganhos e perdas comerciais ao longo de um ano. De fato, as estatísticas indicam que a maioria dos lucros anuais são registrados apenas em alguns dias, o mercado está aberto para negócios.
17. Não conte suas galinhas - Sinta-se bem sobre um comércio que está indo no seu caminho, mas o dinheiro não é seu até você fechar. Bloqueie o que você pode o mais cedo possível, com paradas de trânsito ou lucros parciais, por isso as mãos escondidas não podem escolher seu sucesso no último minuto.
18. Abraçar a simplicidade - Concentre-se na ação do preço, entendendo que tudo o resto é secundário. Vá em frente e crie indicadores técnicos complexos, mas tenha em mente que sua principal função é confirmar ou refutar o que seu olho treinado já vê. (Para leitura rekated, veja: Introdução aos padrões de preços de análise técnica).
19. Faça a paz com perdas - Negociação é uma das poucas profissões em que perder dinheiro todos os dias é um caminho natural para o sucesso. Toda perda comercial vem com uma importante lição de mercado, se você estiver aberto à mensagem.
20. Cuidado com o reforço secundário - O comércio ativo libera adrenalina e endorfinas. Esses produtos químicos podem produzir sentimentos de euforia mesmo quando você está perdendo dinheiro. Por sua vez, isso encoraja as personalidades viciantes a assumir posições ruins, apenas para se precipitarem.
A grande maioria dos comerciantes não conseguiu aproveitar todo o seu potencial, eventualmente cobrar suas fichas e encontrar formas mais tradicionais de ganhar dinheiro. Torne-se um membro orgulhoso da minoria profissional seguindo regras clássicas projetadas para manter um foco nítido na lucratividade.

QuantStart.
Junte-se ao portal de membros privados da Quantcademy que atende à comunidade de comerciantes de varejo de varejo em rápido crescimento. Você encontrará um grupo bem informado de mentalistas quant pronto para responder suas perguntas comerciais mais importantes.
Confira meu ebook sobre o comércio de quant, onde eu ensino você como criar estratégias de negociação sistemáticas lucrativas com ferramentas Python, desde o início.
Dê uma olhada no meu novo ebook sobre estratégias de negociação avançadas usando análise de séries temporais, aprendizado de máquina e estatísticas bayesianas, com Python e R.
Por Frank Smietana em 18 de julho de 2017.
Neste artigo, Frank Smietana, um dos colaboradores experientes do QuantStart, descreve a paisagem do software de backtesting de código aberto da Python e fornece conselhos sobre quais framework de backtesting são adequados para suas próprias necessidades de projeto.
Backtesting é indiscutivelmente a parte mais crítica do processo de produção da Sistemática de Negociação Sistemática (STS), sentado entre o desenvolvimento da estratégia e a implantação (negociação ao vivo). Se uma estratégia é defeituosa, um teste rigoroso provavelmente expõe isso, evitando que uma estratégia de perda seja implantada.
Uma série de capacidades relacionadas se sobrepõem com backtesting, incluindo simulação comercial e negociação ao vivo. O Backtesting usa dados históricos para quantificar o desempenho STS. Os simuladores de negociação levam backtesting um passo adiante, visualizando o desencadeamento de trades e desempenho de preços em uma base bar-a-bar. A negociação simulada / ao vivo implementa um STS testado em tempo real: negociações de sinalização, gerando ordens, roteando ordens para corretores e mantendo as posições à medida que as ordens são executadas.
A maioria dos quadros vai além do backtesting para incluir algumas capacidades de negociação ao vivo. Isso é conveniente se você deseja implantar a partir de sua estrutura de backtesting, que também funciona com o seu fornecedor preferido e fontes de dados. Quantopian / Zipline vai um passo adiante, fornecendo uma solução totalmente integrada de desenvolvimento, backtesting e implantação.
A comunidade Python é bem servida, com pelo menos seis estruturas de backtesting de código aberto disponíveis. No entanto, estão em vários estágios de desenvolvimento e documentação. Se você gosta de trabalhar em uma equipe construindo uma estrutura de backtesting de código aberto, confira seus reembolsos Github.
Antes de avaliar quadros de teste, vale a pena definir os requisitos do seu STS.
Qual classe de ativos você está negociando? Embora a maioria dos frameworks ofereça suporte aos dados da US Equities via YahooFinance, se uma estratégia incorporar derivados, ETFs ou títulos de EM, os dados precisam ser importados ou fornecidos pela estrutura. As coberturas de classe de ativos vão além dos dados. O framework pode lidar com futuros e opções de tamanho finito e gerar negociações de roll-over automaticamente? E quanto aos mercados ilíquidos, quão realista é uma suposição ao executar grandes encomendas?
Qual a frequência e o detalhe dos dados do seu STS? Um sistema de negociação que exige que cada marca ou lance / peça tenha um conjunto muito diferente de problemas de gerenciamento de dados do que um intervalo de 5 minutos ou horário. Os hedge funds e as lojas HFT investiram significativamente na construção de quadros robustos e escaláveis ​​de backtesting para lidar com esse volume e freqüência de dados. Algumas plataformas fornecem um conjunto rico e profundo de dados para várias classes de ativos, como ações da S & P, com resolução de um minuto.
Qual (s) tipo (s) de ordem o seu STS requer? No mínimo, o limite, as paradas e o OCO devem ser suportados pela estrutura.
Nível de suporte e amp; documentação necessária. Os quadros de estágio inicial têm escassa documentação, poucos têm suporte além de placas comunitárias.
Os Componentes de um Quadro de Teste de Backtesting.
Dados e aquisição de STS: os componentes de aquisição consomem o arquivo de script / definição STS e fornecem os dados necessários para testes. Se a estrutura exige que qualquer STS seja recodificado antes do teste posterior, a estrutura deve suportar funções enlatadas para os indicadores técnicos mais populares para acelerar o teste STS. Os usuários determinam o tempo de um período histórico para fazer backtest com base no que o framework fornece, ou o que eles são capazes de importar.
O teste de desempenho aplica a lógica STS à janela de dados históricos solicitada e calcula uma ampla gama de riscos & amp; métricas de desempenho, incluindo redução máxima, taxas Sharpe e Sortino. A maioria dos frameworks suporta um número decente de capacidades de visualização, incluindo curvas de equidade e estatísticas decimais.
A otimização tende a exigir a maior parte dos recursos de computação no processo STS. Se o seu STS precisar de otimização, concentre-se em uma estrutura que suporte processamento escalável distribuído / paralelo.
No contexto de estratégias desenvolvidas usando indicadores técnicos, os desenvolvedores de sistemas tentam encontrar um conjunto ideal de parâmetros para cada indicador. Mais simplesmente, a otimização pode achar que um fluxo de média móvel de 6 e 10 dias STS acumulou mais lucro sobre os dados de teste históricos do que qualquer outra combinação de períodos de tempo entre 1 e 20. Já com este exemplo trivial, 20 * 20 = 400 combinações de parâmetros devem ser calculado & amp; classificado.
No contexto de um portfólio, a otimização procura encontrar a ponderação ideal de cada ativo na carteira, incluindo os instrumentos em curto e alavancado. Em uma base periódica, o portfólio é reequilibrado, resultando na compra e venda de participações da carteira, conforme necessário, para alinhar com os pesos otimizados.
O dimensionamento de posição é um uso adicional da otimização, ajudando os desenvolvedores de sistemas a simular e analisar o impacto da alavancagem e dimensionamento de posição dinâmico no STS e no desempenho do portfólio.
Seis quadros de teste para o Python.
As capacidades padrão das plataformas open source Python backtesting parecem incluir:
Gerenciamento de eventos, flexível e irrestrito Coleta decente de indicadores técnicos pré-definidos Captação de desempenho padrão / visualização / geração de relatórios.
PyAlgoTrade.
PyAlgoTrade é uma estrutura de backtesting mutuamente documentada, juntamente com capacidades de negociação em papel e ao vivo. O suporte a dados inclui Yahoo! Finanças, Google Finance, NinjaTrader e qualquer tipo de série de tempo baseada em CSV, como Quandl. Os tipos de pedidos suportados incluem Market, Limit, Stop e StopLimit.
O PyAlgoTrade suporta a negociação Bitcoin via Bitstamp e o gerenciamento de eventos do Twitter em tempo real.
bt - Backtesting para Python.
bt "visa promover a criação de blocos de lógica de estratégia facilmente testáveis, reutilizáveis ​​e flexíveis para facilitar o rápido desenvolvimento de estratégias comerciais complexas".
O framework é particularmente adequado para testar STS com base em portfólio, com algos para ponderação de ativos e reequilíbrio de portfólio. A modificação de uma estratégia para executar em diferentes freqüências de tempo ou pesos de ativos alternativos envolve um mínimo de ajuste de código. bt é construído em cima do ffn - uma biblioteca de funções financeiras para Python.
Backtrader.
Esta plataforma está excepcionalmente bem documentada, com um blog acompanhante e uma comunidade on-line ativa para postar perguntas e solicitações de recursos. O Backtrader suporta uma série de formatos de dados, incluindo arquivos CSV, Pandas DataFrames, iteradores de incandescência e feeds de dados em tempo real de três corretores. Esses feeds de dados podem ser acessados ​​simultaneamente e podem até representar diferentes cronogramas. Os corretores suportados incluem Oanda para negociação de Forex e negociação de classes de ativos múltiplos através de Interactive Brokers e Visual Chart.
Pysystemtrade.
O desenvolvedor da Pysystemtrade, Rob Carver, tem uma ótima postagem em discussão sobre o porquê ele se propôs a criar mais uma nova estrutura de teste do Python e os argumentos para e contra o desenvolvimento do framework. A estrutura backtesting para pysystemtrade é discutida no livro Rob, "Systematic Trading".
Pysystemtrade lista uma série de recursos de roteiro, incluindo um testador de back-up completo, que inclui técnicas de otimização e calibração e negociação de futuros totalmente automáticos com Interactive Brokers. Os contribuidores da fonte aberta são bem-vindos.
Zipline é um simulador de negociação algorítmica com recursos de papel e negociação ao vivo. Acessível através da interface do navegador IPython baseado no navegador, a Zipline fornece uma alternativa fácil de usar para ferramentas de linha de comando. Suportado e desenvolvido por Quantopian, Zipline pode ser usado como uma estrutura de backtesting autônomo ou como parte de um ambiente completo de desenvolvimento, teste e implantação de STS, de Aosta / Zipline STS. A Zipline fornece 10 anos de dados de estoque históricos históricos de última hora e uma série de opções de importação de dados.
QSTrader é uma estrutura de backtesting com capacidades de negociação ao vivo. O fundador da QuantStart, Michael Halls-Moore, lançou o QSTrader com a intenção de construir uma plataforma robusta e escalável o suficiente para atender às necessidades dos fundos de hedge quantitativos institucionais, bem como aos comerciantes quantos de varejo. O QSTrader atualmente suporta dados de resolução "barra" da OHLCV em várias escalas de tempo, mas permite que dados de marca sejam usados.
Tanto o backtesting como o comércio ao vivo são completamente orientados para eventos, simplificando a transição das estratégias da pesquisa para o teste e, finalmente, a negociação ao vivo. A estratégia básica / código do portfólio geralmente é idêntico em ambas as implementações.
O principal benefício do QSTrader é em sua modularidade, permitindo uma ampla personalização de código para aqueles que possuem requisitos específicos de gerenciamento de risco ou portfólio.
Abraçando o Backtest.
É a natureza humana se concentrar na recompensa de desenvolver um STS (esperançosamente lucrativo), então apressar-se a implantar uma conta financiada (porque esperamos), sem gastar tempo e recursos suficientes para testar completamente a estratégia. Mas backtesting não é apenas um gatekeeper para nos impedir de implementar estratégias erradas e perder capital comercial, também fornece uma série de diagnósticos que podem informar o processo de desenvolvimento STS. Por exemplo, testando um STS idêntico em dois intervalos de tempo diferentes, compreendendo a redução máxima de uma estratégia no contexto de correlações de ativos e criando portfólios mais inteligentes por backtesting de alocações de ativos em várias regiões geográficas.
Em futuras postagens, iremos abordar frameworks de backtesting para ambientes que não sejam Python e o uso de várias técnicas de amostragem como bootstrapping e jackknife para testar modelos de negociação preditivos.
Apenas iniciando o comércio quantitativo?
3 razões para se inscrever para a lista de e-mails QuantStart:
1. Quant Trading Lessons.
Você terá acesso instantâneo a um curso de e-mail gratuito de 10 partes, repleto de sugestões e dicas para ajudá-lo a começar a negociação quantitativa!
2. Todo o conteúdo mais recente.
Todas as semanas, vou enviar-lhe um envoltório de todas as atividades no QuantStart para que você nunca mais perca uma postagem novamente.
Real, dicas de negociação viáveis, sem tonturas.

Usando Indicadores Técnicos para Desenvolver Estratégias de Negociação.
Os indicadores, como as médias móveis e Bollinger Bands®, são ferramentas de análise técnica baseadas em matemática que os comerciantes e os investidores usam para analisar o passado e prever futuras tendências e padrões de preços. Onde os fundamentalistas podem rastrear relatórios econômicos e relatórios anuais, os comerciantes técnicos contam com indicadores para ajudar a interpretar o mercado. O objetivo na utilização de indicadores é identificar as oportunidades comerciais. Por exemplo, um crossover médio móvel geralmente prevê uma mudança de tendência. Nessa instância, aplicar o indicador de média móvel a um gráfico de preços permite aos comerciantes identificar áreas onde a tendência pode mudar. A Figura 1 mostra um exemplo de um gráfico de preços com uma média móvel de 20 períodos.
As estratégias, por outro lado, freqüentemente empregam indicadores de forma objetiva para determinar as regras de entrada, saída e / ou comércio. Uma estratégia é um conjunto definitivo de regras que especifica as condições exatas em que os negócios serão estabelecidos, gerenciados e fechados. As estratégias normalmente incluem o uso detalhado de indicadores ou, mais freqüentemente, de múltiplos indicadores, para estabelecer os casos em que a atividade de negociação ocorrerá. (Digite mais profundamente as médias móveis. Leia Simples e as médias móveis exponenciais.)
Embora este artigo não se centre em estratégias de negociação específicas, ele serve como uma explicação de como os indicadores e as estratégias são diferentes e como eles trabalham juntos para ajudar os analistas técnicos a identificar as configurações de negociação de alta probabilidade. (Para mais, confira Criar suas próprias estratégias de negociação.)
Um número crescente de indicadores técnicos estão disponíveis para os comerciantes a serem estudados, incluindo aqueles no domínio público, como uma média móvel ou um oscilador estocástico, bem como indicadores proprietários comercialmente disponíveis. Além disso, muitos comerciantes desenvolvem seus próprios indicadores únicos, às vezes com a ajuda de um programador qualificado. A maioria dos indicadores tem variáveis ​​definidas pelo usuário que permitem que os comerciantes adaptem as entradas-chave, como o "período de retrocesso" (quanto tempo os dados históricos serão usados ​​para formar os cálculos) para atender às suas necessidades.
Uma média móvel, por exemplo, é simplesmente uma média do preço de uma garantia em um determinado período. O período de tempo é especificado no tipo de média móvel; por exemplo, uma média móvel de 50 dias. Esta média móvel será a média dos 50 dias anteriores da atividade de preços, usualmente usando o preço de fechamento da segurança em seu cálculo (embora outros pontos de preço, como o aberto, alto ou baixo, possam ser usados). O usuário define o comprimento da média móvel, bem como o preço que será usado no cálculo. (Para saber mais, consulte o nosso Tutorial de médias móveis.)
Uma estratégia é um conjunto de regras objetivas e absolutas que definem quando um comerciante agirá. Normalmente, as estratégias incluem filtros de comércio e gatilhos, ambos com base em indicadores. Os filtros comerciais identificam as condições de configuração; Os desencadeantes do comércio identificam exatamente quando uma determinada ação deve ser tomada. Um filtro de comércio, por exemplo, pode ser um preço que encerrou acima da média móvel de 200 dias. Isso prepara o cenário para o gatilho comercial, que é a condição real que leva o comerciante a agir - AKA, a linha na areia. Um gatilho comercial pode ser quando o preço atinge um ponto acima da barra que violou a média móvel de 200 dias. A Figura 2 mostra uma estratégia que utiliza uma média móvel de 20 períodos com confirmação do RSI. As entradas comerciais e as saídas são ilustradas com pequenas setas pretas.
Para ser claro, uma estratégia não é simplesmente "Comprar quando o preço se move acima da média móvel". Isso é muito evasivo e não fornece detalhes definitivos para agir. Aqui estão exemplos de algumas questões que precisam ser respondidas para criar uma estratégia objetiva:
Que tipo de média móvel será usada, incluindo comprimento e ponto de preço a ser usado no cálculo? Até que ponto acima da média móvel o preço precisa se mover? O comércio deve ser inserido assim que o preço se mover uma distância especificada acima da média móvel, ao fechar a barra ou ao abrir a barra seguinte? Que tipo de ordem será usada para colocar o comércio? Limite? Mercado? Quantos contratos ou ações serão negociados? Quais são as regras de gerenciamento de dinheiro? Quais são as regras de saída?
Todas essas questões devem ser respondidas para desenvolver um conjunto conciso de regras para formar uma estratégia.
Usando Indicadores Técnicos para Desenvolver Estratégias.
Um indicador não é uma estratégia comercial. Um indicador pode ajudar os comerciantes a identificar condições de mercado; uma estratégia é um livro de regras do comerciante: como os indicadores são interpretados e aplicados para fazer suposições educadas sobre a futura atividade do mercado. Existem muitas categorias diferentes de ferramentas de negociação técnica, incluindo indicadores de tendência, volume, volatilidade e momentum. Muitas vezes, os comerciantes usarão múltiplos indicadores para formar uma estratégia, embora sejam recomendados diferentes tipos de indicadores ao usar mais de um. Usando três indicadores diferentes do mesmo tipo - impulso, por exemplo - resulta na contagem múltipla da mesma informação, um termo estatístico denominado multicolinearidade. A multicolicinearidade deve ser evitada, pois produz resultados redundantes e pode fazer com que outras variáveis ​​pareçam menos importantes. Em vez disso, os comerciantes devem selecionar indicadores de diferentes categorias, como um indicador de momentum e um indicador de tendência. Freqüentemente, um dos indicadores é usado para confirmação; isto é, para confirmar que outro indicador produz um sinal preciso. (Para saber mais, consulte Bases de Regressão para análise de negócios).
Uma estratégia de média móvel, por exemplo, pode empregar o uso de um indicador de momentum para confirmação de que o sinal de negociação é válido. Um indicador de impulso é o Índice de Força Relativa (RSI), que compara a variação média do preço dos períodos de avanço com a variação média do preço dos períodos em declínio. Como outros indicadores técnicos, o RSI possui entradas variáveis ​​definidas pelo usuário, incluindo a determinação de quais níveis representarão condições de sobrecompra e sobrevenda. O RSI, portanto, pode ser usado para confirmar quaisquer sinais que a média móvel produza. Os sinais opostos podem indicar que o sinal é menos confiável e que o comércio deve ser evitado.
Cada indicador e combinação de indicadores requer pesquisa para determinar a aplicação mais adequada em relação ao estilo do comerciante e tolerância ao risco. Uma vantagem na quantificação das regras de negociação em uma estratégia é que permite que os comerciantes apliquem a estratégia aos dados históricos para avaliar como a estratégia teria realizado no passado, um processo conhecido como backtesting. Claro, isso não garante resultados futuros, mas certamente pode ajudar no desenvolvimento de uma estratégia comercial lucrativa. (Saiba mais sobre os benefícios e as desvantagens do backtesting. Leia Backtesting and Forward Testing: The Importance Of Correlation.)
Independentemente de quais indicadores são usados, uma estratégia deve identificar exatamente como os indicadores serão interpretados e precisamente quais as ações a serem tomadas. Os indicadores são ferramentas que os comerciantes usam para desenvolver estratégias; eles não criam sinais comerciais por conta própria. Qualquer ambiguidade pode levar a problemas.
Escolhendo indicadores para desenvolver uma estratégia.
O tipo de indicador que um comerciante usa para desenvolver uma estratégia depende do tipo de estratégia que ele ou ela pretende construir. Isso diz respeito ao estilo de negociação e à tolerância ao risco. Um comerciante que busca movimentos de longo prazo com grandes lucros pode se concentrar em uma estratégia de tendência e, portanto, utilizar um indicador de tendência, como uma média móvel. Um comerciante interessado em pequenos movimentos com pequenos ganhos freqüentes pode estar mais interessado em uma estratégia baseada na volatilidade. Mais uma vez, diferentes tipos de indicadores podem ser usados ​​para confirmação. A Figura 2 mostra as quatro categorias básicas de indicadores técnicos com exemplos de cada um.
Os comerciantes têm a opção de comprar sistemas de negociação "caixa preta", que são estratégias proprietárias comercialmente disponíveis. Uma vantagem para a compra desses sistemas de caixa preta é que toda a pesquisa e backtesting tem sido teoricamente feito para o comerciante; A desvantagem é que o usuário está "voando cego", pois a metodologia geralmente não é divulgada e, muitas vezes, o usuário não consegue fazer personalizações para refletir seu estilo de negociação. (Saiba como os sistemas de caixa preta funcionam com ETFs inteligentes em Sharpen Your Portfolio With Intelligent ETFs.)
Os indicadores sozinhos não fazem sinais comerciais. Cada trader deve definir o método exato em que os indicadores serão utilizados para sinalizar oportunidades comerciais e para desenvolver estratégias. Os indicadores podem certamente ser usados ​​sem ser incorporados em uma estratégia; no entanto, as estratégias técnicas de negociação geralmente incluem pelo menos um tipo de indicador. Identificar um conjunto absoluto de regras, como com uma estratégia, permite que os comerciantes façam backtest para determinar a viabilidade de uma estratégia específica. Também ajuda os comerciantes a entender a expectativa matemática das regras ou a forma como a estratégia deve atuar no futuro. Isso é fundamental para os comerciantes técnicos, pois ajuda os comerciantes a avaliar continuamente o desempenho da estratégia e pode ajudar a determinar se e quando é hora de fechar uma posição.
Traders freqüentemente falam sobre o Santo Graal - o único segredo comercial que levará à lucratividade instantânea. Infelizmente, não existe uma estratégia perfeita que garanta o sucesso de cada investidor. Cada comerciante tem um estilo único, temperamento, tolerância ao risco e personalidade. Como tal, cabe a cada comerciante conhecer a variedade de ferramentas de análise técnica disponíveis, pesquisar como elas funcionam de acordo com suas necessidades individuais e desenvolver estratégias baseadas nos resultados. (Para mais, confira Survive The Trading Game.)

fonte de estratégias de negociação
Recomendamos atualizar para o mais recente Safari, Google Chrome ou Firefox.
Puxe pedidos 0.
Participe do GitHub hoje.
O GitHub é o lar de mais de 20 milhões de desenvolvedores que trabalham juntos para hospedar e rever o código, gerenciar projetos e criar software juntos.
Clone com HTTPS.
Use o Git ou o check-out com o SVN usando o URL da web.
StockSharp (em breve S #) - são conjuntos de programas gratuitos para negociação em qualquer mercado do mundo (americano, europeu, asiático, russo, ações, futuros, opções, Bitcoins, forex, etc.). Você poderá negociar negociação manual ou automática (robôs de negociação algorítmica, convencionais ou HFT).
Conexões disponíveis: FIX / FAST, LMAX, Rithmic, Fusion / Blackwood, Interactive Brokers, OpenECry, Sterling, IQFeed, ITCH, FXCM, QuantHouse, E * Trade, BTCE, BitStamp e muitos outros. Qualquer corretor ou corretor parceiro (benefícios).
S #.Terminal é uma aplicação de gráficos de negociação gratuita (terminal de negociação). Mais informações.
S #.Designer é um designer livre de estratégias de negociação. A interface intuitiva. Estratégias de "programação" por mouse ou em C #. Mais informações.
S #.Data é um aplicativo gratuito para baixar e armazenar dados de mercado de várias fontes (35+). Mais informações.
S #.API é uma biblioteca C # grátis para programadores que usam o Visual Studio. S #.API permite que você crie qualquer estratégia de negociação, desde estratégias posicionais de longo prazo até estratégias de alta freqüência (HFT) com acesso direto à troca (DMA). Mais informações.
Etapa atual de todos os componentes - RELEASE_STAGES. md. Notas de lançamento - RELEASE_NOTES. md.
O código StockSharp está licenciado sob a Licença Apache 2.0.
&cópia de; 2018 GitHub, Inc. Termos Privacidade Segurança Status Ajuda.
Você não pode executar essa ação neste momento.
Você fez login com outra guia ou janela. Recarregue para atualizar sua sessão. Você se separou em outra guia ou janela. Recarregue para atualizar sua sessão.

Forex Algorithmic Trading: um conto prático para engenheiros.
Como você pode saber, o mercado cambial (Forex, ou FX) é usado para negociação entre pares de moedas. Mas você pode não estar ciente de que é o mercado mais líquido do mundo.
Alguns anos atrás, impulsionados pela minha curiosidade, fiz os primeiros passos no mundo da negociação algorítmica Forex criando uma conta demo e jogando simulações (com dinheiro falso) na plataforma de negociação Meta Trader 4.
Depois de uma semana de "negociação", quase dobrava meu dinheiro. Estimulado pela minha própria negociação algorítmica bem sucedida, cavei e, eventualmente, me inscrevi para vários fóruns de FX. Logo, passava horas lendo sobre sistemas de negociação algorítmica (conjuntos de regras que determinam se você deve comprar ou vender), indicadores personalizados, modos de mercado e muito mais.
Meu primeiro cliente.
Por volta dessa época, por acaso, ouvi dizer que alguém estava tentando encontrar um desenvolvedor de software para automatizar um sistema comercial simples. Isso estava de volta aos dias da faculdade quando eu estava aprendendo sobre programação simultânea em Java (threads, semáforos e todo esse lixo). Eu pensei que este sistema automatizado não poderia ser muito mais complicado do que o meu curso avançado de ciências de dados funcionar, então eu perguntei sobre o trabalho e entrou a bordo.
O cliente queria um software de negociação algorítmica construído com o MQL4, uma linguagem de programação funcional usada pela plataforma Meta Trader 4 para realizar ações relacionadas a estoque.
O papel da plataforma de negociação (Meta Trader 4, neste caso) é fornecer uma conexão com um corretor Forex. O corretor fornece uma plataforma com informações em tempo real sobre o mercado e executa suas ordens de compra / venda. Para leitores que não estão familiarizados com o comércio de Forex, aqui estão as informações fornecidas pelo feed de dados:
Através do Meta Trader 4, você pode acessar todos esses dados com funções internas, acessíveis em vários prazos: a cada minuto (M1), a cada cinco minutos (M5), M15, M30, a cada hora (H1), H4, D1, W1, MN .
O movimento do preço atual é chamado de tiquetaque. Em outras palavras, um tiquetaque é uma alteração no preço de lance ou pedido para um par de moedas. Durante os mercados ativos, pode haver vários carrapatos por segundo. Durante os mercados lentos, pode haver minutos sem um tiquetaque. O tiquetaque é o batimento cardíaco de um robô de mercado de moeda.
Quando você faz um pedido através dessa plataforma, você compra ou vende um determinado volume de uma determinada moeda. Você também define os limites stop-loss e take-profit. O limite de stop-loss é a quantidade máxima de pips (variações de preço) que você pode perder antes de desistir de um comércio. O limite de lucro obtido é a quantidade de pips que você irá acumular a seu favor antes de descontar.
As especificações de negociação algorítmica do cliente eram simples: eles queriam um robô Forex com base em dois indicadores. Para o fundo, os indicadores são muito úteis ao tentar definir um estado de mercado e tomar decisões comerciais, já que eles são baseados em dados passados ​​(por exemplo, valor de preço mais alto nos últimos n dias). Muitos vieram integrados ao Meta Trader 4. No entanto, os indicadores de que meu cliente estava interessado vieram de um sistema de comércio personalizado.
Eles queriam trocar todas as vezes que dois desses indicadores personalizados se cruzassem, e apenas em certo ângulo.
À medida que eu resolvi as mãos, eu aprendi que os programas MQL4 têm a seguinte estrutura:
A função de início é o coração de cada programa MQL4, uma vez que é executado sempre que o mercado se move (ergo, esta função será executada uma vez por marca). Este é o caso, independentemente do prazo que você está usando. Por exemplo, você poderia estar operando no cronograma H1 (uma hora), mas a função inicial executaria muitos milhares de vezes por período de tempo.
Para contornar isso, forcei a função a executar uma vez por unidade de período:
Obtendo os valores dos indicadores:
A lógica de decisão, incluindo a interseção dos indicadores e seus ângulos:
Enviando os pedidos:
Se você estiver interessado, você pode encontrar o código completo e executável no GitHub.
Backtesting.
Uma vez que eu construí meu sistema de negociação algorítmica, eu queria saber: 1) se estava se comportando adequadamente e 2) se a estratégia de negociação Forex fosse usada.
Backtesting (às vezes escrito "back-testing") é o processo de testar um sistema particular (automatizado ou não) sob os eventos do passado. Em outras palavras, você testa seu sistema usando o passado como um proxy para o presente.
MT4 vem com uma ferramenta aceitável para backtesting uma estratégia de negociação Forex (hoje em dia, existem mais ferramentas profissionais que oferecem maior funcionalidade). Para começar, você configura seus prazos e executa seu programa sob uma simulação; A ferramenta irá simular cada tico sabendo que, para cada unidade, ele deve abrir a certo preço, fechar a um determinado preço e alcançar altos e baixos especificados.
Depois de comparar as ações do programa com preços históricos, você terá um bom senso se está ou não executando corretamente.
Do backtesting, eu chequei a taxa de retorno do robô FX para alguns intervalos de tempo aleatórios; Escusado será dizer que sabia que o meu cliente não iria ficar rico com isso - os indicadores que ele havia escolhido, juntamente com a lógica da decisão, não eram lucrativos. Como amostra, aqui estão os resultados da execução do programa na janela M15 para 164 operações:
Observe que nosso equilíbrio (a linha azul) termina abaixo do seu ponto de partida.
Otimização de parâmetros e suas mentiras.
Embora o backtesting me tenha deixado cauteloso com a utilidade desse robô FX, fiquei intrigado quando comecei a brincar com seus parâmetros externos e notei grandes diferenças na relação de retorno geral. Esta ciência particular é conhecida como otimização de parâmetros.
Eu fiz alguns testes difíceis para tentar inferir o significado dos parâmetros externos na Razão de retorno e surgiu algo como isto:
Você pode pensar (como eu fiz) que você deve usar o Parâmetro A. Mas a decisão não é tão direta como pode aparecer. Especificamente, observe a imprevisibilidade do Parâmetro A: para valores de erro pequenos, seu retorno muda drasticamente. Em outras palavras, o Parâmetro A é muito provável que a previsão excessiva de resultados futuros, uma vez que qualquer incerteza, qualquer alteração no total resultará em um desempenho pior.
Mas, de fato, o futuro é incerto! E o retorno do Parâmetro A também é incerto. A melhor escolha, de fato, é confiar na imprevisibilidade. Muitas vezes, um parâmetro com um retorno máximo mais baixo, mas uma previsibilidade superior (menor flutuação) será preferível a um parâmetro com alto retorno, mas uma previsibilidade fraca.
O único que você pode ter certeza é que você não conhece o futuro do mercado, e pensar que você sabe como o mercado vai atuar com base em dados passados ​​é um erro. Por sua vez, você deve reconhecer essa imprevisibilidade em suas previsões Forex.
Isso não significa necessariamente que devemos usar o Parâmetro B, porque mesmo os retornos mais baixos do Parâmetro A funcionam melhor do que o Parâmetro B; Isso é apenas para mostrar que os Parâmetros de Otimização podem resultar em testes que exageram os resultados futuros prováveis, e esse pensamento não é óbvio.
Considerações globais de comércio de algoritmo Forex.
Desde essa primeira experiência de negociação de Forex algorítmica, construí vários sistemas de negociação automatizados para clientes e posso dizer que há espaço para explorar e continuar a análise de Forex a ser feito. Por exemplo, recentemente construí um sistema baseado em encontrar os chamados movimentos de "Big Fish"; isto é, grandes variações de pips em pequenas e minúsculas unidades de tempo. Este é um assunto que me fascina.
Construir o seu próprio sistema de simulação FX é uma excelente opção para aprender mais sobre o comércio de Forex e as possibilidades são infinitas. Por exemplo, você poderia tentar decifrar a distribuição de probabilidade das variações de preços em função da volatilidade em um mercado (EUR / USD, por exemplo), e talvez criar um modelo de simulação de Monte Carlo usando a distribuição por estado de volatilidade, usando qualquer grau de precisão que você deseja. Vou deixar isso como um exercício para o leitor ansioso.
O mundo Forex pode ser esmagador às vezes, mas espero que este artigo tenha dado alguns pontos sobre como começar em sua própria estratégia de negociação Forex.
Leitura adicional.
Hoje em dia, existe um vasto conjunto de ferramentas para construir, testar e melhorar as Automatizações do Sistema de Negociação: Trading Blox para testes, NinjaTrader para negociação, OCaml para programação, para citar alguns.
Eu li extensivamente sobre o mundo misterioso que é o mercado de moeda. Aqui estão alguns write-ups que eu recomendo para programadores e leitores entusiasmados:
Compreendendo o básico.
Sobre o que Forex é negociado?
O comércio Forex (ou FX) está comprando e vendendo por meio de pares de moedas (por exemplo, USD vs. EUR) no mercado de câmbio.
Como o Forex ganha dinheiro?
Os corretores de Forex ganham dinheiro através de comissões e taxas. Os comerciantes de Forex ganham (ou perdem) o dinheiro com base em seu tempo: se eles conseguirem vender alto o suficiente em comparação com quando eles compraram, eles podem lucrar.
O que há para testar uma estratégia de negociação?
Backtesting é o processo de testar uma estratégia ou sistema específico usando os eventos do passado.
O que é o comércio algorítmico?
O comércio algorítmico é quando um robô / programa usa um conjunto de regras que dizem quando comprar ou vender.

No comments:

Post a Comment