Friday 19 January 2018

Strformat amibroker forex


Agente ami Os usuários licenciados têm acesso à versão mais recente (atualmente 6.20). Novas versões são anunciadas aqui e disponíveis na zona Membros (senha necessária) Teste gratuito A versão de avaliação para download 6.00 disponível aqui pode ser usada para avaliação de software gratuitamente por até 30 dias. Não é necessária nenhuma inscrição Suporte ao produto Se você tiver algum problema ao baixar ou instalar o nosso software ou se você tiver dúvidas sobre como usar nosso software, visite as páginas de suporte da AmiBrokers. AmiBroker versão 6.20 BETA está disponível para clientes registrados agora. AmiBroker 6.20 BETA lançado (sexta-feira, 27 de janeiro de 2017 13:37:01) Uma nova versão beta (6.20.0) da AmiBroker, a última antes da versão oficial, com muitos novos recursos e melhorias acaba de ser lançada. AmiBroker 6.19.0 BETA lançado (sex., 16 de dezembro de 2017 11:45:34) Uma nova versão beta (6.19.0) do AmiBroker com Batch scheduler e outros 19 novos recursos e melhorias foram lançados. Novo design do site foi lançado (sex., 25 de novembro de 2017 15:33:40) Estamos orgulhosos de apresentar um novo projeto de site que seja amigável tanto para dispositivos móveis (escama bem para telas muito estreitas) e amigável com o alto-DPI usando o novo HTML5 padrões. Esperamos que você goste. O antigo era do ano 2000, então era sobre o momento mais alto mudar isso para sempre. Existem 8230 AmiBroker 6.18.0 BETA lançado (quarta-feira, 19 de outubro de 2017 16:07:48) Uma nova versão beta (6.18.0) da AmiBroker acaba de ser lançada. AmiBroker 6.17.0 BETA lançado (quarta-feira, 05 de outubro de 2017 21:12:18) Uma nova versão beta (6.17.0) da AmiBroker acaba de ser lançada. Medved Trader data plugin (Tue, 13 Set 2017 11:53:01) Um plugin de dados para Medved Trader foi lançado. Você pode baixá-lo a partir daqui: amibrokerbinMT. dll Este plugin requer uma versão de 32 bits do AmiBroker. Para instalar, feche qualquer instância do AmiBroker em execução e copie a DLL para a subpasta 8220Plugins8221. Observe que este plugin é basicamente o mesmo que o plugin do Quote Tracker, mas é compatível com o Medved Trader 8230 Novo plugin do IQFeed 6.0.3 (Qua, 10 de agosto de 2017 às 10:45:34) Foi lançada uma nova versão do plugin do IQFeed que apresenta o seguinte Alterações de desempenho em comparação com 5.0x: Resolução de timestamp de microssegundos no modo Tick (veja o editor Symbol-Quote para ver os timestamps) N (Título StrFormat (- .03g03g, MilliSec (), MicroSec ())) Dados históricos do BidAsk no modo Tick disponível Como arrays em Aux1 e Aux2 8230 AmiBroker 6.16.0 BETA lançado (Seg, 01 de agosto de 2017 09:08:56) Uma nova versão beta (6.16.0) da AmiBroker acaba de ser lançada. Agente de marketing Quando criamos indicadores personalizados em AmiBroker , Então, por padrão, o programa criará automaticamente a linha do título do gráfico com base no ticker selecionado e as informações que fornecemos nas chamadas de função Plot. Se usarmos a seguinte fórmula: Então a linha do título do gráfico gerado automaticamente conterá: O primeiro item é o nome do símbolo selecionado para essa janela do gráfico específico (BA neste caso), então a saída é baseada nos nomes do argumento (fornecido no 2º argumento das chamadas de função Plot dentro do código) e as cores também combinarão as cores de plotagem respectivas. O número de casas decimais depende das configurações em Ferramentas-Preferências-Diversos: Lugares decimais em títulos de títulos. Se não quisermos que algum gráfico afeta os títulos do gráfico, podemos usar o estilo do gráfico StyleNoTitle, por exemplo, alterando a 3ª linha do código acima Em: Resultaria na remoção dos valores do MA-50 da saída do título apresentada acima, mesmo que os valores do MA-50 ainda estejam apresentados no gráfico. Podemos personalizar a produção do título do gráfico ainda mais por meio da variável Title dedicada. Se definimos a string do título dentro da fórmula, ela substituirá a geração automática de títulos. Portanto, começando com o exemplo mais básico, definindo uma seqüência vazia com o uso de: esconderia a saída do título completamente, ao usar uma instrução como esta: geraria a saída de cores padrão, como a seguinte (o preço é formatado para usar 2 casas decimais por Usando a função NumToStr neste caso): também é possível definir a cor do gráfico usando a função EncodeColor (), mudando a linha acima para: resultaria em exibir o valor do preço (e outro texto que segue a chamada EncodeColor) em cores vermelhas . Agora vamos analisar a definição de Título incluída no gráfico de preços incorporado. Entre outros elementos mostrados acima, a definição de título usa modelos como ou etc. na seqüência definida. Estes são tokens especiais que são substituídos por valores apropriados em tempo de execução: dentro da Cadeia de caracteres será substituído por valores automáticos gerados pela função Plot as chamadas serão substituídas pelo símbolo do ticker será substituído pela data selecionada será substituído pelo nome de O intervalo será substituído no tempo de execução pela string 8220Open 8230, Hi 8230. Lo 8230 Close (8230) 8221 mostrando o preço atual A definição de título incorporada usa também a função StrFormat. Esta função nos permite especificar a seqüência seguida da lista de argumentos que serão inseridos na cadeia em locais onde as especificações f, g ou e são inseridas. Se usarmos o código como aquele acima, produzirá a seguinte saída: Essas especificações nos permitem formatar a sequência de saída de acordo. .0f emitirá um número sem casas decimais (com arredondamento, se necessário), tal como 393 .1f emitirá um número com 1 decimal, tal como 392.7 .2f emitirá um número com 2 casas decimais, como 392.65 .3f irá Emitir um número com 3 casas decimais, como 392.651 .4f irá produzir um número com 4 casas decimais, como 392.6510 e produzirá notação científica (mantissaexponent), como 3.92651e2 (3.92651 10 2) g usa formatação automática e exibe como Muitas casas decimais, conforme necessário, para mostrar a precisão total do número dado (392.651) A documentação da função StrFormat está disponível no manual. No exemplo acima, a definição do título completo está incluída na função N (). Isso impede apenas de exibir a seqüência do título dentro da janela Interpretação, portanto, usar N () não afeta realmente a saída dentro do gráfico. Artigos relacionados: 10 de fevereiro de 2017 Quando comparamos as posições de várias linhas umas contra as outras, precisamos lembrar sobre o uso de operadores corretos, então nossa declaração AFL devolve resultados corretos. Consideremos um conjunto de médias móveis usando períodos 10, 20, 30 e 40, desenhados com o seguinte código: Quando queremos especificar uma condição em que MA10 seja o mais alto de todas as linhas, acima de MA20, que está acima de MA30 e com MA40 no fundo, não podemos simplesmente escrever: Pode parecer estranho que tal afirmação seja aceita sem um erro, mas na verdade é sintaticamente correta. Isto é devido ao fato de que True e False são representados pelos números 1 e 0, respectivamente, então todas as comparações realmente têm valor numérico que permite que essa afirmação seja avaliada e produza resultados numéricos. A declaração acima é avaliada da esquerda para a direita e seria equivalente a: Usando o operador retornará uma matriz de valores Verdadeiros ou Falso (1 ou 0). Portanto, 8211 o resultado da comparação MA10 MA20 (que é True. Que é igual a 1) seria então comparado ao MA30, resultando na verificação de 1 MA30, então se essa condição retornar False (ie 0), acabaríamos com 0 MA40 Comparação que retornaria False (0) como o resultado final. É claro que isso não é o que queremos obter. É por isso que devemos usar o operador AND, porque queremos verificar que várias condições sejam atendidas ao mesmo tempo, ou seja: MA10 está acima de MA20 E deve usar ANDOR para combinar múltiplas condições MA20 está acima de MA30 E deve usar ANDOR para combinar múltiplas As condições MA30 estão acima de MA40 Portanto, devemos escrever a declaração AFL da seguinte maneira: Então, como uma orientação geral 8211 se você tiver várias condições booleanas (simno) que deseja combinar em uma única regra, você precisa usar o operador AND entre as condições se Você quer o resultado verdadeiro quando todas as condições forem cumpridas ao mesmo tempo. Da mesma forma, se você deseja um resultado verdadeiro quando se encontrar uma (ou mais) condição múltipla, então você precisa usar o operador OU. Artigos relacionados: 9 de fevereiro de 2017 Ao clicar duas vezes no indicador selecionado na janela Gráficos para exibi-lo em um novo painel de gráfico ou aplicar nosso código personalizado como indicador, por padrão, a maioria das fórmulas de indicadores não mostrará o eixo da data, A menos que especificemos esse requisito em nossa fórmula. Para exibir o eixo da data, precisamos clicar no gráfico com o botão direito do mouse, selecionar a guia Parameters-Axes038Grid e, em seguida, definir a opção Mostrar data do eixo para YES. Existe também uma maneira de pré-codificar essa condição na nossa fórmula de indicadores personalizados. Para habilitar a exibição do eixo dos dados quando aplicamos a nova fórmula do indicador, precisamos apenas adicionar a chamada de função SetChartOptions () relevante: Mais informações sobre a função SetChartOptions podem ser encontradas na referência AFL: AmibrokerfSetChartOptions Artigos relacionados: 6 de fevereiro de 2017 AmiBroker permite Automatizar a execução das ordens através da conta Interactive Brokers. Para usar os recursos de negociação automática é necessário instalar um componente especial que se comunica com o IB TWS 8211, o instalador da interface e a documentação estão disponíveis em: Por padrão, o controlador IB está instalado na pasta de instalação de versão de 32 bits. Portanto, 8211 é a seguinte localização no sistema Windows de 64 bits: se estiver usando uma versão de 64 bits, é necessário copiar manualmente os arquivos BrokerIB. exe e BrokerIB. xml para a pasta de instalação da versão de 64 bits, por meio de Por padrão, isto é: Artigos relacionados: 5 de fevereiro de 2017 Às vezes, quando otimizamos nosso sistema, podemos querer usar apenas um subconjunto de todas as permutações de parâmetros para nossa análise e ignorar os outros que não atendem aos nossos requisitos. Por exemplo, 8211 se testarmos uma estratégia de tendência simples, onde inserimos uma posição longa quando o MA curto cruza acima do MA longo usando o código, como: então, o valor do parâmetro ShortPeriods deve permanecer menor do que os períodos longos, caso contrário as regras de negociação funcionariam contra o principal Princípio da estratégia testada. Existe uma maneira fácil de ignorar os conjuntos de parâmetros indesejados usando a declaração Excluir em nosso código. Se a variável for verdadeira 8211, o backtester não calculará nenhuma estatística para essa execução específica: a guia Informações da informação da janela Análise mostra a diferença entre a primeira execução (todas as 10000 execuções de backtest) e a segunda com a declaração Excluir. Observe o número reduzido de etapas e o tempo de otimização reduzido. Artigos relacionados: 4 de fevereiro de 2017 Se quisermos identificar datas, quando os níveis de MAE e MFE foram alcançados durante a vida comercial 8211, podemos usar o exemplo de código apresentado abaixo. A fórmula irá processar os negócios um por um, ler a propriedade BarsInTrade para saber quantos bares ele levou desde a entrada de comércio até a saída e, em seguida, use as funções do HHVBars LLVBars para identificar quantas barras passaram desde a menor baixa ou alta alta dentro do comprimento comercial. Com a informação, o valor mais alto ou mais baixo foi observado N-bars atrás 8211 ele mudará a matriz DateTime de acordo com o 8211, então, com o uso da função Lookup () apontando para a barra de saída 8211, podemos ler a data em que o HHVLLV foi observado dentro da vida comercial (BarsInTrade) . Artigos relacionados: 3 de fevereiro de 2017 Todas as análises no AmiBroker, incluindo gráficos, janela de análise ou comentários, são baseadas no código AFL subjacente, que está sendo executado pelo programa para produzir o resultado desejado. Portanto, 8211 as mudanças que vemos nos gráficos ou nos resultados da análise (por exemplo, gráfico 8211 atualizado com novos tiques) significam que o programa recebeu alguma entrada, então, com base nessas informações, recalculou a fórmula e apresentou os resultados atualizados. Estes atualizações de recálculos de fórmula dependem de vários fatores: em um banco de dados local, que não é atualizado por um plug-in em tempo real, a fórmula seria atualizada se realizarmos qualquer ação, como clicar, deslocar, ampliar, alterar parâmetros, escolher outro símbolo ou intervalo , Importando novos dados, etc. Além das ações listadas em (1), se estivermos executando um feed em tempo real baseado em plugin, o gráfico é atualizado com base no intervalo de atualização 8220Intraday8221 definido nas Ferramentas 8211 Preferências 8211 Intraday. Se inserimos 0 neste campo, isso resultará em um gráfico atualizado com cada novo tico (até 10 vezes por segundo). Também é possível forçar determinada taxa de atualização usando a função dedicada RequestTimedRefresh () no código AFL: amibrokerfRequestTimedRefresh Também é possível atualizar manualmente o gráfico (ou todos os gráficos e janelas) usando o menu Visualizar-Atualizar (ou Visualizar-Atualizar Tudo). Vale ressaltar que as fórmulas de gráfico são atualizadas apenas quando são colocadas nas folhas de gráfico ativas. Folhas não ativas apenas 8216don8217t exist8217, elas só são criadas quando você clica em uma aba inferior (guia de folha) para torná-las visíveis e destruídas imediatamente quando outra folha fica ativa. Isso garante que recursos de CPU preciosos não sejam desperdiçados em folhas de gráfico invisíveis. Além disso, 8211 por padrão gráficos em janelas de gráfico minimizado ou quando múltiplo MDI janelas estão abertas e um é maximizado, as janelas em segundo plano que são completamente obscurecidas por outros ou janelas minimizadas não são redesenhadas durante a atualização RT normal. No entanto, podemos chamar a função RequestTimedRefresh com o argumento apenas visível definido como Falso e isso irá forçar atualizações regulares em tais janelas também. Com relação à janela de análise 8211 em geral, a fórmula é executada quando executamos, e. Scan, Exploration, Backtest, etc. A janela de análise executa as fórmulas em vários segmentos em paralelo (este tutorial explica os aspectos do multi-threading: amibrokerguidehmultithreading. html). A execução repetida (para manter o código executado uma e outra vez) na janela Análise também pode ser ativada com a opção 8220Auto-repeat8221, o seguinte artigo da Base de Conhecimento explica isso em detalhes: Por último, mas definitivamente não menos importante, precisamos lembrar que AmiBroker pode e vai Execute algumas execuções internamente para seus próprios propósitos, tais como: durante a verificação de sintaxe da AFL que acontece ao aplicar o gráfico, ou enviar o código para a janela de Análise ou atualizar a fórmula existente quando está prestes a exibir a janela de Parâmetros pela primeira vez para um gráfico ou Durante a operação Parameters8217 8220Reset All8221 no início da Otimização quando ele lê as instruções Optimize () para configurar o processo de otimização e ou otimizadores inteligentes no início de cada passo Walk-forward In-sample novamente para configurar os parâmetros de otimização. Bottom line: nunca devemos assumir Que determinada fórmula só será executada, por exemplo, N vezes em determinados períodos de tempo, porque tudo depende realmente dos fatores acima, nossas ações e mudança de entrada. Artigos relacionados:

No comments:

Post a Comment