Skip to main content

Livro de estratégias de negociação backtesting


Qual é a melhor maneira de testar uma estratégia de negociação de ações Em vez de lhe contar a melhor ferramenta ou processo que você pode usar para fazer backtesting, deixe-me concentrar-se nos maiores erros que você precisa evitar para fazer um backtest confiável. Estes são alguns dos fatores mais importantes que você precisa ter em mente quando testar estratégias de negociação de ações - Sobreposição de dados: Este é, de longe, o maior erro que a maioria das pessoas faz na busca de criar uma estratégia que dê resultados espetaculares. Ao criar a estratégia, se você começar a ajustar seus parâmetros de uma forma que maximize os retornos, então essa estratégia provavelmente falhará miseravelmente em condições de vida. Existem duas maneiras de superar isso: testes fora da amostra e criação de estratégias baseadas em lógica ao invés de ajustes de parâmetros de entrada. Compartilhamento avançado: isso acontece quando você usa dados para gerar sinais que de outra forma não estariam disponíveis nesse momento no passado. Por exemplo, se o final do ano financeiro de uma empresa for março e você use seus dados de ganhos para o ano anterior em 1º de abril, é muito provável que a empresa não anunciasse dados antes de maio ou junho. Isso resultaria em um viés voltado para o futuro. Sobrevida de sobrevivência. Este é um daqueles difíceis de notar erros. Digamos que você tem uma estratégia que opera a partir de uma lista de 500 ações de pequena capitalização com base em alguns indicadores técnicos. As hipóteses são que, se você tentar obter dados de preços históricos de 10 anos para esses 500 estoques para o seu backtesting, você não incluirá os dados de todos os estoques que foram retirados da lista nesse período de 10 anos. Quando você testar sua estratégia, você não contabilizaria possíveis negócios que teriam sido gerados em qualquer uma dessas ações ruins se você realmente tivesse executado essa estratégia durante esse período. Concentrando-se puramente em retornos. Há vários parâmetros que você precisa considerar para julgar a qualidade de uma estratégia. Concentrar-se puramente em retornos pode levar a problemas importantes. Por exemplo, se a Estratégia A oferecer 10 retornos ao longo de um determinado período com uma redução máxima de -2, e a estratégia B dá 12 retornos com uma redução de -10, então B não é claramente uma estratégia superior para A. Existem outros parâmetros importantes Tais como redução, taxa de sucesso, taxa de sharpe, etc. Impacto do mercado, taxas de transação. Ao analisar a viabilidade de uma estratégia, é muito importante considerar o possível impacto no mercado do comércio e também os custos de transação incorridos. Você pode ser tentado a criar uma estratégia que garanta grandes volumes de alguns estoques de baixa liquidez que tendem a dar retornos excepcionais. Mas quando você entra no mercado para executar esta estratégia, uma grande encomenda em um estoque ilíquido irá mover o preço que você não teria tido em conta em seus testes. Além disso, os custos de transação também podem alterar substancialmente os retornos, de modo que você sempre deve analisar os lucros líquidos. Mineração de dados . Isso é bastante semelhante ao problema de superposição de dados. Se você torturar os dados por tempo suficiente, confessará qualquer coisa. Essa é uma piada comum entre cientistas de dados que acreditam que, se você gastar tempo suficiente, você pode encontrar um padrão em quase qualquer conjunto de dados. Isso não significa necessariamente que esse padrão será válido no futuro. Mudança de fundamentos. Pode muito bem acontecer que você encontre uma estratégia que desempenhe excepcionalmente bem em dados passados. Mas uma mudança fundamental na dinâmica do mercado pode fazer a mesma estratégia falhar no futuro. É bem sabido que quase qualquer boa estratégia precisa continuar evoluindo com as mudanças nas condições do mercado. Quadro de tempo pequeno. É crucial testar a estratégia durante um período de tempo suficientemente longo e na mudança das condições de mercado. Isto é especialmente verdadeiro para as estratégias de negociação de ações que podem ser excepcionalmente bem em um mercado de touro, mas eliminariam sua conta bancária em um mercado de lado ou urso. Há muitas outras coisas a considerar quando testar. Mas eventualmente, a única maneira de garantir que uma estratégia funciona em condições de vida é testá-lo em condições de vida. (Disclaimer: Eu sou o co-fundador da Tauro Wealth. As opiniões apresentadas aqui são apenas minhas opiniões pessoais e são apenas para fins informativos.) Tauro Wealth é uma empresa de tecnologia financeira (Tauro Wealth) que está buscando resolver os problemas enfrentados por Investidores de varejo na Índia. Esperamos fornecer soluções globais de investimento a longo prazo em uma fração dos custos tradicionais. Mccabe Hurley. Educador de derivados de amplificador de trader que vive em Nova York. Há alguns corretores que fornecem backtesting aos clientes como parte de sua suíte de software para clientes. No entanto, na maioria das vezes, essas são caixa preta no sentido de que você não sabe como os cálculos são feitos. Em seguida, existem backtesters gratuitos on-line. Mas IMO você obtém o que você paga. O software autônomo pode ser pesquisado em: Backtesting Software A lista inclui software backtesting incluído em ferramentas de corretoras, mas também possui software autônomo. Se você está negociando para ganhar a vida (seu próprio dinheiro ou alguém) é minha preferência para usar o software autônomo. Espero que seja útil. O software de negociação Zerodha pi incorporou a opção de codificar, testar e levar uma estratégia ao vivo nos mercados de ações indianos. Selecione o estoque para backtesting - aqui selecionamos o futuro do índice Nifty para backtesting. Codificação e Backtesting Agora você pode codificar as condições de negociação para comprar, vender, comprar posição sair e sair da posição de venda. Por exemplo, nós temos uma estratégia de estratégia móvel exponencial codificada: condição de compra: ClosegtEMA (fechar, 50), o que significa comprar quando o fechamento do preço das ações exceder a média móvel exponencial de 50 dias. Condição de venda: CloseltEMA (fechar, 50), o que significa vender quando o fechamento do preço das ações é inferior a média móvel exponencial de 50 dias. Agora quadro de tempo de entrada, não há dias para voltar a testar e, em seguida, clique em Teste de volta. Agora o relatório de teste de retorno é gerado como mostrado na imagem abaixo. O relatório mostra o número de negócios, o número de negócios lucrativos, o lucro líquido, o draw down máximo, a relação risco-recompensa e etc. O software pi está disponível a custo zero para os clientes da Zerodha. Abra uma conta com eles e obtenha acesso à plataforma de negociação avançada. Back Test demo videoBack-testando suas idéias de negociação Uma das coisas mais úteis que você pode fazer na janela de análise é back-testar sua estratégia de negociação em dados históricos. Isso pode lhe dar uma visão valiosa dos pontos fortes e fracos do seu sistema antes de investir dinheiro real. Esta única característica da AmiBroker é poupar muito dinheiro para você. Escrevendo suas regras comerciais Primeiro você precisa ter regras objetivas (ou mecânicas) para entrar e sair do mercado. Este passo é a base da sua estratégia e você precisa pensar sobre isso mesmo, já que o sistema deve combinar sua tolerância ao risco, tamanho do portfólio, técnicas de gerenciamento de dinheiro e muitos outros fatores individuais. Uma vez que você tenha suas próprias regras de negociação, você deve escrevê-las como comprar e vender regras na AmiBroker Formula Lanugage (mais curto e cobrir se você quiser testar também negociação curta). Neste capítulo consideramos o sistema de cruzamento médio móvel muito básico. O sistema compraria contratos de ações quando o preço de fechamento subir acima da média móvel exponencial de 45 dias e venderá contratos de ações quando o preço de fechamento cai abaixo da média móvel exponencial de 45 dias. A média móvel exponencial pode ser calculada em AFL usando sua função embutida EMA. Tudo o que você precisa fazer é especificar a matriz de entrada e o período de média, portanto, a média móvel exponencial de 45 dias dos preços de fechamento pode ser obtida pela seguinte declaração: O identificador próximo refere-se a matriz incorporada que possui os preços de fechamento do símbolo atualmente analisado . Para testar se o preço de fechamento se cruzar acima da média móvel exponencial, usaremos a função cruzada incorporada: buy cross (close, ema (close, 45)). A declaração acima define uma regra de negociação de compra. Dá quot1quot ou quottruequot quando o preço próximo cruza acima de ema (close, 45). Então, podemos escrever a regra de venda que daria quot1quot quando ocorrer situação inversa - fechar cruzamentos de preço abaixo de ema (fechar, 45): vender cruzar (ema (fechar, 45), fechar) Por favor note que estamos usando a mesma função cruzada, mas A ordem oposta de argumentos. Então, a fórmula completa para negócios longos será assim: comprar cross (close, ema (close, 45)) vender cross (ema (close, 45), fechar) NOTA: Para criar uma nova fórmula, abra o Editor de fórmulas usando o Analysis-gtFormula Editor Menu, digite a fórmula e escolha o menu Ferramentas-gtSend to Analysis no editor de fórmulas Para testar novamente o sistema, basta clicar no botão Voltar na tela de análise automática. Certifique-se de ter digitado a fórmula que contém, pelo menos, as regras de compra e venda (conforme mostrado acima). Quando a fórmula está correta, o AmiBroker começa a analisar seus símbolos de acordo com suas regras de negociação e gera uma lista de trades simulados. Todo o processo é muito rápido - você pode voltar a testar milhares de símbolos em questão de minutos. A janela de progresso mostrará o tempo de conclusão estimado. Se você deseja interromper o processo, basta clicar no botão Cancelar na janela de progresso. Quando o processo é concluído, a lista de trades simulados é mostrada na parte inferior da janela de análise automática. (O painel de resultados). Você pode examinar quando os sinais de compra e venda ocorreu apenas clicando duas vezes no painel Comércio no resultado. Isso lhe dará sinais crus ou não filtrados para cada barra quando as condições de compra e venda forem atendidas. Se você quiser ver apenas as setas de comércio único (abrir e fechar o comércio selecionado atualmente), você deve clicar duas vezes na linha enquanto pressiona a tecla SHIFT pressionada. Alternativamente, você pode escolher o tipo de exibição selecionando o item apropriado no menu de contexto que aparece quando você clica no painel de resultados com o botão direito do mouse. Além da lista de resultados, você pode obter estatísticas muito detalhadas sobre o desempenho do seu sistema clicando no botão Relatório. Para saber mais sobre as estatísticas do relatório, verifique a descrição da janela do relatório. Alterar as configurações de teste de volta O mecanismo de teste de volta no AmiBroker usa alguns valores predefinidos para executar sua tarefa, incluindo o tamanho do portfólio, periodicidade (dailyweeklymonthly), quantidade de comissão, taxa de juros, perda máxima e paradas de lucro, tipo de negociação, campos de preços e assim em. Todas essas configurações podem ser alteradas pelo usuário usando a janela de configurações. Depois de alterar as configurações, lembre-se de executar o teste de volta novamente novamente se desejar que os resultados sejam sincronizados com as configurações. Por exemplo, para voltar a testar as barras semanais em vez de diariamente, basta clicar no botão Configurações, selecionar Semanal da caixa de combinação de Periodicidade e clicar em OK. Em seguida, execute sua análise clicando no teste Voltar. Nomes das variáveis ​​reservadas A tabela a seguir mostra os nomes das variáveis ​​reservadas usadas pelo analisador automático. O significado e os exemplos sobre a sua utilização são apresentados posteriormente neste capítulo. Permite controlar o valor do dólar ou percentual do portfólio que é investido no comércio (ver explicações abaixo) Análise automática (novo em 3.9) Até agora, discutimos o uso bastante simples do testador de back. AmiBroker, no entanto, suporta métodos e conceitos muito mais sofisticados que serão discutidos mais adiante neste capítulo. Observe que o usuário iniciante deve primeiro jogar um pouco com os tópicos mais fáceis descritos acima antes de prosseguir. Então, quando estiver pronto, veja os seguintes recursos recentemente introduzidos no back-tester: a) host de scripts AFL para escritores de fórmula avançados b) suporte aprimorado para negociações curtas c) maneira de controlar o preço de execução da ordem a partir do Script d) vários tipos de paradas no testador traseiro e) dimensionamento da posição f) tamanho do lote redondo e tamanho da marca g) conta de margem h) backtesting futuros O host de scripts AFL é um tópico avançado que é abordado em um documento separado disponível aqui e não discuto Neste documento. Os recursos restantes são muito mais fáceis de entender. Nas versões anteriores do AmiBroker, se você queria testar o sistema usando transações longas e curtas, você só poderia simular a estratégia de parar e reverter. Quando a posição longa foi fechada, uma nova posição curta foi aberta imediatamente. Foi porque as variáveis ​​reservadas de compra e venda foram utilizadas para ambos os tipos de negócios. Agora (com versão 3.59 ou superior) existem variáveis ​​reservadas separadas para abrir e fechar negócios longos e curtos: buy-quottruequot ou 1 valor abre venda de longo prazo - quottruequot ou 1 valor fecha curto comércio curto - quottruequot ou 1 valor abre cobertura comercial curta - quottruequot ou 1 valor encerra o comércio curto Som para testar as negociações curtas que você precisa para atribuir variáveis ​​curtas e variáveis. Se você usa o sistema stop-and-reverso (sempre no mercado), simplesmente atribua vender a curto e compre para cobrir a cobertura de venda curta Compre. Isso simula o modo como as versões pré-3.59 funcionaram. Mas agora o AmiBroker permite que você tenha regras de negociação separadas para ir longas e curtas como mostrado neste exemplo simples: regras de entrada e saída de negociações compradas: comprar cruzar (cci (), 100) vender cruzar (100, cci ()) curto Negocia regras de entrada e saída: cruz curta (-100, cci ()) cobertura cruzada (cci (), -100) Observe que, neste exemplo, se CCI estiver entre -100 e 100, você está fora do mercado. Controle do preço comercial AmiBroker agora fornece 4 novas variáveis ​​reservadas para especificar o preço no qual as ordens de compra, venda, curto e cobertura são executadas. Essas matrizes têm os seguintes nomes: preço de compra, preço de venda, preço reduzido e preço de cobertura. A principal aplicação dessas variáveis ​​é o controle do preço do comércio: BuyPrice IIF (dayofweek () 1, HIGH, CLOSE) na compra de segunda-feira em alta, caso contrário, comprar de perto. Então, você pode escrever o seguinte para simular pedidos de parada reais: BuyStop. A fórmula para comprar stop level SellStop. A fórmula para o nível de parada de venda, se a qualquer momento durante o dia os preços subirem acima do nível do comprador (highgtbuystop), a ordem de compra ocorre (na compra ou baixa, o que for mais alto) Compre Cross (High, BuyStop) se a qualquer momento durante o dia os preços caíram abaixo do nível do sellprice (Baixa venda) a ordem de venda ocorre (na venda ou alta, o que for menor) Vender Cruz (SellPrice, SellStop) BuyPrice max (BuyStop, Low) certifique-se de comprar o preço não inferior ao Low SellPrice min (SellStop, High) certifique-se Preço de venda não superior a alta Tenha em atenção que as variáveis ​​de preços de compra, preço de venda, shortprice e coverprice da AmiBroker com os valores definidos na janela de configurações do teste do sistema (mostrado abaixo), para que você possa, mas não precisa defini-las na sua fórmula. Se você não os define, o AmiBroker funciona como nas versões antigas. Durante o teste posterior, o AmiBroker verificará se os valores que você atribuiu ao preço de compra, preço de venda, preço reduzido e preço de cobertura se encaixam na faixa de baixo e baixo da barra dada. Caso contrário, o AmiBroker irá ajustá-lo ao preço alto (se o valor da matriz do preço for maior do que o alto) ou ao preço baixo (se o valor da tabela de preços for menor que o baixo) O objetivo do lucro é interrompido. Como você pode ver na imagem acima, novas configurações para As paradas de objetivo de lucro estão disponíveis na janela de configurações de teste do sistema. As paradas de objetivo de lucro são executadas quando o preço alto para um determinado dia excede o nível de parada que pode ser dado como uma porcentagem ou aumento de ponto do preço de compra. Por padrão, as paradas são executadas ao preço que você define como matriz de preço de venda (para negócios longos) ou tabela de preços de cobertura (para negociações curtas). Esse comportamento pode ser alterado usando quotExit no recurso stopquot. QuotExit no recurso stopquot Se você marca quotExit na caixa stopquot nas configurações, as paradas serão executadas no nível de parada exata, ou seja, se você definir o objetivo do lucro parar em 10 seu stop e o preço de compra foi 50 stop order será executado em 55, mesmo que Sua tabela de preços de venda contém um valor diferente (por exemplo, preço de fechamento de 56). A perda máxima pára o trabalho de forma semelhante - eles são executados quando o preço baixo para um determinado dia cai abaixo do nível de parada que pode ser dado como uma porcentagem ou aumento de ponto do preço de compra. Esse tipo de parada é usado para proteger lucros, pois Rastreia seu comércio, então cada vez que um valor de posição atinge uma nova alta, a parada final é colocada em um nível mais alto. Quando o lucro cai abaixo do nível de paragem final, a posição é fechada. Este mecanismo está ilustrado na imagem abaixo (10 paradas de fuga são mostradas): uma implementação de amostra de baixo nível de parada de meta de lucro em AFL: Buy Cross (MACD (), Signal ()) para (i 0 i lt BarCount i) Se (priceatbuy 0 Comprar i) priceatbuy BuyPrice i if (priceatbuy gt 0 SellPrice i gt 1.1 priceatbuy) Venda i 1 SellPrice i 1.1 priceatbuy priceatbuy 0 else Venda i 0 Este é um novo recurso na versão 3.9. O dimensionamento da posição no backtester é implementado por meio de uma nova variável reservada. Posicione a matriz de licenciamento. Agora você pode controlar o valor do dólar ou a porcentagem de carteira que é investida no valor do comércio positivo definido (dólar) que é investido no comércio, por exemplo: PositionSize 1000 invest 1000 em todos os números negativos do comércio -100 ..- 1 definição percentual: -100 dá 100 do tamanho atual do portfólio, -33 dá 33 de capital disponível, por exemplo: PositionSize -50 sempre investir apenas metade do exemplo atual de dimensionamento dinâmico da equidade: PosiçãoSize - 100 RSI () como RSI varia de 0..100 isso resultará em posição dependendo de valores de RSI - gt valores baixos de RSI resultará em maior porcentagem investida Se menos de 100 de dinheiro disponível for investido, o valor restante ganha taxa de juros Conforme definido nas configurações. Há também uma nova caixa de seleção na janela de configurações de AA: quotAllow tamanho da posição shrinkingquot - isso controla como o backtester lida com a situação quando o tamanho da posição solicitada (via a variável PositionSize) excede o caixa disponível: quando esse sinalizador é marcado, a posição é inserida com o tamanho cortado Dinheiro disponível se não for marcado, a posição não foi inserida. Para ver os tamanhos de posição reais, use um novo modo de relatório na janela de configurações de AA: lista de preços com preços e pos. Sizequot Para o final, aqui está um exemplo de técnica de dimensionamento de posição baseada em ATR de Tharps codificada em AFL: Compre a fórmula de compra de ltyour aqui. Venda 0 vendendo apenas por stop TrailStopAmount 2 ATR (20) Capital 100000 IMPORTANTE: Configure também nas Configurações: Inicial Risco de Equidade 0.01Capital PositionSize (RiskTrailStopAmount) BuyPrice ApplyStop (2, 2, TrailStopAmount, 1) A técnica pode ser resumida da seguinte forma: O capital total por símbolo é de 100.000, nós estabelecemos o nível de risco em 1 do patrimônio total. O nível de risco é definido da seguinte forma: se uma parada de trânsito em 50 ações for, digamos, 45 (o valor de dois ATRs em relação à posição), a perda 5 é dividida em 1000 riscos para dar 200 ações para comprar. Assim, o risco de perda é 1000, mas o risco de alocação é de 200 partes x 50 partes ou 10 000. Então, estamos alocando 10 da equidade para a compra, mas apenas arriscando 1000. (Excerto editado da lista de discussão AmiBroker) Tamanho do lote redondo e tamanho do tiquetaque Vários instrumentos são negociados com várias unidades quottrading ou quotblocksquot. Por exemplo, você pode comprar um número fracionado de unidades de fundo mútuo, mas você não pode comprar um número fracionado de ações. Às vezes você tem que comprar em lotes de 10s ou 100s. AmiBroker agora permite que você especifique o tamanho do bloco no nível global e por símbolo. Você pode definir o tamanho do lote redondo por símbolo na página Symbol-gtInformation (foto 3). O valor de zero significa que o símbolo não tem tamanho de lote redondo especial e usará quotDefault tamanho de lote redondo (configuração global) na página Configurações de análise automática (foto 1). Se o tamanho padrão for definido também para zero, isso significa que o número fracionado de contratos de compartilhamento é permitido. Você também pode controlar o tamanho do lote redondo diretamente da sua fórmula AFL usando a variável reservada RoundLotSize, por exemplo: Esta configuração controla o movimento do preço mínimo de um símbolo dado. Você pode defini-lo no nível global e por símbolo. Tal como acontece com o tamanho do lote redondo, você pode definir o tamanho de marca por símbolo na página Symbol-gtInformation (foto 3). O valor de zero instrui o AmiBroker a usar tamanho de tamanho quotdefault definido na página Configurações (foto 1) da janela Análise automática. Se o tamanho da marca padrão também estiver definido para zero, isso significa que não há movimento de preço mínimo. Você pode definir e recuperar o tamanho de seleção também da fórmula AFL usando a variável reservada do TickSize, por exemplo: Observe que a configuração do tamanho do tiquetaque afeta somente as transações encerradas por paradas embutidas e ApplyStop (). O backtester assume que os dados de preços seguem requisitos de tamanho de marca e não altera os arrays de preços fornecidos pelo usuário. Então, especificar o tamanho do tiquetaque faz sentido somente se você estiver usando paradas embutidas, então os pontos de saída são gerados nos níveis de preços permitidos em vez dos calculados. Por exemplo, no Japão - você não pode ter partes fracionadas do iene, então você deve definir ticksize global para 1, então o built-in pára de sair das negociações em níveis inteiros. A configuração da margem de conta define o requerimento de margem de porcentagem para toda a conta. O valor padrão da margem da Conta é 100. Isso significa que você precisa fornecer 100 fundos para entrar no comércio, e essa é a maneira como o backtester funcionou em versões anteriores. Mas agora você pode simular uma conta de margem. Quando você compra na margem, você está simplesmente emprestando dinheiro do seu corretor para comprar ações. Com os regulamentos atuais, você pode colocar 50 do preço de compra do estoque que deseja comprar e emprestar a outra metade do seu corretor. Para simular isso, basta inserir 50 no campo de margem da Conta (veja a figura 1). Se a sua equidade inicial for definida para 10000, seu poder de compra será então 20000 e você poderá entrar em posições maiores. Por favor, note que esta configuração define a margem para toda a conta e NÃO está relacionada a negociação de futuros. Em outras palavras, você pode negociar ações na conta de margem. O sinal de entrada inversa força a caixa de seleção exitquot para as configurações do Backtester. Quando está ligado (a configuração padrão) - o backtester funciona como nas versões anteriores e fecha positon já aberto se o novo sinal de entrada na direção inversa for encontrado. Se esta opção estiver DESLIGADA - mesmo que o sinal inverso ocorra, o backtester mantém o comércio aberto no momento e não fecha até que o sinal de saída (venda ou cobertura) seja gerado. Em outras palavras, quando este interruptor está desligado, o backtester ignora os sinais curtos durante transações longas e ignora os sinais de compra durante transações curtas. QuotAllow mesma opção de barra de saída (comércio de barra única) quot opção para as configurações Quando está ligado (as configurações padrão) - entrada e saída na mesma barra é permitido (como em versões anteriores) se estiver OFF - saída pode acontecer a partir de Apenas a barra seguinte (isto aplica-se aos sinais regulares, existe uma configuração separada para as saídas geradas pelo ApplyStop). Alterar para DESLIGAR permite reproduzir o comportamento do backtester MS que não é capaz de lidar com as saídas do mesmo dia. QuotActivate pára imediatamente. Esta configuração resolve o problema dos sistemas de teste que entram negociações no mercado aberto. Nas versões anteriores ao 4.09, o backtester assumiu que você estava entrando em negociações no mercado próximo, de modo que as paradas internas foram ativadas no dia seguinte. O problema era quando você, de fato, definiu o preço aberto como o preço de entrada comercial - as flutuações de preços no mesmo dia não provocaram as paradas. Houve algumas soluções alternativas baseadas no código AFL, mas agora você não precisa usá-las. Simplesmente se você trocar em abrir, você deve marcar quotActivate pára imediatamente (foto 1). Você pode perguntar por que não basta verificar o preço de compra ou de preços baixos se for igual a preço aberto. Infelizmente, isso não funcionará. Por que simplesmente porque há dias doji quando o preço aberto é igual ao fechado e o backtester nunca saberá se o comércio foi inserido no mercado aberto ou fechado. Então, nós realmente precisamos de uma configuração separada. QuotUse QuickAFLquotQuickAFL (tm) é uma característica que permite um cálculo AFL mais rápido sob certas condições. Inicialmente (desde 2003) estava disponível apenas para indicadores, a partir da versão 5.14 também está disponível na Análise automática. Inicialmente, a idéia era permitir redragamentos de gráfico mais rápidos ao calcular a fórmula AFL apenas para a parte que está visível no gráfico. De forma semelhante, a janela de análise automática pode usar um subconjunto de cotações disponíveis para calcular AFL, se o parâmetro 8220range8221 selecionado for inferior a 8220. Todas as cotações. Uma explicação detalhada sobre como o QuickAFL funciona e como controlá-lo é fornecida neste artigo da Knowledge Base: amibrokerkb20080703quickafl. Observe que esta opção funciona não só no backtester, mas também em otimizações, explorações e varreduras. Como Backtest Your Trading Strategy Correctamente Muitos são bem-sucedidos Os comerciantes compartilham um hábito 8211 eles seguem suas estratégias de negociação. Backtesting sua estratégia de negociação não vai garantir que você se tornará rentável, mas é um passo gigante na direção certa. Neste artigo, examinamos alguns viés potenciais que podem se infiltrar em seu backtesting, e analisaremos como minimizar o impacto desses preconceitos. Existem muitos problemas que podem ocorrer quando você faz o teste de seu sistema comercial, mas a maioria dos problemas se enquadra em uma das três categorias: erros posteriores, muitas variáveis ​​ou não antecipar mudanças drásticas no mercado. Cada um desses erros é explicado, juntamente com métodos de evitar erros. Clique aqui para saber como utilizar as Bandas Bollinger com uma abordagem quantificada e estruturada para aumentar suas margens de negociação e garantir maiores ganhos com Trading com Bollinger Bands 8211 A Quantified Guide. 1. Erro postdicial O erro postdicial é apenas uma maneira extravagante de dizer que você usou informações apenas disponíveis 8220 após o fato8221 para testar seu sistema. Acredite ou não, isso é um erro muito comum ao testar sistemas de negociação. Este erro é fácil de fazer. Algum software permitirá que você use os dados do today8217s no teste de um sistema de comércio, que é sempre um erro postdicial (não sabemos se os dados de today8217s ainda são úteis para prever o futuro, mas certamente sabemos se é útil para prever o passado ). Não gostaria que você pudesse usar o preço de fechamento do GBPUSD para prever o que o mercado fará hoje. Claro que você faria, eu definitivamente, mas, infelizmente, essa informação não está disponível para nós até o dia acabar. Por exemplo, você pode ter um sistema que incorpora o preço de fechamento, então isso, obviamente, significa que o comércio não pode ser iniciado até o dia acabar. Caso contrário, este é um erro postdicial. Outro exemplo pode ajudar a ilustrar o erro postativo, se você tiver uma regra em seu sistema comercial sobre os preços mais altos, então você terá um erro postativo. Isso ocorre porque os preços mais altos são geralmente definidos por dados que vieram mais tarde, no futuro. A maneira de evitar o erro postdicial é certificar-se de que, quando você faz uma prova posterior, um sistema que somente as informações disponíveis no passado nesse momento são usadas no backtesting. Com backtesting manual ou backtesting com testador de forex, você pode realizar isso com bastante facilidade, mas com backtesting automatizado o erro postativo pode se esgueirar para o seu sistema comercial. 2. Demasiadas variáveis ​​Isso também é conhecido como o 8220Degrees of Freedom8221 bias. Isso significa simplesmente que você tem muitas variáveis, ou indicadores de negociação em seu sistema de negociação. É muito possível chegar a um sistema de negociação que possa explicar o comportamento do preço passado de um par de moedas. Na verdade, quanto mais indicadores você adiciona, mais fácil ele se torna. O problema chega quando você deseja aplicar esse sistema ao futuro. Muitas vezes, quando um sistema comercial possui muitos indicadores, pode prever o comportamento do mercado durante um período extremamente bom. Mas, para o qual todo o sistema é bom, porque no futuro o sistema desmorona. A declaração acima é muitas vezes difícil para os comerciantes enfrentarem, mas é verdade. Considere o que William Eckhardt, do New Market Wizards tem a dizer sobre os sistemas de negociação. Em geral, os testes delicados que os estatísticos usam para espremer o significado dos dados marginais não têm lugar na negociação. Precisamos de instrumentos estatísticos contundentes, técnicas robustas. Obviamente, ele está alertando contra o erro de graus de liberdade e sugerindo que os sistemas de negociação simples são mais propensos a testar o tempo. Isso é absolutamente verdade. Alguns dos sistemas de negociação mais poderosos disponíveis são extremamente simples. Tenha isso em mente à medida que você troca, e como você tenta encontrar um sistema de negociação rentável. A maioria dos comerciantes descobrirá que com experiência, eles se tornam mais propensos a aceitar a visão de que o comércio mais simples é preferido em uma abordagem complexa. 3. Mudanças drásticas no mercado Muitos comerciantes esquecem de antecipar eventos imprevistos que ocorrerão no futuro. Realmente não importa que você não saiba o que vai acontecer no futuro, porque você sabe disso: haverá momentos no futuro quando os mercados se comportarão de forma errática. Quando isso acontece, você deveria ter projetado seu sistema de negociação para continuar funcionando durante esses horários. Talvez alguns exemplos possam ajudar com isso: quando Saddam Hussein foi encontrado (durante o fim de semana), os mercados cambiais reagiram drasticamente na abertura da segunda-feira. Quando a crise financeira global começou a se desenrolar em setembro de 2008, a maioria dos pares de divisas negociou com muito mais volatilidade do que se viu há anos. O fato é que haverá eventos inesperados no futuro, e esses eventos afetarão os mercados, então a melhor coisa que você pode fazer é estar preparado. Como você se prepara para o inesperado Considere estas soluções simples: 1) Exagere suas perdas esperadas. Se o seu teste de retorno revelar uma perda máxima de 5000, assumir uma perda máxima de 10.000. Seus sistemas comerciais ainda serão lucrativos nessas condições 2) Decidir sobre um nível adequado de risco para cada comércio. Lembre-se que mesmo este nível de risco provavelmente será excedido. Se você decidiu arriscar 1 em cada comércio, você deve assumir que em algum momento no futuro, você pode estar em um comércio e um evento inesperado ocorrerá, e seu comércio não perderá 1, mas 5 serão perdidos. 3) Você deve ter um plano de contingência configurado. Ou seja, como você vai sair de um comércio se algo ruim acontecer e você não pode acessar sua conta. Por exemplo, o que acontece se a sua plataforma de negociação for inacessível e você quer desesperadamente sair de um comércio? A maioria dos corretores oferecem uma linha telefônica para comerciantes para essas instâncias. Você tem o número de telefone 4) Você tem um conjunto de níveis de risco máximo. Isso seria aplicável se você tiver vários negócios abertos simultaneamente. Se você decidir arriscar 1 por comércio e você tem 7 trocas abertas simultaneamente, isso significa que você estará arriscando 7 de sua conta Ou você decidiu em um nível de risco máximo de dizer, 3 Tendo em mente que o inesperado ocorrerá, Você provavelmente deve ter um nível de risco máximo para aqueles momentos em que você possui vários negócios abertos. 5) Qual é a redução máxima (quantidade de dinheiro que seu sistema de negociação perde durante um longo período de tempo) você está disposto a tolerar Manter em mente que você (e você não está sozinho) é mais provável superestimar a gravidade das cobranças que você Pode suportar, é importante ser realista. Se você perder 30 da sua conta você vai parar de negociar E se você perder 50 Ou se você ver 70 da sua conta desaparecer Novamente, a melhor maneira de planejar as retiradas é fazer backtesting extensivo para descobrir qual o tipo de retração histórica de sua negociação Experiências do sistema e, em seguida, planejar cobranças ainda pior no futuro. Anticipar mudanças drásticas nos mercados é a melhor maneira de preservar o patrimônio em sua conta. Então, você sabe que os comerciantes bem sucedidos compartilham esse hábito 8211, eles seguem suas estratégias de negociação. Você sabe que o teste de antecedentes separa os comerciantes ricos daqueles que perdem dinheiro. Você também conhece várias maneiras de incorporar backtesting em seu regime comercial. E você conhece as armadilhas do que procura no 8211 quando você está testando, de modo que você possa tirar o máximo proveito do processo. Mas, o que exatamente, você vai sair do backtesting do seu sistema comercial. No próximo artigo, explorarei os efeitos colaterais do backtesting. Walter Peters, PhD é um comerciante profissional de forex e gerente de dinheiro para um fundo de divisas privado. Além disso, Walter é o co-fundador da Fxjake. Um recurso para comerciantes de forex. Walter gosta de ouvir de outros comerciantes, ele pode ser contactado por email na walterfxjake.

