Com o depurador visual integrado. Matrix artihmetic, simulador hiper rápido de Monte Carlo. Novo Editor de fórmulas com trechos de código. Em camadas de baixo nível gráficos. Massivamente paralelo Multi-Threaded Charting e Rendering. Novo módulo Multi-Threaded Analysis. Teste Automático Avançado. Novas funções Ranking, gráficos flutuantes com vários monitores, link de símbolos e intervalos, criação de indicadores de arrastar e soltar, Indústria mais rápida, multi-threaded ilimitado-símbolo Backtesting e Otimização True Portfolio-Level, agora com algoritmos Smart Evolutionary, Suporte ao sistema neutro e manipulação de moeda múltipla, configuração com um clique e atualização de listagem de ações dos EUA com atribuições do setor e da indústria. Dados fundamentais, suporte de tempo múltiplo, gráficos de otimização 3D, novo gerenciador de contas, interface de negociação automatizada, perfil de volume, gráficos orientados a objetos, camadas de desenho, layouts de várias janelas, alertas baseados em fórmulas, editor de fórmulas fácil de usar , Função de equidade, indicadores compostos originais, browser de pesquisa incorporado da correia fotorreceptora, ligação direta ao eSignal, corretores interativos, IQFeed, myTrack, FastTrack, QP2, TC2000, todo o alimento compliant DDE, MS e mais. Download FREE TRIAL clique para ampliar Razões pelas quais somos melhores que a concorrência: FEATURE RICH - o conjunto mais completo de recursos disponíveis, além de adicionar novos recursos a cada dia, por solicitação do usuário. CONFIABILIDADE e PRECISÃO - testados e utilizados diariamente por comunidade de milhares de comerciantes, gestores de fundos, etc. Nosso backtester pode reproduzir praticamente qualquer estratégia de negociação com precisão na vida real, incluindo estratégias complexas de reequilíbrio, As otimizações de programação e montagem de última geração permitem que suas análises sejam executadas 10 vezes mais rápido do que outros produtos concorrentes, cada painel de gráfico é executado em paralelo em linhas separadas, permitindo a plena utilização de todos os núcleos do processador. Nova janela de análise totalmente utiliza multi-pisar e fornece inigualável dados trituração power. FLEXIBLE E CUSTOMIZÁVEL - você não será limitado pelo software anymore. Com AmiBroker o limite é apenas a sua imaginação. AmiBroker é incrivelmente tweakable e pode ser ajustado para caber suas necessidades de troca pessoais. OPEN ARCHITECTURE - nós fornecemos uma API LIVRE (interface de programação de aplicação) que permita ligar a qualquer fornecedor de dados. A API vem com código-fonte do indicador real e plug-ins de dados. Motores inteligentes de otimização de código aberto (Particle Swarm, Tribes, CMA-ES). Existe também uma extensa interface de automatização OLE / ActiveX disponível. MODERNA E COMPATIBLE - o nosso software é compatível e bem testado com todas as versões modernas do Windows, incluindo Windows 10, Windows 8, Windows 7, Windows Vista. Windows XP. Windows 2000, bem como com Windows 95, 98, Millenium, NT 4. AmiBroker tem versões nativas de 32 bits e 64 bits para maximizar o desempenho. Não importa qual a versão do Windows que você usa, você pode executar o AmiBroker em it. COST-EFFECTIVE - não só a taxa de licença é baixa, mas também você tem 12 meses de atualizações gratuitas. Suporte gratuito. Plug-ins gratuitos e complementos. E por último mas não menos importante, você também pode usar DADOS GRÁTIS de um número de sources. FAIR, NO-NONSENSE LICENSING desfrutar condições de licenciamento extremamente honesto e amigável: você compra o programa e você possui-lo para sempre. Sem assinatura, você pode optar por atualizar ou não, sempre que quiser. A licença é pessoal, por isso, se você possui 3 computadores, você pode usar sua única licença pessoal AmiBroker em todos eles, sem problemas. AmiBroker global é um dos melhores investimentos que você pode fazer para melhorar sua negociação. E porque estamos confiantes de que temos o melhor produto lá fora, você pode tentar tudo gratuitamente por 30 dias Você não tem nada a arriscar e tudo a ganhar com AmiBroker. Outubro 14, 2011 Adicionado em 29 de fevereiro de 2012, pontos adicionais a considerar: 1) Este sistema depende de obter enchimentos exatos no preço aberto. Para obter esses preenchimentos, é necessário um feed de dados com atraso mínimo de qualidade e habilidades avançadas de programação para implementar a automação do comércio. 2) Ao definir o preço de entrada ligeiramente abaixo do preço Open (tentando melhorar o desempenho) o sistema falha miseravelmente. Mesmo melhorando o preço por apenas um centavo mata o sistema. Isso sugere que a maior parte do lucro vem de dias em que o preço do Open era igual ao diário Baixo, ou seja, o preço subiu do Aberto e nunca caiu abaixo dele. Isso, obviamente, é óbvio. Para confirmar isso eu adicionei esta condição de teste (olha para frente) para excluir dias em que Open Low: Buy Buy AND NOT O L Isso mata o sistema e prova que a maior parte do lucro vem de dias onde OL. Para confirmar ainda mais isto eu adicionei a condição oposta: Buy Buy AND O L Isto dá lucros praticamente infinitos e prova que a maioria dos lucros vêm de dias em que o preço suba imediatamente do Open e nunca retorna abaixo dele. Tentando melhorar o preço de entrada é um erro um deve entrar em um conjunto Stop 1-2 ct acima do preço Open, isso irá eliminar dias quando o preço cai e nunca volta para trás. Isso melhora significativamente o desempenho. 3) Este sistema comércios knee-jerk trader-respostas / padrões. Tais padrões são geralmente afogados por grande volume de negociação, portanto, este sistema funciona muito melhor quando você selecionar tickers com volumes entre 500.000 e 5.000.000 partes / dia. Isso também melhora significativamente o desempenho. Adicionando os dois recursos acima resulta em uma curva de equidade muito melhor do que o mostrado abaixo. Desculpe, não tenho tempo para documentar o acima em maior detalhe. Boa sorte Este post descreve uma idéia de negociação de Long-somente muito simples que compra em uma porcentagem dada abaixo de baixa de ontem, e sai no próximo dia8217s aberto. Enquanto às vezes pode ser difícil obter o preço exato Open, a alta rentabilidade deste sistema torna um bom candidato para experimentação adicional. O sistema funciona bem com Watchlists como o N100, SP500, SP1500, Russel 1000, etc. Desempenho no Russel 1000, com máx. Posições abertas definidas para 1, para o período de 12/10/2003 a 12/10/2011, se parece com isto: Algumas das outras Listas de Exibição dão menos exposição (lucros), mas isso vem com DDs mais baixos. As comissões foram fixadas em 0,005 por ação. Nenhuma margem utilizada. Nenhuma classificação explícita é usada, os tickers são negociados com base na classificação alfabética na Watchlist. Isso pode parecer estranho, mas é significativo: ao reverter esse tipo de sistema falha. Isso pode significar que, devido a problemas de varredura em tempo real, os símbolos listados no topo deste tipo podem ser comercializados de forma diferente daqueles listados na parte inferior. Preste atenção à liquidez (você pode querer negociar mais de uma posição) e deslizamento (entrada é bastante livre de risco, mas sai pode ser problemático). Os DDs são significativos, mas podem ser compensados com entradas e saídas melhoradas em tempo real. Ao negociar automaticamente pode ser possível colocar ordens de entrada OCA DAY-LMT para todos os sinais e apenas esperar e ver o que preenche. Como as saídas são mais difíceis do que as entradas, você pode querer explorar outras estratégias de saída. Os valores padrão dos parâmetros são apenas escolhidos de um chapéu. Quase certamente você pode otimizá-los ou ajustá-los dinamicamente para tickers individuais. Eu testei brevemente este sistema no modo Walk-Forward e os resultados foram rentáveis para todos os anos testados. Exceto para o número de ações negociadas parâmetros parecem não muito crítico. Sobre-otimização doesn8217t parece um problema neste caso. O código abaixo é muito simples e requer poucas explicações. No entanto, é importante compreender que este sistema goza de uma pequena vantagem negociando no Open, e calculando o TrendMA usando o mesmo preço Open. Alguns podem interpretar isso como vazamento futuro, no entanto, se você trocar este sistema em tempo real, não é. Muitas pessoas não percebem que se você trocar no Open você também pode usar esse preço em seus cálculos 8212, desde que você executá-los em tempo real 8212 é aqui onde AmiBroker e tecnologia pode lhe dar uma vantagem. Se você Ref () de volta o TrendMA por uma barra o sistema ainda é muito rentável no entanto DDs aumentar para algumas Watchlists. Se você usar investimentos fixos a diferença é desprezível. O procedimento de negociação seria começar a digitalização antes de o mercado abrir e remover tickers que são preços tão remoto que eles são improváveis para atender o OpenThresh. Assim, você pode começar a digitalizar 1000 símbolos, mas muito rapidamente o número digitalizado vai diminuir para apenas uma dúzia ou mais tickers. Quando você se aproximar 9:30 am sua varredura em tempo real será muito rápido e você será capaz de colocar a sua ordem LMT muito perto do Open 8211 você pode até ser capaz de melhorar o preço Open. Mesmo que algumas pessoas olhou para o código abaixo e não encontrou nada de errado, os lucros parecem bastante elevados para um sistema tão simples. Informe os erros que você pode ver. Arquivado por Herman às 7:03 pm sob Idéias (Experimental) Comentários desativados no EOD Gap-Trading Portfolio sistemaComo otimizar o sistema de negociação NOTA: Este é um tópico bastante avançado. Por favor leia os tutoriais anteriores da AFL primeiro. A idéia por trás de uma otimização é simples. Primeiro você tem que ter um sistema de comércio, este pode ser um crossover média móvel simples, por exemplo. Em quase todos os sistemas existem alguns parâmetros (como período de média) que decidem como se comporta o sistema (isto é, é bem adequado para longo ou curto prazo, como é que reage a estoques altamente voláteis, etc.). A otimização é o processo de encontrar valores ótimos desses parâmetros (dando maior lucro do sistema) para um dado símbolo (ou um portfólio de símbolos). AmiBroker é um dos poucos programas que permitem otimizar seu sistema em vários símbolos ao mesmo tempo. Para otimizar seu sistema você tem que definir de um até dez parâmetros para ser otimizado. Você decide qual é o valor mínimo e máximo permitido do parâmetro e em que incrementos esse valor deve ser atualizado. AmiBroker, em seguida, executa vários testes de volta o sistema usando TODAS as combinações possíveis de valores de parâmetros. Quando este processo é terminado AmiBroker exibe a lista de resultados classificados por lucro líquido. É possível ver os valores dos parâmetros de otimização que dão o melhor resultado. Escrevendo a fórmula AFL A otimização no back tester é suportada através de uma nova função chamada optimize. A sintaxe desta função é a seguinte: variável optimize (quot Descrição quot, default. Min. Max. Step) variável - é a variável AFL normal que recebe o valor retornado pela função optimize. Com o backtesting normal, varredura, exploração e modos de comentar a função de otimização retorna o valor padrão, então a chamada de função acima é equivalente a: default de variável Em modo de otimização otimizar função retorna valores sucessivos de min a max (inclusivamente) com step stepping. Quot Descrição é uma string que é usada para identificar a variável de otimização e é exibida como um nome de coluna na lista de resultados de otimização. O padrão é um valor padrão que otimizar a função retorna nos modos de exploração, de indicador, de comentário, de varredura e de back-test normal min é um valor mínimo da variável otimizada max é um valor máximo da variável sendo otimizado step é um intervalo usado para aumentar a Valor de min para máximo AmiBroker suporta até 64 chamadas para otimizar a função (portanto, até 64 variáveis de otimização), observe que se você estiver usando otimização exaustiva, então é realmente boa idéia para limitar o número de variáveis de otimização para apenas alguns. Cada chamada para otimizar gerar loops de otimização (max - min) / etapa e múltiplas chamadas para otimizar multiplicam o número de execuções necessárias. Por exemplo, otimizar dois parâmetros usando 10 etapas exigirá 1010 100 loops de otimização. Call optimize função apenas ONCE por variável no início da sua fórmula como cada chamada gera um novo otimização loops Otimização de símbolo múltiplo é totalmente suportado por AmiBroker O espaço de pesquisa máximo é 2 64 (10 19 10,000,000,000,000,000,000) combinações 1. Otimização de variável única: sigavg Otimizar (Sinal (12. 26. sigavg), MACD (12. 26)) Sinal (12. 26. sigavg) 2. Otimização de duas variáveis (adequado para gráficos em 3D) por Otimizar (por 2. 5. 50. 1) Nível Otimizar (nível 2. 2. 150. 4) Comprar Cross (CCI (per), - Level) 3. Otimização de variáveis múltiplas (3) Otimização de variáveis (mfast) Optimize (MACD Slow, 26. 17, 30. 1) (Mfast, mslow, sigavg), MACD (mfast, mslow)) Sinal (mfast, mslow, sigavg)) Depois de entrar A fórmula basta clicar no botão Otimizar na janela QuotAutomatic Analysisquot. AmiBroker vai começar a testar todas as combinações possíveis de variáveis de otimização e relatar os resultados na lista. Após a otimização é feita a lista de resultado é apresentado classificado pelo lucro líquido. Como você pode classificar os resultados por qualquer coluna na lista de resultados é fácil obter os valores ideais de parâmetros para o menor drawdown, menor número de comércios, maior fator de lucro, menor exposição ao mercado e mais alto risco ajustado retorno anual. As últimas colunas da lista de resultados apresentam os valores das variáveis de otimização para determinado teste. Quando você decide qual combinação de parâmetros se adequa às suas necessidades, o melhor que você precisa fazer é substituir os valores padrão em otimizar chamadas de função com os valores ideais. No estágio atual você precisa digitá-los manualmente na janela de edição de fórmula (o segundo parâmetro de otimizar a chamada de função). Exibição de gráficos de otimização animados 3D Para exibir o gráfico de otimização 3D, é necessário executar a otimização de duas variáveis primeiro. Duas otimização variável precisa de uma fórmula que tenha 2 chamadas de função Optimize (). Um exemplo de fórmula de otimização de duas variáveis se parece com isto: por Otimizar (por 2. 5. 50. 1) Nível Otimizar (nível 2. 2. 150. 4) Comprar Cross (CCI (per), - Level) Sell Cross (Level, CCI (per)) Após digitar a fórmula, você precisa clicar no botão quotOptimizequot. Quando a otimização estiver concluída, você deve clicar na seta suspensa no botão Otimizar e selecionar Exibir gráfico de otimização 3D. Em poucos segundos, um traçado de superfície tridimensional colorido será exibido em uma janela do visualizador de gráfico 3D. Um exemplo de gráfico 3D gerado usando a fórmula acima é mostrado abaixo. Por padrão, os gráficos 3D exibem valores de lucro líquido contra variáveis de otimização. No entanto, é possível traçar gráfico de superfície 3D para qualquer coluna na tabela de resultados de otimização. Basta clicar no cabeçalho da coluna para classificá-lo (uma seta azul aparecerá indicando que os resultados de otimização são classificados por coluna selecionada) e, em seguida, escolha Exibir gráfico de otimização 3D novamente. Ao visualizar como seus parâmetros de sistemas afetam o desempenho de negociação, você pode decidir mais facilmente quais valores de parâmetros produzem quotfragilequot e quais produzem quotrobustquot desempenho do sistema. Configurações robustas são regiões no gráfico 3D que mostram mudanças graduais e não abruptas no gráfico de superfície. Gráficos de otimização 3D são uma ótima ferramenta para evitar ajuste de curva. Curve-fitting (ou sobre-otimização) ocorre quando o sistema é mais complexo do que ele precisa ser, e toda essa complexidade foi focada em condições de mercado que podem nunca acontecer novamente. Mudanças radicais (ou picos) nos gráficos de otimização 3D mostram claramente áreas de sobre-otimização. Você deve escolher a região do parâmetro que produz um platô largo e largo na carta 3D para sua troca real da vida. Os conjuntos de parâmetros que produzem picos de lucro não funcionarão de forma confiável na negociação real. Controles de visualizador de gráfico 3D AmiBrokers visualizador de gráfico 3D oferece capacidades de visualização total com rotação de gráfico completo e animação. Agora você pode ver os resultados do sistema de todas as perspectivas possíveis. Você pode controlar a posição e outros parâmetros do gráfico usando o mouse, barra de ferramentas e atalhos de teclado, o que você achar mais fácil para você. Abaixo você encontrará a lista. - para girar - mantenha pressionado o botão do mouse ESQUERDO e mova-se em direções X / Y - para Zoom-in, zoom-out - mantenha pressionado RIGHT botão do mouse e mover-se em X / Y direções - para mover (traduzir) E tecla CTRL e mova-se em direções X / Y - para Animar - mantenha pressionado o botão esquerdo do mouse, arraste rapidamente e solte o botão ao arrastar ESPAÇO - animar (auto-gire) TECLA DE SETA ESQUERDA - gire vert. Esquerda TECLA DE DIREITA - rotate vert. Direita SETA PARA CIMA - girar horiz. Up DOWN ARROW KEY - girar horiz. NUMPAD 4 - mover para a esquerda NUMPAD 6 - mover para a direita NUMPAD 8 - mover para cima NUMPAD 2 - mover para baixo PAGE UP - nível da água para cima PAGE DOWN - nível de água baixo Otimização inteligente (não exaustiva) A AmiBroker oferece agora uma otimização inteligente (não exaustiva) além da busca regular e exaustiva. A pesquisa não exaustiva é útil se o número de todas as combinações de parâmetros do sistema de negociação determinado for simplesmente demasiado grande para ser viável para uma pesquisa exaustiva. Busca exaustiva é perfeitamente bem desde que seja razoável usá-lo. Vamos dizer que você tem 2 parâmetros cada variando de 1 a 100 (etapa 1). Thats 10000 combinações - perfeitamente OK para pesquisa exaustiva. Agora, com 3 parâmetros você tem 1 milhão de combinações - ainda é OK para pesquisa exaustiva (mas pode ser lenghty). Com 4 parâmetros você tem 100 milhões de combinações e com 5 parâmetros (1..100) você tem 10 bilhões de combinações. Nesse caso, seria muito demorado para verificar todos eles, e esta é a área onde métodos não-exaustivos de busca inteligente pode resolver o problema que não é resolvível em tempo razoável usando a pesquisa exaustiva. Aqui é absolutamente a instrução mais simples como usar novo otimizador não-exaustivo (neste caso CMA-ES). 1. Abra sua fórmula no Editor de Fórmulas. 2. Adicione esta única linha no topo de sua fórmula: OptimizerSetEngine (quotcmaequot) // você também pode usar quotspsoquot ou quottribquot aqui 3. (Opcional) Selecione seu alvo de otimização em Análise Automática, Configurações , QuotWalk-Forwardquot guia, campo de otimização de destino. Se você pular esta etapa otimizará para CAR / MDD (retorno anual composto dividido pelo drawdown máximo). Agora, se você executar otimização usando esta fórmula, ele usará novo evolucionário (não-exaustiva) CMA-ES otimizador. Como funciona A otimização é o processo de encontrar o mínimo (ou o máximo) de determinada função. Qualquer sistema de negociação pode ser considerado como uma função de certo número de argumentos. As entradas são parâmetros e dados de cotação. A saída é o seu alvo de otimização (diga CAR / MDD). E você está procurando o máximo de determinada função. Alguns dos algoritmos inteligentes de otimização são baseados na natureza (comportamento animal) - algoritmo PSO, ou processo biológico - Algoritmos genéticos, e alguns são baseados em conceitos matemáticos derivados por humanos - CMA-ES. Esses algoritmos são usados em muitas áreas diferentes, incluindo finanças. Digite quotPSO financequot ou quotCMA-ES financequot no Google e você vai encontrar muitas informações. Métodos não-exaustivos (ou quotsmartquot) encontrarão óptimo global ou local. O objetivo é, naturalmente, encontrar um global, mas se houver um único pico afiado fora de combinações de parâmetros zilhões, métodos não-exaustivos podem não conseguir encontrar este único pico, mas levando-se forma comerciantes perspecive, encontrar pico único afiado é inútil para Porque o resultado seria instável (muito frágil) e não replicável na negociação real. No processo de otimização estamos procurando regiões planalto com parâmetros estáveis e esta é a área onde os métodos inteligentes brilham. No que diz respeito ao algoritmo utilizado pela pesquisa não exaustiva, ele se parece com: a) o otimizador gera alguma população de partida (geralmente aleatória) dos conjuntos de parâmetros b) o backtest é realizado por AmiBroker para cada conjunto de parâmetros da população c) os resultados dos backtests são Avaliado de acordo com a lógica do algoritmo ea nova população é gerada com base na evolução dos resultados, d) se for encontrado o melhor - salve-o e vá para a etapa b) até que os critérios de parada sejam atendidos Exemplo de critérios de parada podem incluir: Iterações máximas b) parar se o intervalo de melhores valores objetivos das últimas gerações X é zero c) parar se adicionar 0,1 vetor de desvio padrão em qualquer direção do eixo principal não mudar o valor do valor objetivo d) outros Para usar qualquer inteligente (não - Exaustivo) no AmiBroker você precisa especificar o mecanismo otimizador que deseja usar na fórmula AFL usando a função OptimizerSetEngine. A função seleciona o mecanismo de otimização externo definido pelo nome. O AmiBroker atualmente é fornecido com 3 mecanismos: Standard Particle Swarm Optimizer (quotspsoquot), Tribos (quottribquot) e CMA-ES (quotcmaequot) - os nomes entre chaves devem ser usados em chamadas do OptimizerSetEngine. Além de selecionar otimizador motor você pode querer definir alguns dos seus parâmetros internos. Para isso, use a função OptimizerSetOption. Função OptimizerSetOption (quotnamequot, value) A função define parâmetros adicionais para o mecanismo de otimização externo. Os parâmetros são dependentes do motor. Os três otimizadores fornecidos com AmiBroker (SPSO, Trib, CMAE) suportam dois parâmetros: quotRunsquot (número de execuções) e quotMaxEvalquot (avaliações máximas (testes) por execução única). O comportamento de cada parâmetro é dependente do motor, de modo que os mesmos valores podem e normalmente produzirão resultados diferentes com diferentes motores usados. A diferença entre Runs e MaxEval é a seguinte. A avaliação (ou teste) é backtest único (ou avaliação do valor da função objetivo). RUN é uma execução completa do algoritmo (encontrar o valor ótimo) - geralmente envolvendo muitos testes (avaliações). Cada execução simplesmente restabelece todo o processo de otimização a partir do novo início (nova população aleatória inicial). Portanto, cada corrida pode levar a encontrar diferentes locais max / min (se não encontrar global). Portanto, o parâmetro Runs define o número de execuções de algoritmos subseqüentes. MaxEval é o número máximo de avaliações (bactests) em qualquer execução única. Se o problema é relativamente simples e 1000 testes são suficientes para encontrar o máximo global, 5x1000 é mais provável encontrar máximo global, porque há menos chances de ser preso no máximo local, como subseqüentes vai começar a partir de diferentes aleatória população inicial Escolhendo valores de parâmetro pode Ser complicado Depende do problema em teste, da sua complexidade, etc., etc. Qualquer método não-exaustivo estocástico não lhe dá garantia de encontrar max / min global, independentemente do número de testes, se for menor do que exaustivo. A resposta mais fácil é. Especifique como grande número de testes como é razoável para você em termos de tempo necessário para concluir. Outro conselho simples é multiplicar por 10 o número de testes com a adição de nova dimensão. Isso pode levar a superestimar o número de testes necessários, mas é bastante seguro. Os motores enviados são projetados para serem simples de usar, portanto, quotreasonablequot valores padrão / automático são usados para que a otimização possa ser normalmente executada sem especificar nada (aceitando padrões). É importante entender que todos os métodos de otimização inteligentes funcionam melhor em espaços de parâmetros contínuos e funções objetivas relativamente suaves. Se o espaço de parâmetros é discreto algoritmos evolutivos podem ter dificuldade em encontrar o melhor valor. É especialmente verdadeiro para binário (on / off) parâmetros - eles não são adequados para qualquer método de pesquisa que usa gradiente de mudança de função objetivo (como a maioria dos métodos inteligentes fazer). Se o seu sistema de negociação contém muitos parâmetros binários, você não deve usar otimizador inteligente diretamente neles. Em vez disso, tente otimizar apenas parâmetros contínuos usando o otimizador inteligente e alterne parâmetros binários manualmente ou via script externo. SPSO - Standard Particle Swarm Optimizer O Otimizador Padrão de Enxames de Partículas é baseado no código SPSO2007 que é suposto produzir bons resultados, desde que sejam fornecidos parâmetros corretos (ou seja, Runs, MaxEval) para problemas específicos. Escolher opções corretas para o otimizador PSO pode ser complicado, portanto, os resultados podem variar significativamente de caso para caso. SPSO. dll vem com códigos fonte completo dentro de subpasta quotADKquot. Exemplo de código para Padrão Particle Swarm Optimizer: (encontrando otimizado valor em 1000 testes dentro de espaço de pesquisa de 10000 combinações) OptimizerSetEngine (quotspsoquot) OptimizerSetOption (quotRunsquot, 1) OptimizerSetOption (quotMaxEvalquot, 1000) sl Otimizar (quotsquot, 26, 1, 100, 1 ) Otimizar (quotfquot, 12, 1, 100, 1) Comprar Cross (MACD (fa, sl), 0) TRIBES - Adaptive Parâmetro-menos Partículas Enxame Otimizador Tribos é adaptável , Versão sem parâmetros de otimizador PSO (otimização de enxame de partículas) não-exaustiva. Para o fundo científico veja: www. particleswarm. info/Tribes2006Cooren. pdf Na teoria deve executar melhor do que o PSO regular, porque pode ajustar automaticamente os tamanhos do enxame ea estratégia do algoritmo ao problema que está sendo resolvido. A prática mostra que seu desempenho é bastante semelhante ao PSO. O plug-in Tribes. DLL implementa a variante quotTribes-Dquot (ou seja, adimensional). Baseado em clerc. maurice. free. fr/pso/Tribes/TRIBES-D. zip por Maurice Clerc. Parâmetros suportados: quotMaxEvalquot - número máximo de avaliações (backtests) por execução (predefinição 1000). Os códigos originais utilizados com a permissão do autor Tribes. DLL são fornecidos com código fonte completo (dentro da pasta quotADKquot). Você deve aumentar o número de avaliações com um número crescente de dimensões (número de parâmetros de otimização). O padrão 1000 é bom para 2 ou máximo 3 dimensões. QuotRunsquot - número de execuções (reinícios). (Padrão 5) Você pode deixar o número de execuções com o valor padrão de 5. Por padrão, o número de execuções (ou reinicializações) é definido como 5. Para usar otimizador Tribes, basta adicionar uma linha ao seu código: OptimizerSetOption (quotMaxEvalquot , 5000) // 5000 avaliações max CMA-ES - Covariance Matrix Adaptation Otimizador de Estratégia Evolutiva CMA-ES (Covariance Matrix Adaptação Estratégia Evolutiva) é avançado otimizador não-exaustiva. Para o fundo científico veja: www. bionik. tu-berlin. de/user/niko/cmaesintro De acordo com benchmarks científicos outperforms nove outros, as estratégias evolucionárias as mais populares (como PSO, evolução genética e diferencial). Www. bionik. tu-berlin. de/user/niko/cec2005 O plugin CMAE. DLL implementa quotGlobalquot variante de pesquisa com várias reinicializações com o tamanho de população crescente CMAE. DLL vem com código-fonte completo (dentro de pasta quotADKquot) Por padrão número de execuções (Ou reinicia) é definido como 5. É aconselhável deixar o número padrão de reinícios. Você pode variá-lo usando a chamada OptimizerSetOption (quotRunsquot, N), onde N deve estar no intervalo 1..10. Especificar mais de 10 execuções não é recomendado, embora possível. Observe que cada execução usa TWICE o tamanho da população da execução anterior para que ele cresce exponencialmente. Portanto, com 10 corridas você acaba com a população 210 maior (1024 vezes) do que a primeira corrida. Existe outro parâmetro quotMaxEvalquot. O valor padrão é ZERO, o que significa que o plugin irá calcular automaticamente MaxEval. É aconselhável não definir MaxEval por si mesmo como padrão funciona bem. O algoritmo é inteligente o suficiente para minimizar o número de avaliações necessárias e converge muito rápido para ponto de solução, por isso muitas vezes encontra soluções mais rápidas do que outras estratégias. É normal que o plugin ignore algumas etapas de avaliação, se detectar que a solução foi encontrada, portanto, você não deve se surpreender que a barra de progresso de otimização pode se mover muito rápido em alguns pontos. O plugin também tem a capacidade de aumentar o número de etapas acima do valor inicialmente estimado se for necessário para encontrar a solução. Devido à sua natureza adaptativa, o tempo restante e / ou quotnumber das etapas mostradas pelo diálogo de progresso é apenas quotbest adivinhar no timequot e pode variar durante curso de otimização. Para usar otimizador CMA-ES, você só precisa adicionar uma linha ao seu código: Isto irá executar a otimização com as configurações padrão que estão bem para a maioria dos casos. Deve-se notar, como é o caso de muitos algoritmos de busca de espaço contínuo, que a diminuição do parâmetro quotstepquot em chamadas de função Optimize () não afeta significativamente os tempos de otimização. A única coisa que importa é o quotdimension do problema, ou seja, o número de diferentes parâmetros (número de otimizar chamadas de função). O número de quotstepsquot por parâmetro pode ser definido sem afetar o tempo de otimização, então use a melhor resolução que você deseja. Em teoria, o algoritmo deve ser capaz de encontrar solução em no máximo 900 (N3) (N3) backtests onde quotNquot é a dimensão. Na prática, converge um LOT mais rápido. Por exemplo, a solução em espaço de parâmetros dimensionais 3 (N3) (digamos 100100100 1 milhão de passos exaustivos) pode ser encontrada em apenas 500-900 passos CMA-ES. Otimização individual multi-threaded A partir do AmiBroker 5.70 além do multithreading de múltiplos símbolos. Você pode executar a otimização multi-threaded single-symbol. Para acessar essa funcionalidade, clique na seta suspensa ao lado do botão quotOptimizequot na janela Nova Análise e selecione quot. QuotIndividual Optimizequot usará todos os núcleos de processador disponíveis para realizar a otimização de símbolo único, tornando-a muito mais rápida do que a otimização regular. No modo quotCurrent symbolquot ele realizará a otimização em um símbolo. Em quotAll symbolsquot e QuotFilterquot modos irá processar todos os símbolos sequencialmente, ou seja, primeira otimização completa para o primeiro símbolo, em seguida, a otimização no segundo símbolo, etc Limitações: 1. Backtester personalizado não é suportado (ainda) 2. Smart otimização motores não são suportados - Somente a otimização EXHAUSTIVA funciona. Eventualmente, podemos nos livrar da limitação (1) - quando AmiBroker é alterado para backtester personalizado não usa OLE mais. Mas (2) provavelmente está aqui para ficar para long. Outubro 14, 2011 Adicionado 29 de fevereiro de 2012, pontos adicionais a considerar: 1) Este sistema depende de obter preenchimentos precisos no preço Open. Para obter esses preenchimentos, é necessário um feed de dados com atraso mínimo de qualidade e habilidades avançadas de programação para implementar a automação comercial. 2) Ao definir o preço de entrada ligeiramente abaixo do preço Open (tentando melhorar o desempenho) o sistema falha miseravelmente. Mesmo melhorando o preço por apenas um centavo mata o sistema. Isso sugere que a maior parte do lucro vem de dias em que o preço do Open era igual ao diário Baixo, ou seja, o preço subiu do Aberto e nunca caiu abaixo dele. Isso, obviamente, é óbvio. Para confirmar isso eu adicionei esta condição de teste (olha para frente) para excluir dias em que Open Low: Buy Buy AND NOT O L Isso mata o sistema e prova que a maior parte do lucro vem de dias onde OL. Para confirmar ainda mais isto eu adicionei a condição oposta: Buy Buy AND O L Isto dá lucros praticamente infinitos e prova que a maioria dos lucros vêm de dias em que o preço suba imediatamente do Open e nunca retorna abaixo dele. Tentando melhorar o preço de entrada é um erro um deve entrar em um conjunto Stop 1-2 ct acima do preço Open, isso irá eliminar dias quando o preço cai e nunca volta para trás. Isso melhora significativamente o desempenho. 3) Este sistema comércios knee-jerk trader-respostas / padrões. Tais padrões são geralmente afogados por grande volume de negociação, portanto, este sistema funciona muito melhor quando você selecionar tickers com volumes entre 500.000 e 5.000.000 partes / dia. Isso também melhora significativamente o desempenho. Adicionando os dois recursos acima resulta em uma curva de equidade muito melhor do que o mostrado abaixo. Desculpe, não tenho tempo para documentar o acima em maior detalhe. Boa sorte Este post descreve uma idéia de negociação Long-apenas muito simples que compra em um determinado percentual abaixo de ontem, e sai no dia seguinte. Enquanto às vezes pode ser difícil obter o preço exato Open, a alta rentabilidade deste sistema torna um bom candidato para experimentação adicional. O sistema funciona bem com Watchlists como o N100, SP500, SP1500, Russel 1000, etc. Desempenho no Russel 1000, com máx. Posições abertas definidas para 1, para o período de 12/10/2003 a 12/10/2011, se parece com isto: Algumas das outras Listas de Exibição dão menos exposição (lucros), mas isso vem com DDs mais baixos. As comissões foram fixadas em 0,005 por ação. Nenhuma margem utilizada. Nenhuma classificação explícita é usada, os tickers são negociados com base na classificação alfabética na Watchlist. Isso pode parecer estranho, mas é significativo: ao reverter esse tipo de sistema falha. Isso pode significar que, devido a problemas de varredura em tempo real, os símbolos listados no topo deste tipo podem ser comercializados de forma diferente daqueles listados na parte inferior. Preste atenção à liquidez (você pode querer negociar mais de uma posição) e deslizamento (entrada é bastante livre de risco, mas sai pode ser problemático). Os DDs são significativos, mas podem ser compensados com entradas e saídas melhoradas em tempo real. Ao negociar automaticamente pode ser possível colocar ordens de entrada OCA DAY-LMT para todos os sinais e apenas esperar e ver o que preenche. Como as saídas são mais difíceis do que as entradas, você pode querer explorar outras estratégias de saída. Os valores padrão dos parâmetros são apenas escolhidos de um chapéu. Quase certamente você pode otimizá-los ou ajustá-los dinamicamente para tickers individuais. Eu testei brevemente este sistema no modo Walk-Forward e os resultados foram rentáveis para todos os anos testados. Exceto para o número de ações negociadas parâmetros parecem não muito crítico. Sobre-otimização doesn8217t parece um problema neste caso. O código abaixo é muito simples e requer poucas explicações. No entanto, é importante compreender que este sistema goza de uma pequena vantagem negociando no Open, e calculando o TrendMA usando o mesmo preço Open. Alguns podem interpretar isso como vazamento futuro, no entanto, se você trocar este sistema em tempo real, não é. Muitas pessoas não percebem que se você trocar no Open você também pode usar esse preço em seus cálculos 8212, desde que você executá-los em tempo real 8212 é aqui onde AmiBroker e tecnologia pode lhe dar uma vantagem. Se você Ref () de volta o TrendMA por uma barra o sistema ainda é muito rentável no entanto DDs aumentar para algumas Watchlists. Se você usar investimentos fixos a diferença é desprezível. O procedimento de negociação seria começar a digitalização antes de o mercado abrir e remover tickers que são preços tão remoto que eles são improváveis para atender o OpenThresh. Assim, você pode começar a digitalizar 1000 símbolos, mas muito rapidamente o número digitalizado vai diminuir para apenas uma dúzia ou mais tickers. Quando você se aproximar 9:30 am sua varredura em tempo real será muito rápido e você será capaz de colocar a sua ordem LMT muito perto do Open 8211 você pode até ser capaz de melhorar o preço Open. Mesmo que algumas pessoas olhou para o código abaixo e não encontrou nada de errado, os lucros parecem bastante elevados para um sistema tão simples. Informe os erros que você pode ver. Arquivado por Herman às 7:03 pm em Idéias (Experimental) Comentários desativados no EOD Gap-Trading Portfolio sistema 1 de setembro de 2011 Esta idéia foi postada (161332) na lista principal AmiBroker em 3 de julho de 2011. Houve numerosos excelentes comentários sobre A lista e se você está interessado em trabalhar neste sistema você faz bem para lê-los todos antes de iniciar. Depois de postar eu encontrei um número de postos na web discutindo essa idéia de negociação, alguns alegaram estar negociando um sistema semelhante com bom sucesso. Eu me referi a este sistema um 8220Gap Trading8221 sistema, mas isso pode ser um pouco de um misnomer, 8220Mean reversion8221 pode ser uma melhor classificação. Googling para que você vai ter muitos hits mais para sistemas semelhantes. Aqui estão alguns links: Parece ser uma idéia de negociação bastante discutida e eu sugiro que você faça alguns Googling em seu próprio país para saber o mais recente. Como usuário do Amibroker você tem melhores ferramentas do que a maioria dos comerciantes e você tem uma chance melhor do que a maioria de vir para cima com uma variação que funciona. Talvez com um pouco menos de lucros, e com uma quantidade significativa de código adicional 8212 ele won8217t ser um 8220quicky8221 projeto :-) Algumas pessoas comentaram que este sistema não vai funcionar na negociação real, enquanto eles podem ser direito outros dizem esquemas como este trabalho. Eu não terminei o sistema e posso afirmar que ele é negociável ou não. O sistema compra em uma determinada porcentagem abaixo de ontem8217s baixo, em uma ordem de LMT, e sai no mesmo dia no fechamento. Arquivado por Herman às 6:53 pm sob Idéias (Experimental) Comments Off em Uma idéia de negociação de EOD Gap apenas longa Eu uso um pequeno critério de configuração para procurar por minhas ações. MACD padrão, eu procuro histograma 4 barras para baixo e 1 barra para comprar sinal (eu tenho o histograma definido para vermelho para baixo e azul para cima para que eu possa ver claramente). MACD acima de Zero Line RSI Acima de 30 Este sistema é base na negociação de tendência. Comprando em pullback quando o mercado continua sua tendência ascendente. Para verificar as configurações de tendência MACD: 1) Insira a seguinte fórmula em um gráfico. 2) Execute um Scan em AA usando SMACDTrend com todos os símbolos. N últimos dias. N 1 e Sincronizar gráfico em selecionar como as configurações. Os estoques que atendem aos critérios serão relatados na lista Resultados. Nota: Algumas variações das regras de configuração podem definir sinais que são bastante raros e em bancos de dados pequenos é possível que não haverá configurações em um determinado dia (daí nenhuma ação será relatada pela varredura). 3) Clique em qualquer símbolo no painel Resultados para exibir o gráfico, para esse símbolo, em segundo plano. Nota: Neste exemplo, um banco de dados de treinamento, que contém apenas dados até 5/11/2007, foi usado. Idéia de negociação por protraderinc. Comentários e fórmula por Bill 8211 WaveMechanic. Arquivado por brianz às 11:06 pm em Idéias (Experimental) Comments Off no MACD Trend System 14 de outubro de 2007 Arquivado por brianz às 10:43 pm em Idéias (Experimental) Comentários Off on 15 Day Performers Trading System 19 de agosto de 2007 This is O primeiro de uma série de KISS (mantê-lo simples, estúpido) idéias de negociação para você brincar. Todas as ideias de sistema apresentadas aqui são não comprovadas, inacabadas e podem conter erros. Eles são destinados a mostrar possíveis padrões para uma exploração mais aprofundada. Como sempre, você é convidado a fazer comentários e / ou adicionar suas próprias idéias a esta série. Eu prefiro sistemas em tempo real que comércio rápido, são automatizados, e são desprovidas de indicadores tradicionais. De preferência, eles não devem ter parâmetros otimizáveis no entanto, eu não pode ser sempre capaz de cumprir este objectivo. Nem todos os sistemas serão tão simples que haverá alguns que usam a média simples ou funções tipo HHV / LLV. O primeiro sistema mostrado abaixo é uma cópia do sistema de demonstração que eu uso para desenvolver rotinas de Automação Comercial em outro lugar neste site. Gap-Trading em tempo real. Para ver como isso funciona, você deve Backtest-lo em dados de 1 minuto com uma periodicidade no intervalo de 5-60 minutos. Sua primeira impressão pode ser que esses lucros são simplesmente devido a um mercado, no entanto, o fato de que os lucros Long e Short são aproximadamente iguais sugere que há mais para ele. Porque 98 de todos os comércios caem entre 9:30 AM e 10:30 AM, este tipo de sistema é agradável se você quiser apenas negociar um curto período de tempo cada dia. Isso reduz o risco em relação à exposição no mercado e dá mais tempo para desfrutar outras atividades. Backtesting isso na watchlist NASDAQ-100 (backtests individuais, 15 min. Periodicity) dá os lucros mostrados abaixo para o período de 1 MAR 2007 a 17 AUG 2007. Nomes Ticker são omitidos para manter o gráfico compacto o gráfico simplesmente mostra um lucro líquido Barra para cada ticker testado. Exposição média para este sistema é de cerca de 15, portanto, você pode ser capaz de negociar carteiras para aumentar os lucros e suavizar as curvas de equidade. Seja advertido que em sua forma bruta os levantamentos são inaceitáveis e que pode haver restrições de volume para muitos tickers. Uma vez que este sistema tem baixa exposição, pode ser um candidato para o mercado de digitalização e classificados de carteira de negociação. RARs seria uma indicação dos lucros máximos absolutos que poderiam ser obtidos se um conseguisse aumentar a exposição para perto de 100. No entanto, o movimento de preços de diferentes tickers pode ser correlacionado, e os comércios de tickers diferentes podem sobrepor. Se muitos tickers trocam ao mesmo tempo, seria difícil aumentar a exposição do sistema. Arquivado por Herman às 13:49 sob Idéias (Experimental) Comments Off em KISS-001: Intraday Gap Trading 17 de agosto de 2007 Você está convidado a enviar links para idéias do sistema em comentários para este post. Gap Estratégias de Negociação 8211 Stockcharts Crossover de média móvel Intraday com Posição de Dimensionamento 8211 NeoTicker Volatilidade-Breakout-Systems 8211 Traders Log Dez dias Alto / Baixo sistema 8211 StockWeblog Reversão Sistemas 8211 SeekingAlpha Systems Traders Club. Boletins do Clube Trader. July 16, 2007 Esta categoria é reservada para os sistemas de negociação real, ou seja, que você tenha negociado em algum momento no tempo ou iria considerar a negociação. Uma vez que os critérios de negociabilidade variam de pessoa para pessoa, e uma vez que os sistemas podem funcionar ou não, dependendo de como eles são negociados, será difícil de tela contribuições aqui. Com relação ao que está postado aqui, mantenha uma mente aberta e considere que o cartaz considera o sistema negociável. Você pode contribuir postando como autor (requer registro) ou em um comentário para este post. Aqui é onde você pode compartilhar sistemas de negociação que são marginalmente rentáveis, ou seja, aqueles que não devem ser negociados como eles são, mas que mostram potencial. Normalmente, este seria um sistema básico que é rentável, mas experimenta downs de 50. Tais sistemas podem muitas vezes ser melhorados adicionando Stops, Targets, Money Management, Portfolio técnicas, etc A realidade é que, embora você não pode ter a experiência para fazer Ele trabalha outra pessoa pode. Quase todos nós achamos idéias de sistema de negociação em livros e revistas que então código na AFL para avaliação. Alguns desses sistemas podem ter sido em torno de muitos anos, enquanto outros são novas idéias. Depois de codificá-los, quase sempre, estamos decepcionados e chuck para fora do sistema (trabalho). Em vez de jogar fora seu trabalho você é convidado para afixar o sistema aqui para dar a um outro colaborador a possibilidade repará-lo. Você está convidado a contribuir como autor (requer registro) ou em um comentário para este post. Arquivado por Herman às 11:04 sob Idéias (Experimental) Comments Off em Introdução aos Sistemas de Negociação 8211 Ideias O mercado de ações é um ótimo lugar para ganhar muito dinheiro. E eu quero ganhar dinheiro com a negociação de ações simples. Você também, certo Não é complicado para alcançar este objetivo. Não é ciência de foguete. Eu fiz isso. Você pode fazer isso também. Meu nome é Richard Koza e Ive negociados ações on-line desde 2001. Eu construí, usado e testado várias estratégias de negociação diferentes. Eu verifiquei muitos indicadores. E finalmente encontrei a solução certa, que é baseada em uma palavra SIMPLES. Então, eu uso estratégias de negociação simples, e eu tenho menos estresse e mais lucros. Sucesso da minha negociação de ações simples também me permitiu ganhar dinheiro sem necessidade de ser empregado de qualquer empresa. Minha negociação é minha própria empresa. Eu posso negociar e ganhar dinheiro de qualquer lugar do mundo onde eu sou capaz de se conectar à Internet. E eu poderia gastar muito tempo com a minha família, em vez de estar em um ambiente de escritório chato. Eu também notei que compartilhar minhas idéias, análises e estratégias simples com os outros me ajuda a encontrar a melhor escolha de ações muito mais fácil. Digite seu e-mail abaixo para anotar sua folha de fraude: 5 etapas comprovadas para o planejamento de lucros amplificados da negociação de ações Política de Privacidade: Odiamos SPAM e prometemos manter seu endereço de e-mail seguro. 5 etapas comprovadas para planejamento e lucros de sua negociação de ações Estas são as mesmas etapas exatas que eu uso para negociar mercado de ações todos os dias e semanas. Você pode usá-lo para cada estilo de negociação que você usa: swing trading, negociação posição e mesmo dia de negociação. Gimme esta livre batota folha O que as pessoas dizem sobre estas páginas eu só queria dizer obrigado por todos os conselhos e instruções que você oferece. Você está fazendo um trabalho excelente, você está ajudando as pessoas, e você tem todas as razões para se orgulhar de seu trabalho. Obrigado por fornecer este conselho especializado gratuito. Tenho sido dia de negociação há vários meses e não ter encontrado a consistência. Estou aprendendo muitas coisas, mas em algum momento eu gostaria de aprender mais de uma estratégia simples. Eu mantenho tweaking minha estratégia entre usar frames múltiplos do tempo e tentar para fora médias moventes diferentes. Obrigado. Julie Anne. Estados Unidos seu site está repleto de informações comerciais fantásticas. Há tanta informação útil e é muito fácil de ler e não muito técnico. Eu só queria dizer obrigado por todos os conselhos e instruções que você oferece. Você está fazendo um trabalho excelente, você está ajudando as pessoas, e você tem todas as razões para se orgulhar de seu trabalho.
No comments:
Post a Comment