Wednesday 15 November 2017

Avançar Amibroker Forex


Teste Walk-forward O AmiBroker 5.10 possui o modo automático de teste Walk-Forward. O teste automático Walk forward é uma técnica de projeto e validação de sistema na qual você otimiza os valores dos parâmetros em um segmento passado de dados de mercado (8221in-sample8221) e, em seguida, verifique o desempenho do sistema testando-o para a frente no tempo em dados após a otimização Segmento (8221out-of-sample8221). Você avalia o sistema com base em quão bem ele executa nos dados do teste (8221out-of-sample8221), e não nos dados em que foi otimizado. O processo pode ser repetido em segmentos de tempo subsequentes. A seguinte ilustração mostra como o processo funciona. O objetivo do teste walk-forward é determinar sempre que o desempenho do sistema de negociação otimizado seja o realista ou o resultado do ajuste de curva. O desempenho do sistema pode ser considerado realista se tiver um valor preditivo e funcionar bem em dados de mercado não vistos (fora da amostra). Quando o sistema é projetado corretamente, o desempenho de negociação em tempo real deve ser em relação ao descoberto durante a otimização. Se o sistema estiver funcionando na negociação real, primeiro deve passar por um teste de caminhada. Em outras palavras, nós realmente não nos interessamos nos resultados da amostra, pois eles são (ou devem ser) sempre bons. O que importa é o desempenho do sistema fora da amostra. É a estimativa realista de como o sistema funcionaria na negociação real e rapidamente revelará quaisquer problemas de ajuste de curva. Se o desempenho fora da amostra é ruim, então você não deve trocar esse sistema. A premissa de realizar vários passos de otimização em etapas ao longo do tempo é que o passado recente é uma base melhor para selecionar valores de parâmetros do sistema do que o passado distante. Esperamos que os valores dos parâmetros escolhidos no segmento de otimização sejam bem adaptados às condições de mercado que acompanham imediatamente. Isso pode ou não ser o caso, à medida que os mercados passam pelo ciclo bearbull, então deve-se ter cuidado ao escolher o período de in-sample. Para obter mais informações sobre o design e a verificação do sistema usando o procedimento walk-forward e todas as questões envolvidas, podemos recomendar o livro Howard Bandys: QuotQuantitative Trading Systemsquot (consulte os links na página AmiBroker). Para usar a otimização Walk-Forward, siga estas etapas: Goto Tools-gtAutomatic Analysis Clique no botão Configurações e, em seguida, mude para a guia Walk-Forward Aqui você pode ver as configurações Walk forward para otimização In-sample, fora de amostra backtest Start e End dates Marque o período inicial do início inicial Este período será movido para a frente por Etapa até o final chegar à última data. A data de início também pode avançar passo a passo ou pode ser ancorada (constante) se a verificação ancorado estiver ativada. Se você marca Usar hoje, a última data inserida será ignorada e HOJE (data atual) será usada em vez disso. Por padrão, um 8220EASY MODE8221 é selecionado, o que simplifica o processo de configuração de parâmetros WF. Assume-se que: a) O segmento fora da amostra segue imediatamente o segmento na amostra b) o comprimento do segmento fora da amostra é igual ao passo walk-forward Com base nestas duas premissas, o modo 8220EASY8221 toma a data da amostra END E apresenta a data de INÍCIO fora de amostra para o dia seguinte. Em seguida, adiciona STEP na amostra e isso se torna a data de END da amostra. Os valores de passo na amostra e fora da amostra são definidos para os mesmos valores. O modo 8220EASY8221 garante a correção das configurações do procedimento WF. Você deve usar o Modo Fácil (EOD) ao testar dados do fim do dia ou Modo Fácil (Intraday) ao testar dados intraday. A diferença é que, no modo EOD, a data de END do período anterior e a data de INÍCIO do próximo período são as mesmas - evitando assim o intervalo entre os períodos. O modo Intraday configura a data de INÍCIO do próximo período como PRÓXIMO DIA após o final do período anterior. Isso garante que o dia do limite não seja contado duas vezes ao testar dados intraday. No modo Avançado. O usuário tem controle total sobre todos os valores, na medida em que eles não podem constituir um procedimento WF válido. A interface permite desativar seletivamente as fases na amostra e fora da amostra usando caixas de seleção na parte superior (para coisas especiais, como executar backtests seqüenciais sem otimização). Todas as configurações são imediatamente refletidas na lista PREVIEW que mostra todos os segmentos ISOOS gerados e suas datas. O campo 8220 Optimization target 8221 define o código de otimização COLUMN NAME que será usado para classificar resultados e encontrar o BEST. Qualquer coluna incorporada pode ser usada (como aparece na saída de otimização), ou você pode usar qualquer métrica personalizada que você defina no backtester personalizado. O padrão é CARMDD, você pode, no entanto, selecionar qualquer outra medida incorporada do combo. Você também pode selecionar qualquer métrica personalizada que você adicionou via interface de backtester personalizada. Depois de definir as configurações de Walk-Forward, vá para Análise automática e pressione a SETA DESTINADA no botão Otimizar e selecione 8220Walk Forward Optimization8221. Isso executará a seqüência de otimizações e backtest e os resultados serão exibidos no documento 8220Walk Forward8221 que está aberto no Quadro de aplicação principal. Quando a otimização está sendo executada, você pode clicar no botão 8220MINIMIZE8221 na caixa de diálogo Progresso para minimizá-la - isso permite ver a saída Walk Forward durante as etapas de otimização. Equivalência combinada IN-SAMPLE e OUT-OF-SAMPLE As ações combinadas em amostra e fora da amostra estão disponíveis por tickers compostos OSEQUITY (períodos consecutivos de IS e OOS são concatenados e dimensionados para manter a linha de continuidade da equidade - essa abordagem pressupõe que você geralmente Falar estão acumulando lucros). Para exibir a equidade IS e OOS, você pode usar, por exemplo, isso: ISEQUITY. In-Sample Equity. cor vermelha . StyleLine) PlotForeign (relatório de resumo OUT-OF-SAMPLE (novo em 5.60) A versão 5.60 traz um novo relatório de resumo walk-forward que cobre todas as etapas fora da amostra. É visível no Report Explorer como o último e tem quotPSchot type Houve mudanças significativas para avançar testes feitos para permitir um relatório sumário fora da amostra. A mudança mais importante é que cada teste subsequente de fora da amostra usa o patrimônio inicial igual ao passo anterior que finaliza o patrimônio. (Anteriormente usou constante inicial Equidade). Essa alteração é necessária para o cálculo adequado de todas as estatísticas em todas as seções do teste fora da amostra. O relatório de resumo mostra a nota de que as métricas integradas representam corretamente todas as etapas fora da amostra, mas as métricas personalizadas de resumo são compostas usando Método definível pelo usuário: 1 valor do primeiro passo, 2 valor do último passo, 3 soma, 4 média, 5 mínimo, 6 máximo. Por padrão, o relatório de resumo mostra o valor da última etapa das métricas personalizadas, A MENOS QUE o usuário especifique o método de combinação diferente em bo. AddCustom Chamada métrica (). Bo. AddCustomMetrics tem agora novo parâmetro opcional - CombineMethod bool AddCustomMetric (string Título, variante Valor, variante opcional LongOnlyValue, variante opcional ShortOnlyValue. Variante opcional DecPlaces 2, variante opcional CombineMethod 2) Este método adiciona métrica personalizada ao relatório de backtest, questummaryquot e questummary Lista de resultados de otimização. O título é um nome da métrica a ser exibida no relatório, o valor é o valor da métrica, os argumentos opcionais LongOnlyValue, ShortOnlyValue permitem fornecer valores para colunas longshort-only adicionais no relatório do backtest. O último argumento DecPlaces controla quantas casas decimais devem ser usadas para exibir o valor. Os valores do CombineMethod suportados são: 1 valor do primeiro passo, - o relatório de resumo mostrará o valor da métrica personalizada desde o primeiro valor da etapa 2 do último passo fora da amostra, o relatório de resumo mostrará o valor da métrica personalizada a partir do último Soma da etapa 3 fora da amostra, - relatório de resumo mostrará a soma dos valores da métrica personalizada de todas as etapas da amostra 4 média, - o relatório de resumo mostrará a média dos valores da métrica personalizada de todas as etapas da amostra 5 mínimo, - o relatório de resumo mostrará o menor valor da métrica personalizada a partir de todas as etapas da amostra 6 no máximo. - o relatório de resumo mostrará o maior valor da métrica personalizada a partir de todas as etapas da amostra. Observe que determinados métodos de cálculo de métricas são complexos e para O exemplo de média deles não levaria a uma representação matematicamente correta de todos os testes fora da amostra. Os resumos de todas as métricas incorporadas são matematicamente corretos fora da caixa (ou seja, não são médias, mas métricas adequadamente calculadas usando um método apropriado para determinado valor). Isso contrasta com as métricas personalizadas, porque elas são definíveis pelo usuário e cabe ao usuário selecionar o método de combinação, e ainda pode acontecer que nenhum dos métodos disponíveis seja apropriado. Por esse motivo, o relatório inclui a nota que explica o método que definiu o usuário foi usado para combinar métricas personalizadas. AmiBroker Backtesting com Walk Forward Manager (BTWFMgr) (Professional Software Solutions). A localização era o quotDiamond Backtesting com Walk Forward Managerquot será instalado é : QuotC: BTWFMgr quot O BTWFMgr replica o equidade e o desempenho exatos, conforme mostrado no AmiBroker quando você executa uma otimização ou backtest. Neste exemplo, os principais resultados de equivalência patrimonial (1910.40, 1586.12, 1538.01 etc.) correspondem à janela QuadDiamond Backtestingquot, que mostra também uma distribuição de Todos os resultados da equidade e a equidade média (cerca de 200): (Internamente, o BTWFMgr está configurando o parâmetro CalcPL na seção de configuração do quotInitial conversação para YES). Você também pode visualizar e analisar instantaneamente cada um dos resultados do teste de desempenho do backtesting clicando no ícone de permutação verde ( 1910.49) e até mesmo ver cada posição como mostrado abaixo: Ho para preparar o seu SystemStrategy no AmiBroker (AB) Pre P) Para usar as poderosas funções do BTWFMgr - você deve converter seu AmiBroker SystemStrategy neste passo simples. A) Inicie o quotAmiBroker BTWF Code Preparation utility StartProgramsAmibroker Backtesting com Walk Forward Manager (BTWFMgr) AmibrokerBTWFCodePrepapartion - OU - clique em BTWFMgr em FunçõesPrepare sua Estratégia para BTWFMgr - OU - clique no ícone azul da marca de exclamação o ícone BTWFMgr b) Quando o quotAmiBroker BTWF Preparação do código aberto - selecione o sistema que deseja preparar para otimizações: automaticamente os diferentes nomes de entrada são mostrados que o sistema está usando. C) Clique no botão quotPreparequot d) Escolha entre: YESReplace o arquivo AFL do sistema convertidoprepare NOCreate um novo arquivo AFL de sistema convertidoprecipar com quot-BTquot adicionado ao nome do arquivo cancela o processo de preparação e) Ver arquivo convertido Se a caixa QuotShow Filequot estiver ativada O programa exibirá automaticamente o arquivo AFL convertido (RSICross. afl) AFL quotOptimizequot linhas de código O programa de pré-leitura (ABPrep) digitalizará automaticamente todos os arquivos AFL nas pastas Formula e selecionará todos os sistemas que contenham linhas como: Otimização variável (quotNamequot, Padrão .) Exemplo: RSILength Optimize (RSILength, 11, 6, 20, 1) RSIValue RSI (RSILength) Observe que você sempre deve usar variáveis ​​antes de usar o parâmetro de otimização no código como mostrado acima, para que o programa possa transmitir o valor Da variável para o módulo de coleta de dados NÃO COMO ESTO: RSIValue RSI (Optimize (RSILength, 11, 6, 20, 1)) AFL quotOptimizequot seção beginend declaration Você pode instruir Ct ABPrep apenas para pesquisar as variáveis ​​de entrada em uma seção específica ao redor de sua seção com todas as funções de otimização com os comentários quotBTWFSTARTquot e quotBTWFENDquot: Exemplo: BTWFSTART RSILength Optimize (RSILength, 11, 6, 20, 1) OverSold Optimize (OverSold, 20 , 5, 40, 5) OverBought Optimize (OverBought, 70, 60, 90, 5) BTWFEND AFL single bo. Backtest (Verdade) declaração Observe que AmiBroker permite apenas uma instância da quot bo. Backtest (True) quot function, então Quando o scanner já detecta estas instruções acima da seção de coleta de dados, ele automaticamente transformará a instrução padrão na seção de coleta de dados em um comentário com a referência de linha: Exemplo: se (Status (quotactionquot) actionPortfolio) bo GetBacktesterObject () bo. Backtest (1) já chamado na Line783 Stratregy Input Parameter Synchronization do arquivo BTWFMgr para AFL Adicionado AmiBroker AFL sincronização - usando a função includeonce: a) Clique com o botão direito na permutação e selecione qu OtSynchronize Strategy Parameterquot b) O BTWFMgr exportará todos os parâmetros para esta permutação para um novo arquivo AFL, que está incluído após a última declaração quotOptimize () quot ou BTWFEND: BTWFEND INCLUDEONCE C: Program FilesAmiBrokerFormulasSystemsRSICross-Perm. afl Inserindo Valores de Parâmetros para Perm747 c ) Um novo arquivo AFL é criado com os valores exportados para a permutação selecionada (RSICross-Perm. afl): seção de parâmetros de permutação da estratégia BTWFMgr para Permutation747 EnableTextOutput (False) RSILength 14 Input001 OverSold 15 Input002 OverBought 90 Input003 Nós também fornecemos uma amostra SPY 15Min série de dados intradiários (SPY15MIN. TXT) Copie a amostra SPY 15Min série de dados intra-dia (SPY15MIN. TXT) para a pasta principal do AmiBroker: C: Program FilesAmiBrokerSPY15MIN. TXT Para importar este arquivo para o AmiBroker: a) Clique no Assistente do FileImport b ) Clique em PICK FILES e selecione quotC: Program FilesAmiBrokerSPY15MIN. TXT quot. C) Clique em NEXT d) Ajuste as configurações conforme mostrado abaixo: e) Clique em NEXT f) Se você quiser, você pode salvar essas configurações de importação g) Clique em FINISH h) Você deve ver um novo Símbolo na guia quotSymbolquot: SPY15MIN i ) Para ver o uso de dados intradiários: ViewIntraday15 Min DiagnosticsDateConversions no módulo de coleta de dados A nova versão 1.4 mostrará o formato de data atual usado pelo AmiBroker (e o computador em geral) no arquivo de log - Exemplo: BT-AB 18:51: 42.411bDetecetd DateFormat: MDYYYY (Day2, Month1, Year3) O módulo irá mostrar-lhe os campos foram detectados o Dia, o Mês e o Ano: (Day2, Month1, Year3) no Reino Unido, por exemplo, você veria: BT-AB 18: 54: 39.886bDetecetd DateFormat: DDMMYYYY (Dia1, Mês2, Ano3) O módulo mostrará os campos onde foi detectado o Dia, Mês e Ano: (Dia1, Mês2, Ano3) Este arquivo de log de diagnóstico está em: C: BTWFMgrlogsYYYYMMDDPSSAB. log ( YYYMMDD data atual - 20110514 14 de maio de 2011) Cada nova seqüência de coleta de dados começa com: INIT 11: 44: 1 4.968 Abertura C: BTWFMgrlogs20110514PSSAB. log Cada 100 colocação de comércio AmiBroker envia para BTWFMgr é exibido com Pos: Marcador: BT-AB 18: 51: 42.412bPos000001: Entrada: 148.72 942007 1:00:00 PM (20070904130000) Sair: 135.06 2152008 4 : 00: 00 PM (0) Tamanho 67 Par 6, 5, 60 BT-AB 18: 51: 43.387bPos000101: Entrada: 154.90 10152007 11:45:00 AM (20071015114500) Saída: 154.37 10172007 10:45:00 AM ( 0) Tamanho 60 Par 7, 15, 60 BT-AB 18: 51: 43.670bPos000201: Entrada: 152.55 10192007 10:30:00 AM (20071019103000) Saída: 150.15 10222007 2:00:00 PM (0) Tamanho 62 Par 6 , 20, 60. O quotEntry: quot Mostra o quot de preço de entrada 148.72quot e data e hora de entrada como texto recebido de AmiBroker quot942007 1:00:00 PMquot e a entrada numérica convertida (20070904130000) O quotExit: quot Mostra o preço de entrada 135.06quot e data de entrada E tempo como o texto recebido de AmiBroker quot2152008 4PMquot e a entrada numérica convertida (20080215160000 A entrada quotParquot mostra os respectivos 3 primeiros parâmetros de entrada de estratégia (RSILength, OverSoldBought) Quando você puxa a lista de plug in (ToolsPlugins), você deve ver a versão 1.4: Defina o formato da data em StartControl PanelClock, Language e RegionChange o formato da data, hora ou número: (Selecione sempre os formatos com barras como delimitador - nunca um menos) e quotBacktester Settingsquot como mostrado abaixo (configure a Comissão como você quiser): Copyright 2004 -2011, Burkhard Eichberger, Soluções profissionais de software, todos os direitos reservados em todo o mundo.

No comments:

Post a Comment