Comments

Popular posts from this blog

Mtn zakhele online trading plataforma

Vodacom YeboYethu vs MTN Zakhele Ray Mahlaka nbspnbsp 10 de fevereiro 2017nbsp15: 50 Investidores de ampla base Empowerment (BEE) esquemas de ações no setor de telecomunicações têm entusiasticamente exercido seus direitos de compra e venda de suas ações. Depois de ter sido bloqueado em acordos proibindo os acionistas de ações de negociação 8211 MTN Zakhele e Vodacomrsquos YeboYethu tornou-se negociável através over-the-counter plataformas este mês. Em seu primeiro dia de comércio YeboYethu partes abertas em R56 uma ação, mergulhando para R46 pelo fechamento do comércio. Desde então encontrou uma posição confortável em torno de R52.19, uma apreciação saudável do preço de lançamento de R25 em 2008. A imagem é um pouco diferente para MTN Zakhele. A ação abriu na R86 este mês após a sua plataforma de negociação over-the-counter sucumbiu a duas falhas técnicas a partir de novembro. Desde o seu relançamento no final de janeiro a parte tem pairado em R95. Esta é uma valorização de cinco vezes...

Santo graal de forex

O seguinte deve ser lido na íntegra antes de comprar e usar qualquer informação contida no site forexholygrail. net. Termos e Condições: Este site (Site) é de propriedade e operado por forexholygrail. net. O seu acesso e uso do Site estão sujeitos aos seguintes termos e condições (Termos e Condições) nesta página e todas as leis aplicáveis. Ao acessar e navegar no Site, você aceita, sem limitação ou qualificação, os Termos e Condições. Se você não concorda com nenhum dos Termos e Condições abaixo, não use o Site e não compre de nós. O Forexholygrail. net reserva-se o direito, a seu exclusivo critério, de modificar, alterar ou atualizar esses Termos e Condições a qualquer momento e, ao usar nosso Site, você concorda em ficar vinculado por tais modificações, alterações ou atualizações. Limitação de Responsabilidade: As informações para download ou compra no Site são fornecidas, sem garantia de qualquer tipo, expressas ou implícitas, incluindo, entre outras, as garantias implícitas de com...

Trading 5 min bollinger breakout sistema

5 min Bollinger Band Sistema Intraday Em um gráfico de barras de 5 minutos para um estoque, traçar a média móvel de 10-bar e as bandas de Bollinger para 2 desvios padrão em ambos os lados da média. Em seguida, aplique o seguinte sistema: Comprar quando o estoque cai 3 por cento abaixo de sua faixa inferior. Segure até pelo menos o final da barra de 5 minutos onde o estoque foi comprado. Vender quando a ação atinge um objetivo de lucro de 1% ou no final da segunda barra depois que o estoque foi comprado. A questão crítica é como manter o controle de todos os estoques um está interessado dentro Antes de abrir, use o software de gráficos como eSignal ou TradeStation, ou Wealth-Lab (que é o software que eu uso para todos os meus testes) para identificar o Bollinger níveis de banda para cada estoque. Em seguida, é possível com todos esses pacotes configurar alertas e até mesmo interagir com corretores de acesso direto, como Interactive Brokers ou Cybertrader, para realmente fazer os comérci...