Guia para o desenvolvimento do sistema de negociação.
A evolução contínua do software de análise técnica simplificou a criação de sistemas de negociação automatizados por computador. Alguns sistemas apenas geram os sinais para o comerciante seguir, enquanto outros colocam os negócios no mercado em nome do trader. No entanto, ser capaz de programar sua plataforma de negociação favorita é apenas o começo. Você deve ter uma estrutura para testar suas teorias de negociação para ter certeza de que os backtests lucrativos não são meramente por sorte, mas são os resultados da modelagem robusta do comportamento de um mercado.
Esta série de artigos apresentará uma abordagem simplificada para o desenvolvimento de um sistema de negociação para o mercado forex de varejo. A ferramenta de desenvolvimento de sistema que usaremos será o MetaTrader 4 (MT4), embora as idéias e o processo apresentados se apliquem a uma ampla gama de plataformas de software. A metodologia abrangerá conceitos gerais direcionados ao operador de sistema iniciante. Quando tomamos atalhos por conveniência, encaminhamos o leitor a recursos adicionais para informações mais detalhadas.
Existem cinco fases distintas no desenvolvimento do sistema de negociação:
Fase 1: Desenvolvimento do modelo de mercado e do sistema automatizado básico & mdash; o sistema automatizado básico implementa esse modelo, mas não incorpora perdas de parada ou metas de lucro. O sistema básico é para o único propósito de coletar dados para análise estatística usada nas fases posteriores de desenvolvimento.
Fase 2: gestão de riscos & mdash; o stop loss inicial (ISL). Usando os dados coletados na Fase 1 e com base na análise estatística desses dados, adicionamos um ISL à estratégia de negociação. Usamos a otimização para encontrar um parâmetro de perda que atenda às nossas necessidades. Usaremos análise de avanço para testar essa versão do sistema.
Fase 3: gerenciamento de lucros & mdash; a meta de lucro (PT). Como na Fase 2, usaremos a análise estatística de nossos dados para incorporar uma meta de lucro ao sistema. Novamente, usaremos a otimização para encontrar uma meta de lucro apropriada e, em seguida, usaremos a análise de avanço para testar essa versão do sistema.
Fase 4: gerenciamento de dinheiro & mdash; o algoritmo de tamanho de negociação (TSA). Essa fase não depende dos dados coletados na Fase 1. Em vez disso, incorporaremos o método popular de tamanho de negociação de fração fixa para determinar quantos lotes são alocados para cada transação. A literatura de comércio popular está repleta de conselhos para restringir o risco por comércio dentro de um intervalo de 1% a 3% do patrimônio da conta. Nós executaremos nossa otimização usando essas porcentagens e, novamente, usaremos a análise de avanço para testar essa versão do sistema.
Em conjunto, as fases 2 a 4 abrangem a gestão comercial, mas há mais um passo crítico:
Fase 5: análise de Monte Carlo & mdash; muitos traders param após a Fase 4. No entanto, nossos testes não estão completos nessa conjuntura e o sistema não está pronto para implementação (supondo que seja lucrativo). Apesar de nossa análise de caminhada, não podemos ter certeza de que nossos resultados não são por sorte. Em outras palavras, nosso modelo pode não descrever o comportamento do mercado com precisão; resultados favoráveis podem ter se beneficiado de um ambiente de mercado cuja ação de preço acabou de coincidir com nossa lógica. A análise de Monte Carlo ajudará a determinar se nosso modelo foi bem-sucedido por causa da sorte (aleatoriedade) ou sua capacidade de identificar e explorar um padrão real de mercado.
Este artigo cobrirá a Fase 1; artigos subseqüentes abrangerão as fases de 2 a 5.
Desenvolvendo um Sistema Automatizado de Negociação com Python.
AVISO LEGAL! Forex trading carrega uma grande quantidade de risco. Qualquer e tudo descrito neste código é apenas para fins educacionais. Eu não sou responsável por nenhuma das suas perdas ou dificuldades que você possa enfrentar como resultado do uso deste código. Mais uma vez, este destina-se a ser usado apenas para fins educacionais.
Este código está licenciado sob a licença pública GNU. Consulte Mais informação.
A idéia de escrever este post veio da enorme quantidade de pessoas no r / Forex que estavam interessadas em automatizar suas estratégias de negociação Forex. Espero manter este post curto, simples e informativo, por favor, tenha paciência comigo.
Se você não tem pelo menos um entendimento intermediário do Python, sugiro que você o leia. Existem inúmeros recursos que o ajudarão a começar, eu recomendo o codecademy.
Certifique-se de configurar uma conta demo com o Oanda e gerar uma chave de API.
Ok, vamos lá!
Primeiramente, eu recomendo usar um IDE que permita que você rode seu código python ou use Linux / OSX para que você possa testar com o terminal. Pessoalmente, eu uso o Spyder IDE que vem no pacote do Anaconda. Você pode baixar isso aqui.
Você precisará instalar duas bibliotecas python principais: oandapyV20 & amp; solicitações de.
Esta será nossa estrutura final de arquivos:
O primeiro arquivo no qual vamos nos concentrar é __init__.py:
Neste arquivo, criamos nossas variáveis para serem usadas no restante desta estratégia. Eu vou estar usando uma estratégia de crossover de média móvel simples 2, então para o meu SMAbig eu usei 50 períodos de dados, e meu SMAsmall eu usei 25 períodos de dados. a variável count é a quantidade de dados que você retorna da API do Oanda. Quanto maior o número, mais lento o sistema será executado. Coloque sua chave de API na variável "chave". Coloque o ID da sua conta na variável "accountID". Você também pode definir o tipo de dados da vela que deseja usar. Eu estou usando o gráfico de 4 horas, então, sob params, eu coloquei “H4”. Uma lista de dados que você pode obter da Oanda pode ser encontrada aqui.
Tudo bem, agora estamos no nosso próximo arquivo, candles. py:
Agora vamos ao nosso próximo arquivo, strategy. py.
Agora nosso arquivo final, app. py:
Eu recomendo olhar o resto do código no Github aqui, pois a formatação do Medium é bem terrível. O último arquivo app. py é onde declaramos nossas condicionais e decidimos se o bot deve ou não negociar.
Github Repo completo: aqui.
Indo adiante, há muito que você pode fazer quando tiver seus dados iniciais de velas. Tudo a partir desse ponto é apenas uma questão de executar equações matemáticas simples para decidir se o seu bot deve ou não ser negociado. Algumas coisas que podem ser facilmente implementadas são as retrações de Fibonacci, RSI, Heiken Ashi. As possibilidades são infinitas.
Resumo: Desenvolvendo um Plano de Negociação.
A diferença entre ganhar dinheiro e perder dinheiro pode ser tão simples quanto negociar com um plano ou negociar sem um.
Um plano de negociação é uma abordagem organizada para a execução de um sistema de negociação que você desenvolveu com base em sua análise de mercado e perspectiva, enquanto inclui gerenciamento de risco e psicologia pessoal.
Não importa quão bom seja o seu plano de negociação, ele não funcionará se você não o seguir.
Comerciantes forex que seguem uma abordagem disciplinada são aqueles que sobrevivem ano após ano.
Eles podem até ter mais negócios perdedores do que os vencedores e ainda assim ser lucrativos porque seguem uma abordagem disciplinada.
Aqui está um resumo de quais são os principais benefícios:
Negociação que é mais simples com um plano do que sem um. Redução do estresse, o que significa melhor saúde. Capacidade de avaliar seu desempenho, identificar problemas e fazer correções. Um plano de negociação ajuda a evitar que muitos problemas psicológicos criem raízes. Um plano de negociação que é respeitado rigorosamente reduzirá o número de negócios ruins. Um plano de negociação ajudará a evitar o comportamento irracional no calor do momento. Um plano de negociação permite controlar a única coisa que você pode controlar ... você mesmo! Um plano de negociação incutirá uma grande medida de disciplina em sua negociação. Os apostadores não têm disciplina nem plano de negociação. Um plano permitirá que você negocie fora de sua zona de conforto. Quantas vezes você deixou uma perda e cortou um lucro curto porque era a coisa confortável para fazer? Um plano, executado com disciplina, ajudará a evitar que isso aconteça. Um plano é o seu GPS que lhe permitirá ir de onde você estiver agora para onde você quer estar: lucratividade consistente. Seu plano de negociação é projetado de tal forma que, se você fizer uma “curva errada”, você saberá sobre isso muito rapidamente e terá a oportunidade de corrigir o problema antes que as perdas saiam do controle.
Uma última coisa antes de você ir para a próxima aula ...
Lembre-se sempre de que o plano de negociação é um trabalho em andamento.
O ambiente de mercado não é estático. É dinâmico e está em constante mudança. Conforme as coisas mudam, seu plano de negociação também deve mudar.
Avalie seu plano de negociação e processe periodicamente, especialmente quando você tiver alterações em sua situação financeira ou de vida.
Como Pipcrawler sempre diz: "Adapte-se e sobreviva!"
Lembre-se, o principal objetivo do plano de negociação é mantê-lo na tarefa e operar de maneira eficaz e eficiente para tomar boas decisões comerciais.
É, no entanto, tão bom quanto você o faz, e é completamente inútil se não for aplicado na prática.
Codificação de Sistemas de Negociação.
Por Justin Kuepper.
Como os sistemas de negociação automatizados são criados?
Este tutorial se concentrará na segunda e na terceira partes deste processo, onde suas regras são convertidas em um código que seu software de negociação pode entender e usar.
Vantagens e desvantagens.
Um sistema automatizado tira a emoção e o trabalho ocupado da negociação, o que permite que você se concentre em melhorar suas regras de estratégia e gerenciamento de dinheiro. Uma vez que um sistema lucrativo é desenvolvido, ele não requer nenhum trabalho de sua parte até que ele quebre, ou as condições do mercado exigem uma mudança. Desvantagens:
Se o sistema não for devidamente codificado e testado, grandes perdas podem ocorrer muito rapidamente. Às vezes é impossível colocar certas regras no código, o que dificulta o desenvolvimento de um sistema de negociação automatizado. Neste tutorial, você aprenderá como planejar e projetar um sistema de negociação automatizado, como converter esse design em código que seu computador entenderá, como testar seu plano para garantir o desempenho ideal e, finalmente, como colocar seu sistema em uso.
7 Essenciais para o Desenvolvimento de uma Estratégia de Negociação Algorítmica.
por Bryan Fletcher.
1. Gerenciamento de Risco.
Ao formular uma estratégia de negociação, lembre-se de quanto você tem em risco em todos os momentos.
Meça e rastreie seu risco total aberto em todos os momentos, calculando o quanto você perderia se todas as suas posições fossem interrompidas.
Você pode fazer isso medindo e ajustando o risco por posição e seu portfólio geral.
Isso significa que você sabe quanto dinheiro você perderá, em porcentagem do total do seu patrimônio, se todos os seus negócios forem interrompidos.
Vamos ver uma maneira de fazer isso em uma estratégia de exemplo simples.
Vamos dizer que você arrisca 0,5% do seu patrimônio total em cada novo negócio. A estratégia de exemplo usa uma parada móvel com base no menor preço dos últimos X períodos no período Y. É isso.
Em mercados lentos e laterais, a parada se aproximará do preço e o risco será reduzido com o passar do tempo. Em movimentos parabólicos a seu favor, o preço e seu risco aberto se moverão muito mais rápido que seu stop móvel.
Seu risco aberto no negócio pode passar de 0,5% para um número múltiplo maior do que isso. Sem um mecanismo para reduzir ainda mais o risco nesse comércio, você pode experimentar quedas significativas em sua equidade e psique se o negócio rapidamente rastrear todos os seus ganhos. Especialmente quando você tem vários negócios em todos os benefícios do mesmo movimento.
Para os comerciantes de algo, essa descoberta significa que precisamos ter um algoritmo para contabilizar o risco aberto em cada posição e seu risco geral de portfólio.
Como poderíamos fazer isso?
Bem, você poderia adicionar um algoritmo projetado especificamente para essas circunstâncias que poderia mover paradas ou reduzir posições quando o risco exceder um certo limite e depois otimizar esses parâmetros no backtesting.
Risco por negociação = X% do capital total.
Isso irá controlar quanto você arrisca inicialmente em cada negociação.
Risco Máximo de Comércio Individual = X% (Mova Paradas ou Reduza as Posições)
Esse número precisará ser igual ou maior que o número acima.
Risco Máximo da Carteira = Y% (Mova Paradas ou Reduza as Posições)
Se a sua estratégia comercializa muitos instrumentos, esse parâmetro pode manter o risco total da carteira sob controle. Veja um exemplo visual mostrando o risco total da carteira de uma estratégia de exemplo em todo o backtest:
Imagem criada usando o software Trading Blox.
Eu aprendi sobre isso da maneira mais difícil quando eu estava com muito óleo em 2008. Eu usei um indicador de longo prazo como minha saída. Em meus extensos backtests, eu não tinha considerado o controle de risco em lucros abertos, já que movimentos parabólicos como esse não eram típicos.
Minha estratégia era confiável na maioria das vezes em mercados lentos, voláteis, mas em tendência.
Quando eu estava comprando óleo em 2008 a caminho de mais de US $ 140 / bbl, foi emocionante. No entanto, ao mesmo tempo, quanto mais rápido subia, mais me preocupava em ver a que distância estavam minhas paradas. Lembro-me de esperar que se consolidasse para dar um tempo às minhas paradas.
Eu tinha um componente de lucro, mas devido ao grande tamanho do contrato no mercado de futuros, eu estava muito limitado em quanto eu poderia reduzir minha posição. Depois que eu fui parado nessa posição, certifiquei-me de implementar mudanças no meu sistema que medem e controlam o risco ajustando minhas paradas quando o risco excede um certo nível em posições individuais.
Criado com o Marketscope / Trading Station II.
O desempenho passado não é indicação de resultados futuros.
2. Seleção de Mercado, Cronograma e Construção de Portfólio.
O período de tempo (m1, h1, etc.) que você está negociando terá um impacto nos mercados potenciais para consideração em seu sistema de negociação, plataforma de backtesting, recursos baseados em nuvem necessários, API usada e se os serviços de colocation forem necessários.
Sistemas de frequência mais alta baseando triggers ou execução em barras de 1 m ou ticks podem precisar de uma solução baseada em nuvem para permitir o escalonamento da capacidade de computação para backtesting e otimização para obter melhores resultados. Algumas plataformas de negociação algorítmica de terceiros incluem isso como parte de seu pacote.
O poder de computação junto com um mecanismo de backtesting otimizado para tirar vantagem disso economizará muito tempo no processo de desenvolvimento de estratégia para qualquer sistema de negociação.
Aqueles que consideram uma estratégia de alta frequência vão querer considerar um sistema de produção que seja colocado o mais próximo possível dos servidores do seu corretor e integrado via API do FIX para garantir que todas as atualizações de preço sejam recebidas à medida que todas as cotações são empurradas em vez de puxadas. Estação ou API ForexConnect.
Ao obter um preenchimento com o preço que você quer, ou melhor, é muito importante para sua lucratividade, garantir a menor latência em sua arquitetura, código e localização do servidor, possibilitará a melhor chance de obter o máximo de liquidez no momento exato em que você precisa. isto.
Os parceiros VPS da FXCM oferecem serviços de colocation para qualquer necessidade:
Alguns corretores oferecem comissões com desconto para os traders de alto volume. Se a sua estratégia gerar mais de 50 milhões de volume nocional por mês em volume de negócios ou se você começar com um capital de risco de US $ 150 mil, poderá obter comissões com desconto de 25 a 55% com a conta Active Trader da FXCM, por exemplo.
Compreender as características subjacentes de liquidez de cada mercado também permite saber o quão escalável é sua estratégia. Liquidez no preço que você quer não é um recurso ilimitado e pode variar um pouco dependendo do mercado, hora do dia e circunstâncias.
Nosso guia Traits of Successful Traders possui alguns ótimos dados relacionados a isso.
Sistemas de baixa frequência geralmente dão mais margem de erro quando se trata de estimativas de derrapagem. O menor número de negociações totais em backtests significa que a contabilização do skid em execução impacta a lucratividade geral menos do que estratégias de frequência muito mais altas.
Se a sua estratégia utiliza pedidos de parada baseados em um canal de preços ou algum tipo de indicador de atraso para acionar um pedido, a redução da latência provavelmente não terá um impacto tão grande, exceto em determinadas situações específicas da estratégia.
A velocidade não melhora o preenchimento das paradas ou limites que estão nos servidores dos corretores.
Mercados individuais podem ter grandes variações no desempenho. Alguns podem ser ligados por longos períodos, enquanto outros ficam com lágrimas. Por causa disso, um pequeno número de mercados em seu portfólio pode levar a retornos mais voláteis do que um portfólio maior e diversificado de mercados e estratégias.
Depois, há alguns mercados que podem adicionar benefícios de diversificação ao seu portfólio, como USD / ZAR, usando uma estratégia de frequência muito menor, mas podem não ser lucrativos quando se usa prazos curtos, dependendo da sua estratégia.
3. Utilize tipos avançados de pedidos.
Um grande número de operadores apenas utiliza ordens de mercado para entrar e sair de suas operações. Em condições típicas de mercado, a maioria ficará feliz com os preenchimentos que receber. No entanto, em mercados rápidos onde há muita incerteza, os provedores de liquidez tendem a enviar cotações mais amplas para se protegerem e os preços podem se mover muito rapidamente.
Estratégias baseadas em breakout e momentum podem estar sujeitas a derrapagens se as negociações forem acionadas quando os níveis de resistência forem retirados e o fluxo de pedidos for pesado em uma direção. Somente o uso de ordens de parada para entrar em negociações garantirá a execução, mas deixa o risco de deslizamento bem aberto. As ordens de entrada de intervalo podem ser usadas para entrar na negociação dentro de um intervalo aceitável, mas rejeitar ordens em que a derrapagem é considerada inaceitável.
Algumas estratégias podem encontrar escorregamentos nulos ou até escorregamentos positivos se ordens de limite ou de preenchimento ou abatimento forem utilizadas. Um exemplo disso pode ser uma reversão à média de alta frequência ou uma estratégia baseada em eventos. O backtesting pode assumir 100% de execução em cada negociação, mas a realidade pode ser diferente em mercados rápidos.
Conclusão: entenda quais tipos de pedidos estão disponíveis para você e como eles podem ajudá-lo a obter uma execução superior.
Exemplos de tipos de pedidos
Exemplo de Comandos de Negociação.
4. Posição de dimensionamento.
Existem duas maneiras comuns de dimensionar suas posições:
Tamanho de posição com base em lote fixo: negociando o mesmo tamanho de lote, independentemente do par. Dimensionamento da posição com base no risco: o risco é calculado para cada operação com base na colocação de stop loss.
Tamanho de posição de lote fixo.
Essa abordagem é popular entre muitos traders, mas as limitações dessa abordagem podem levar a um excesso de peso nos mercados mais voláteis e underweight em mercados menos voláteis. Diferenças nas taxas de câmbio podem levar a diferenças dramáticas no tamanho do comércio nocional.
Dimensionamento da posição baseada em risco.
Muitos dos sistemas automatizados que vejo hoje têm um valor de stop loss fixo em pips para cada posição. Não sou fã dessa abordagem, pois acredito que ela pode levar a uma parada muito próxima em mercados voláteis e muito distante em mercados silenciosos. O risco por comércio também está em todo o mapa com essa abordagem.
O dimensionamento de posição com base no risco considera o risco por negociação, em que o risco é igual ao preço de entrada menos a parada inicial.
Uma abordagem sofisticada levará em consideração as faixas de preço médio exclusivas e recentes de cada mercado para determinar o posicionamento de parada.
Uma maneira de fazer isso é calcular o intervalo médio real dos últimos X períodos e colocar a parada inicial em um múltiplo desse número longe de sua entrada. Este método equilibra dinamicamente seu risco em cada mercado que você negocia com base na volatilidade exclusiva de cada mercado.
Aqui está o cálculo para o dimensionamento da posição baseada na volatilidade:
((Patrimônio total * Risco por negociação) / (ATR de período X em pips * Compensação de ATR * valor de pip por lote de 1K)) = Tamanho da negociação em lotes de 1K.
Patrimônio total = $ 100K.
Risco por comércio = 1%
X período ATR em pips = 50.
Valor de pip por lote de 1K = $ 0,10.
133.333 = Tamanho do Comércio em lotes de 1K (Arredondar para 133 para submeter o comércio de 133K EUR / USD)
Em mercados voláteis, a faixa média de preços por barra, independentemente do prazo, pode saltar consideravelmente em tempos de incerteza e resultar em mercados muito rápidos e com muito ruído sem rumo, levando muitos operadores a serem sacudidos.
No entanto, se você utilizar o recente ATR (Average True Range) para cada mercado e utilizar um múltiplo disso para determinar seu preço de parada, acredito que você está dando ao comércio uma melhor chance de sucesso filtrando o ruído de curto prazo ( volatilidade).
Por outro lado, minhas trocas comerciais favoritas sempre vêm em mercados tranquilos, com faixas de negociação estreitas. Utilizar o recente ATR para dimensionar suas posições levará a paradas mais apertadas e a tamanhos de posição maiores em mercados com faixas de preço relativas baixas.
Esse método também oferece a você o benefício de ter uma abordagem consistente de dimensionamento de posição em cada mercado comercializado, levando a um portfólio mais equilibrado e diversificado. Se você não considera a volatilidade de cada mercado para o dimensionamento de posições, a volatilidade de uma de suas posições pode ser várias vezes maior do que suas outras negociações.
Não tome minha palavra, faça backtest e estude os resultados de perto. Lembre-se, porém, o backtesting tem suas limitações e o desempenho passado não é indicação de resultados futuros.
A primeira coisa que você precisa é de dados. Eu acho que é importante testar o que você troca e negocia com o que você testa. A natureza descentralizada do mercado de câmbio significa que cada corretor provavelmente terá históricos e spreads de preços históricos diferentes.
A FXCM oferece dados históricos extensivos para todos os instrumentos gratuitamente através da nossa API ForexConnect ou através do nosso aplicativo Historical Data Downloader.
Algumas plataformas de negociação algorítmica de terceiros também oferecerão acesso a dados históricos de FXCM, mas podem não ter nosso conjunto de dados completo. Se você estiver usando um desses e quiser mais dados para fazer backtest, poderá adicionar aos seus arquivos de dados com essas opções.
É uma coisa para ter uma ótima idéia para uma estratégia de negociação e, em seguida, obtê-lo codificado para negociação ao vivo, mas se você apenas pular em negociação ao vivo ou utilizar backtests irreal, você provavelmente vai ter um tempo difícil lidar com seu primeiro rebaixamento.
Se os seus backtests não forem realistas ou utilizarem as suposições erradas, como assumir a execução perfeita em cada negociação, você poderá descobrir que os seus resultados ao vivo são muito diferentes dos seus backtests.
Um excelente mecanismo de backtesting pode ajudá-lo a descobrir o que funciona e o que não funciona antes de colocar dinheiro na linha, embora o desempenho passado não seja uma indicação do desempenho futuro.
Você deve ser capaz de explorar diferentes variações de parâmetros e examinar estatísticas de desempenho, ver resultados visuais de desempenho e ver o desempenho comercial por comércio em um gráfico.
As plataformas de backtesting mais sofisticadas terão a capacidade de examinar e otimizar os resultados em vários mercados ao mesmo tempo. Na minha opinião, isso é muito importante na descoberta de estratégias adequadas para muitos mercados diferentes e onde o risco é gerenciado para todo o portfólio de posições.
Se você não otimizar sua estratégia de negociação, as chances são de que você terá uma estratégia que não será tão boa quanto poderia ser. Por outro lado, se você otimizar demais, você pode acabar com uma estratégia que só funciona bem em dados históricos. O importante é encontrar um equilíbrio entre eles.
O maior risco que você terá ao otimizar sua estratégia com o backtesting é o ajuste de curva. Sempre desconfio de sistemas que foram otimizados com muitas variáveis diferentes ou apenas otimizados em um mercado. Dito de outra forma, você quer limitar os graus de liberdade do seu sistema.
Quanto mais parâmetros seu sistema de negociação tiver, mais fácil será otimizar perfeitamente os parâmetros do histórico de preços anteriores com resultados surpreendentes, o que provavelmente é apenas ruído e não um padrão repetitivo.
Backtesting sua estratégia em apenas um mercado pode ter o mesmo efeito. Como você está apenas simulando resultados em um fluxo de preços, será muito fácil ajustar seus parâmetros em dados passados com incríveis resultados de backtested, mas com pouca significância estatística.
Na minha experiência e pesquisa de muitos comerciantes de sistemas bem-sucedidos, muitos usam sistemas muito simples com um pequeno número de parâmetros para evitar esse risco.
Manter sua lógica de estratégia simples também ajudará a reduzir a latência geral ao gerar decisões de negociação. Se o seu sistema tiver que processar 6 pontos de verificação em vez de 10, por exemplo, você aumentará suas estatísticas de execução se estiver trocando uma estratégia muito ativa.
7. Tolerância ao Risco.
Toda pessoa tem um conjunto único de circunstâncias e disposições: sua idade, renda, despesas, capital de risco, apetite geral ao risco e se são geralmente otimistas ou pessimistas. Devido a isso, cada pessoa deve determinar que tipo de risco eles podem suportar. Se você tem pouco ou nenhum capital de risco, a melhor abordagem pode ser não negociar e continuar economizando dinheiro.
A maioria dos comerciantes de algo é otimista e acredita que eles podem alcançar melhores resultados do que o seu Joe médio. Isso pode levar a muitos planos de negociação arrojados, com alto risco, que podem ser eliminados muito rapidamente, devido a perdas, ou pelo fato de os comerciantes atingirem seu ponto de tio psicológico com a perspectiva de novas perdas.
Posso assegurar-lhe que é difícil ser tão otimista quanto você estava no início da negociação, quando você está no meio de um grande rebaixamento.
É como quando estou realmente com fome e comendo fora. Eu normalmente peço muito mais comida do que consigo suportar. No entanto, eu não percebo isso até que eu estou recheado e eu tenho 1 ou 2 tacos mais sentados no meu prato.
Na minha experiência, isso é semelhante à implementação da sua primeira estratégia automatizada. Uma estratégia que faz 20% ao ano quando o backtesting é bom, mas cara, 40% ao ano seria muito melhor e tudo o que tenho a fazer é estar disposto a aceitar rebaixamentos maiores!
Antes de lançar o meu fundo, lembro-me de estudar os resultados de desempenho de muitos Conselheiros de Negociação de Commodities sistemáticos, que são administradores de dinheiro regulamentados pela NFA. Muitos dos CTAs que há muito tempo tiveram um desempenho muito bom, mas volátil, nos primeiros anos, mas que se tornaram muito mais conservadores. Vai saber.
É minha opinião que sua verdadeira tolerância ao risco é provavelmente menor do que você pensa que é. Nunca se esqueça de que a sobrevivência e a preservação do capital é a coisa mais importante a considerar, e não o quanto você pode potencialmente fazer por ano com base nos seus backtests.
Ao executar sua estratégia ao vivo, espere experimentar completamente todo o espectro de emoções. No entanto, acho importante que você não tome decisões impulsivas com base em seus sentimentos, deixando que o medo ou a esperança levem a riscos excessivos ou tentando ultrapassar sua estratégia e fazer negócios com os sentimentos que você tem.
Fortes emoções de medo ou ganância podem levar a decisões ruins quando os sistemas são negociados. Computadores não precisam lidar com isso, então a melhor estratégia para lidar com isso, na minha opinião, é encontrar um sistema de negociação robusto, cumpri-lo e utilizar um processo de pesquisa antes de fazer qualquer alteração.
Suas emoções podem ajudá-lo a identificar pontos fracos e oportunidades potenciais em seu sistema de negociação. Se a volatilidade do seu desempenho comercial está deixando o seu medo o tempo todo, reduza seu risco.
Talvez você veja um movimento que você se arrepende de ter perdido. Ouça esse arrependimento e utilize backtests para explorar maneiras de modificar seu sistema para garantir que você não perca esse tipo de oportunidade no futuro.
Quando eu devolvi muitos lucros ao meu comércio de petróleo, fiquei muito enojado. Isto levou-me a fazer modificações no meu sistema de negociação, o que melhorou a gestão global de risco em riscos individuais de negociação aberta.
Colocando tudo junto.
Aqui estão alguns parâmetros para consideração ao projetar uma estratégia algorítmica direcional:
Risco de entrada por comércio.
Número de períodos de retorno do ATR # ATR múltiplo (multiplique este número de vezes dos períodos de retorno do ATR para o posicionamento de parada)
Filtro comercial (se aplicável)
Insira novas negociações somente quando a seguinte condição for atendida (ou seja, a tendência é baseada em médias móveis duplas)
Inserir parâmetros para o seu indicador técnico favorito Adicionar qualquer outra lógica para escalar dentro / fora de negociações (trailing stop, ter lucros em X ATR, etc.)
Risco Máximo de Comércio Individual.
Risco Máximo de Negociação Individual = X% (Considerar os topos de trabalho ou reduzir as posições)
Risco Máximo da Carteira.
Risco Máximo da Carteira = Y% (Considerações sobre os tops ou r em p asições)
Outros parâmetros importantes para backtesting:
Isso pode ser calculado em termos de pips ou em termos percentuais, desde o preço de preenchimento até o preço mais baixo / mais alto na barra em que o negócio foi preenchido.
O que você acha essencial para desenvolver e executar uma estratégia de algo?
Perguntas, comentários e feedback são bem-vindos. Me mande uma mensagem no instrutor @ dailyfx.
Para participar da minha lista de distribuição de e-mail, preencha este formulário.
OS RESULTADOS DE DESEMPENHO HIPOTÉTICOS TÊM MUITAS LIMITAÇÕES INERENTES, ALGUNS DOS QUAIS SÃO DESCRITOS ABAIXO. NENHUMA REPRESENTAÇÃO É FEITA QUE QUALQUER CONTA PODERÁ OU POSSIBILITAR LUCROS OU PERDAS SEMELHANTES AOS APRESENTADOS. DE FATO, HÁ DIFERENÇAS FREQUENTEMENTE DIFERENCIADAS ENTRE OS RESULTADOS DE DESEMPENHO HIPOTÉTICOS E OS RESULTADOS REALIZADOS SUBSEQÜENTEMENTE ATINGIDOS POR QUALQUER PROGRAMA DE NEGOCIAÇÃO PARTICULAR.
UMA DAS LIMITAÇÕES DOS RESULTADOS DE DESEMPENHO HIPOTÉTICOS É QUE ELES SÃO GERALMENTE PREPARADOS COM O BENEFÍCIO DE HINDSIGHT. ALÉM DISSO, A NEGOCIAÇÃO HIPOTÉTICA NÃO ENVOLVE O RISCO FINANCEIRO, E NENHUM REGISTRO DE NEGOCIAÇÃO HIPOTÉTICA PODE COMPLETAMENTE CONSIDERAR PELO IM-PACTO DE RISCO FINANCEIRO DE NEGOCIAÇÃO REAL. POR EXEMPLO, A CAPACIDADE PARA SUPORTAR PERDAS OU ADERIR A UM PROGRAMA DE NEGOCIAÇÃO EM PARTICULAR, DENTRO DAS PERDAS DA NEGOCIAÇÃO, É PONTOS MATERIAIS QUE TAMBÉM PODEM AFETAR A VERSÃO DE RESULTADOS REAIS DA NEGOCIAÇÃO. Existem muitos outros fatores relacionados aos mercados em geral ou à implementação. DE QUALQUER PROGRAMA DE NEGOCIAÇÃO ESPECÍFICO QUE NÃO PODE SER TOTALMENTE CONSIDERADO PARA A PREPARAÇÃO DE RESULTADOS DE DESEMPENHO HIPOTÉTICOS E TODOS OS QUAIS PODEM AFETAREM ADEUSAMENTE RESULTADOS DE NEGOCIAÇÃO REAL.
Quaisquer opiniões, notícias, pesquisas, análises, preços ou outras informações contidas neste site são fornecidas como comentários gerais de mercado e não constituem conselhos de investimento. O grupo FXCM não aceitará responsabilidade por qualquer perda ou dano, incluindo, sem limitação, qualquer perda de lucro, que possa surgir direta ou indiretamente do uso ou confiança contida nos sinais de negociação, ou em quaisquer análises de gráficos acompanhantes.
O DailyFX fornece notícias e análises técnicas sobre as tendências que influenciam os mercados monetários globais.
Комментариев нет:
Отправить комментарий