Thursday 26 April 2018

Exemplo do sistema de comércio amibroker


ami broker.
Use a ferramenta de Exploração AmiBroker poderosa e ultra-rápida para explorar o mercado para oportunidades e ineficiências - sua vantagem para ficar à frente da multidão.
Definir entrada objetiva & amp; saia regras para remover as emoções da sua negociação. Use Backtesting no nível da carteira e amp; Otimização para ajustar o desempenho. Valide a robustez usando Walk-forward & amp; Simulação de Monte Carlo.
Troque visualmente por Gráficos ou use a ferramenta Análise para gerar lista de pedidos, ou faça pedidos diretamente do seu código usando a interface de negociação automática. Seja qual for o seu estilo. A escolha é sua.
Atualize sua negociação para o próximo nível.
Gráficos poderosos, fáceis de usar e bonitos.
As médias, bandas e indicadores de arrastar e soltar, outros parâmetros, modifiquem parâmetros em tempo real usando controles deslizantes e personalizem usando muitos estilos diferentes e amp; gradientes para torná-los bonitos.
O backtesting e otimização de portfólio mais rápido do mundo.
A velocidade surpreendente vem junto com recursos sofisticados como: dimensionamento de posições avançadas, pontuação e classificação, negociação rotacional, métricas personalizadas, backtesters personalizados, suporte a múltiplas moedas.
Automação e processamento em lote.
Não gaste seu tempo e energia em tarefas repetidas. Deixe a AmiBroker automatizar sua rotina usando um processador Batch recém-integrado. Não há mais chatos repetidos. Você pode executá-lo a partir do agendador do Windows para que o AmiBroker possa funcionar enquanto você dorme.
Toda a informação ao seu alcance.
Esta é apenas uma das muitas coisas que você pode fazer usando a Exploração.
A janela Análise é o lar de backtesting, otimização, walk-forward e simulação de Monte Carlo.
Ferramentas poderosas para o comerciante do sistema.
A janela Análise.
A janela Análise é o lar de todas as suas verificações, explorações, backtests de portfólio, otimizações, testes avançados e simulação de Monte Carlo.
Selecione mercados para oportunidades.
Exploração é ferramenta de triagem multidimensional / mineração de dados que produz saída tabular totalmente programável com número ilimitado de linhas e colunas de todos os dados de símbolos.
Teste seu sistema.
O Backtest permite testar o desempenho do seu sistema em dados históricos. A simulação é realizada em nível de carteira como na vida real, com vários títulos negociados ao mesmo tempo, cada um com uma regra de dimensionamento de posição definível pelo usuário.
Pontuação & amp; ranking.
Se os sinais de entrada múltipla ocorrerem na mesma barra e você fica sem poder de compra, o AmiBroker realiza um ranking bar-by-bar com base na classificação de posição definível pelo usuário para encontrar comércio preferível.
Encontre valores de parâmetros ótimos.
Diga à AmiBroker que tente milhares de combinações de parâmetros diferentes para encontrar os melhores. Use a Otimização de Inteligência Artificial Inteligente (Embreagem de Partículas e CMA-ES) para procurar espaços enormes em tempo limitado.
Teste avançado.
Não caia em uma armadilha sobreposta. Valide a robustez do seu sistema, verificando o desempenho fora da amostra após o processo de otimização em amostra.
Simulação de Monte Carlo.
Prepare-se para condições de mercado difíceis. Verifique os cenários do pior caso e a probabilidade de arruinar. Veja as informações estatísticas de seu sistema comercial.
Linguagem de fórmula concisa e rápida para expressar suas idéias de negociação.
Processamento rápido de matriz e matriz.
Nos vetores e matrizes de AmiBroker Formula Language (AFL) são tipos nativos como números simples. Para calcular o ponto médio dos arrays High e Low element-by-element, basta digitar MidPt = (H + L) / 2; // H e L são arrays e é compilado para o código da máquina vectorizada. Não é necessário escrever loops. Isso permite executar suas fórmulas na mesma velocidade que o código escrito no montador. Os operadores e as funções de matriz rápida nativas tornam os cálculos estatísticos uma brisa.
Uma linguagem concisa significa menos trabalho.
Seus sistemas de negociação e indicadores escritos na AFL terão menos digitação e menos espaço do que em outras línguas, porque muitas tarefas típicas na AFL são apenas single-liners. Por exemplo, a parada de Chandelier baseada em ATR é dinâmica: ApplyStop (stopTypeTrailing, stopModePoint, 3 * ATR (14), True, True);
Depurador interno.
O depurador permite que você faça um passo único através do seu código e veja as variáveis ​​em tempo de execução para entender melhor o que a sua fórmula está fazendo.
Editor de código de última geração.
Desfrute de um editor avançado com destaque de sintaxe, auto-completar, dicas de chamada de parâmetro, dobramento de código, auto-indentação e relatórios de erros em linha. Quando você encontra um erro, a mensagem significativa é exibida diretamente na linha, portanto, não esticar seus olhos.
Menos digitação, resultados mais rápidos.
A codificação de sua fórmula nunca foi tão fácil com fragmentos de código prontos para uso. Use dezenas de fragmentos pré-escritos que implementam tarefas e padrões comuns de codificação, ou crie seus próprios trechos!
Multi-threading.
Todas as suas fórmulas beneficiam automaticamente de vários processadores / núcleos. Cada fórmula de gráfico, renderizador gráfico e cada janela de análise são executadas em segmentos separados.
Três edições AmiBroker para escolher.
Edição Padrão.
Versão de nível de entrada para comerciantes de fim de dia e swing. Fim de dia e Tempo real. Intraday a partir do intervalo de 1 minuto. Limite de 10 símbolos na janela de cotações em tempo real. 2 threads simultâneos por janela de análise. Apenas 32 bits.
Edição Profissional.
Plataforma profissional em tempo real e analítica com backtesting e otimização avançados. Fim de dia e Tempo real. Todos Intraday Tick / Second / Minute intervalos, símbolos ilimitados na janela de cotação em tempo real. Símbolos ilimitados em Time & amp; Sales. Estatísticas de MAE / MFE incluídas. Até 32 threads simultâneos por janela de análise. Inclui versões de 64 bits e 32 bits.
Ultimate Pack Pro.
Tudo o que a AmiBroker Professional Edition possui mais dois programas muito úteis:
AmiQuote - download de citações de múltiplas fontes em linha com dados EOD e intraday gratuitos e dados fundamentais gratuitos.
Assistente de código AFL - cria fórmulas AFL fora de frases em inglês simples. Ferramenta de aprendizagem inestimável para iniciantes. (AmiQuote e as licenças do Assistente de Código AFL valem US $ 198 quando compradas separadamente, para que você economize 8% ao comprar este pacote)
Requisitos do sistema: Microsoft Windows 10, 8.1, 7, Vista, XP, 2000, pelo menos 512 MB de RAM. Os usuários do Apple Mac podem usar o Bootcamp / Parallels / VMWare para executar o AmiBroker.
Empresa Sobre Nós Termos de Branding & amp; Condições Política de privacidade Envie-nos um e-mail e # x2709; Docs Lista de recursos O que há de novo Guia do usuário Fontes de dados Vídeos Suporte Suporte técnico & amp; Área de Membros de Vendas Área de Conhecimento Base de Conhecimento do DevLog KB Outros AmiBroker YahooGroup Links úteis.
Este site usa cookies. Ao navegar neste site você concorda com nossa privacidade e amp; política de cookies.

exemplo do sistema de comércio Amibroker
NOTA: Este é um tópico bastante avançado. Leia primeiro os tutoriais AFL anteriores.
A idéia por trás de uma otimização é simples. Primeiro, você precisa ter um sistema comercial, isso pode ser um simples cruzamento de média móvel, por exemplo. Em quase todos os sistemas, existem alguns parâmetros (como período de média) que decidem como o sistema se comporta (ou seja, é adequado para longo prazo ou curto prazo, como é reagir em estoques altamente voláteis, etc.). A otimização é o processo de encontrar valores ótimos desses parâmetros (dando o maior lucro do sistema) para um determinado 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ê deve definir de um até dez parâmetros para serem otimizados. Você decide o que é um valor mínimo e máximo permitido do parâmetro e em que incrementos este valor deve ser atualizado. O AmiBroker então executa vários testes de retorno do sistema usando TODAS as possíveis combinações de valores de parâmetros. Quando este processo está concluído, o AmiBroker exibe a lista de resultados ordenados pelo lucro líquido. Você pode ver os valores dos parâmetros de otimização que dão o melhor resultado.
Escrevendo fórmula AFL.
A otimização no testador traseiro é suportada por uma nova função chamada otimização. A sintaxe desta função é a seguinte:
variável - é uma variável AFL normal que recebe o valor retornado pela função de otimização.
Com os modos normal de backtesting, digitalização, exploração e comentário, a função de otimização retorna o valor padrão, portanto, a chamada de função acima é equivalente a: variável = padrão;
Na função de otimização, otimizar a função retorna valores sucessivos de min para max (inclusive) 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 otimiza a função retorna na exploração, no indicador, nos comentários, na varredura e nos modos normais de teste de volta.
min é um valor mínimo da variável que está sendo otimizada.
max é um valor máximo da variável otimizada.
step é um intervalo usado para aumentar o valor de min para max.
AmiBroker suporta até 64 chamadas para otimizar a função (portanto, até 64 variáveis ​​de otimização), note que, se você estiver usando uma otimização exaustiva, é realmente uma boa idéia limitar o número de variáveis ​​de otimização a apenas alguns. Cada chamada para otimizar gerar loops de otimização de geração (max - min) / passo e múltiplas chamadas para otimizar multiplique o número de execuções necessárias. Por exemplo, otimizar dois parâmetros usando 10 etapas exigirá 10 * 10 = 100 loops de otimização. Chamar otimizar a função apenas UMA VEZ por variável no início da sua fórmula à medida que cada chamada gera novos laços de otimização A otimização de vários símbolos é totalmente suportada pelo AmiBroker O espaço de busca máximo é de 2 64 (10 19 = 10,000,000,000,000,000,000) de combinações.
1. Otimização de variável única:
sigavg = Otimizar ("Média do sinal", 9, 2, 20, 1);
Sell ​​= Cross (Signal (12, 26, sigavg), MACD (12, 26));
2. Otimização de duas variáveis ​​(adequado para gráficos em 3D)
per = Optimize ("per", 2, 5, 50, 1);
Nível = Otimizar ("nível", 2, 2, 150, 4);
Vender = Cruzar (Nível, CCI (per));
3. Otimização variável múltipla (3):
mfast = Optimize ("MACD Fast", 12, 8, 16, 1);
mslow = Optimize ("MACD Slow", 26, 17, 30, 1);
sigavg = Otimizar ("Média do sinal", 9, 2, 20, 1);
Buy = Cross (MACD (mfast, mslow), Signal (mfast, mslow, sigavg));
Sell ​​= Cross (Signal (mfast, mslow, sigavg), MACD (mfast, mslow));
Depois de inserir a fórmula, basta clicar no botão Otimizar em & quot; Análise automática & quot; janela. AmiBroker começará a testar todas as combinações possíveis de variáveis ​​de otimização e informará os resultados na lista. Após a otimização é feita, a lista de resultado é apresentada ordenada pelo lucro líquido%. Como você pode classificar os resultados por qualquer coluna na lista de resultados, é fácil obter os melhores valores de parâmetros para o menor desconto, o menor número de negócios, o maior fator de lucro, a menor exposição ao mercado e o maior retorno anual ajustado pelo risco. As últimas colunas da lista de resultados apresentam os valores das variáveis ​​de otimização para teste dado.
Quando você decide qual combinação de parâmetros atende às suas necessidades, o melhor que você precisa fazer é substituir os valores padrão em otimizar as chamadas de função com os valores ótimos. Na fase atual você precisa digitá-los manualmente na janela de edição da fórmula (o segundo parâmetro da função otimizar a chamada).
Exibição de gráficos de otimização animada 3D.
Para exibir o gráfico de otimização 3D, você precisa primeiro executar a otimização de duas variáveis. A otimização de duas variáveis ​​precisa de uma fórmula que tenha 2 chamadas de função otimizadas (). Um exemplo de fórmula de otimização de duas variáveis ​​parece assim:
per = Optimize ("per", 2, 5, 50, 1);
Nível = Otimizar ("nível", 2, 2, 150, 4);
Vender = Cruzar (Nível, CCI (per));
Depois de inserir a fórmula, você precisa clicar em & quot; Otimizar & quot; botão.
Uma vez que a otimização esteja completa, você deve clicar na seta suspensa no botão Otimizar e escolher Exibir gráfico de otimização 3D. Em alguns segundos, um gráfico de superfície tridimensional colorido aparecerá em uma janela de visualização 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, você pode plotar gráfico de superfície 3D para qualquer coluna na tabela de resultados de otimização. Basta clicar no cabeçalho da coluna para ordená-lo (uma seta azul aparecerá indicando que os resultados de otimização são classificados pela coluna selecionada) e, em seguida, escolha Exibir gráfico de otimização 3D novamente.
Ao visualizar como os parâmetros do seu sistema afetam o desempenho da negociação, você pode decidir mais facilmente quais valores de parâmetro produzem "frágil" e que produzem "robusto" performance do sistema. Configurações robustas são regiões no gráfico 3D que mostram mudanças graduais em vez de abruptas no gráfico de superfície. Os gráficos de otimização 3D são uma ótima ferramenta para evitar o ajuste de curvas. O ajuste de curvas (ou sobre otimização) ocorre quando o sistema é mais complexo do que precisa ser, e toda essa complexidade foi focada em condições de mercado que talvez nunca mais aconteçam. Mudanças radicais (ou espigões) nos gráficos de otimização 3D mostram claramente áreas de otimização excessiva. Você deve escolher uma região de parâmetros que produza um amplo e amplo patamar no gráfico 3D para o seu comércio de vida real. Os conjuntos de parâmetros que produzem picos de lucro não funcionarão de forma confiável na negociação real.
Controles do visualizador de gráficos 3D.
O visualizador de gráficos 3D da AmiBroker oferece capacidades de visualização totais com rotação e animação completas de gráficos. Agora você pode visualizar 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, a barra de ferramentas e os atalhos do teclado, o que você achar mais fácil para você. Abaixo, você encontrará a lista.
- para rodar - mantenha pressionado o botão esquerdo do mouse e mova-se nas direções X / Y.
- para Zoom-in, zoom-out - mantenha pressionado o botão RIGHT do mouse e mova-se nas direções X / Y.
- para mover (traduzir) - mantenha pressionado o botão esquerdo do mouse e a tecla CTRL e mova-se nas direções X / Y.
- para animar - mantenha pressionado o botão esquerdo do mouse, arraste rapidamente e solte o botão enquanto arrasta.
SPACE - animate (auto-rotate)
CHAVE DE FLECHA ESQUERDA - rotate vert. esquerda.
CHAVE DE SETA PARA A DIREITA - rotate vert. certo.
CHAVE DE SETA PARA CIMA - gire horiz. acima.
CHAVE DE SETA PARA BAIXO - gire horiz. baixa.
NUMPAD + (PLUS) - Perto (aproximar)
NUMPAD - (MINUS) - Far (zoom out)
NUMPAD 4 - mover para a esquerda.
NUMPAD 6 - mude para a direita.
NUMPAD 8 - mova-se para cima.
NUMPAD 2 - mova para baixo.
PAGE UP - nível da água para cima.
PAGE DOWN - nível da água para baixo.
Otimização inteligente (não exaustiva).
A AmiBroker agora oferece 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 de um determinado sistema de negociação for simplesmente muito grande para ser viável para uma busca exaustiva.
A busca exaustiva é perfeitamente adequada, desde que seja razoável usá-la. Digamos que você tenha 2 parâmetros cada um variando de 1 a 100 (passo 1).
São 10000 combinações - perfeitamente corretas para pesquisa exaustiva. Agora, com 3 parâmetros, você obteve 1 milhão de combinações - ainda está correto para pesquisa exaustiva (mas pode ser lenta). 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 verificá-los, e esta é a área onde os métodos de pesquisa inteligente não exaustivos podem resolver o problema que não são solucionáveis ​​em um tempo razoável usando uma busca exaustiva.
Aqui está absolutamente a instrução SIMPLES sobre como usar um 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 da sua fórmula:
OptimizerSetEngine (& quot; cmae & quot;); // você também pode usar & quot; spso & quot; ou "trib" Aqui.
3. (Opcional) Selecione seu alvo de otimização em Análise automática, Configurações, & Walker Forward & quot; guia, campo de destino de otimização. Se você ignorar este passo, ele irá otimizar o CAR / MDD (retorno anual composto dividido pelo máximo% de redução).
Agora, se você executar a otimização usando esta fórmula, usará o novo otimizador CMA-ES evolutivo (não exaustivo).
Como funciona ?
A otimização é o processo de encontrar o mínimo (ou o máximo) de função dada. Qualquer sistema comercial 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 objetivo de otimização.
(diga CAR / MDD). E você está procurando o máximo de função dada.
Alguns algoritmos de otimização inteligente 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 de humanos - CMA-ES.
Esses algoritmos são usados ​​em muitas áreas diferentes, incluindo finanças. Insira "PSO finance & quot; ou "CMA-ES finance" no Google e você encontrará muitas informações.
Métodos não exaustivos (ou "inteligentes") encontrarão otimizar global ou local. O objetivo é, naturalmente, encontrar um global, mas se houver um único pico afiado.
As combinações de parâmetros fora de zilhões, métodos não-exaustivos podem não conseguir esse único pico, mas assumi-lo de acordo com a perspectiva do comerciante, encontrar único pico afiado é inútil para negociação, porque esse resultado seria instável (muito frágil) e não replicável na negociação real. No processo de otimização, estamos procurando por regiões de platô com parâmetros estáveis ​​e esta é a área onde brilham métodos inteligentes.
Quanto ao algoritmo usado por pesquisa não-exaustiva, ele se destaca da seguinte maneira:
a) o otimizador gera alguma (inicialmente aleatória) população inicial de conjuntos de parâmetros.
b) o backtest é realizado pela AmiBroker para cada conjunto de parâmetros da população.
c) os resultados dos backtests são avaliados de acordo com a lógica do algoritmo.
e a nova população é gerada com base na evolução dos resultados,
d) se o novo melhor for encontrado - salve-o e vá para a etapa b) até que os critérios de parada sejam atendidos.
Os critérios de parada de exemplo podem incluir:
a) atingindo as iterações máximas especificadas.
b) pare se o intervalo dos melhores valores objetivos das últimas gerações X é zero.
c) pare se adicionar 0,1 vetor de desvio padrão em qualquer direção do eixo principal não altera o valor do valor objetivo.
Para usar qualquer otimizador 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. AmiBroker atualmente é fornecido com 3 motores: Otimizador de enxame de partículas padrão ("spso"), Tribes ("trib") e CMA-ES ("cmae") - os nomes em chaves devem ser usados ​​em chamadas OptimizerSetEngine.
Além de selecionar o mecanismo do otimizador, você pode querer definir alguns dos seus parâmetros internos. Para isso use a função OptimizerSetOption.
Função OptimizerSetOption (& quot; name & quot ;, value).
A função define parâmetros adicionais para o mecanismo de otimização externo. Os parâmetros são dependentes do motor.
Todos os três otimizadores fornecidos com AmiBroker (SPSO, Trib, CMAE) suportam dois parâmetros: & quot; Executa & quot; (número de execuções) e "MaxEval" (avaliações máximas (testes) por única execução). O comportamento de cada parâmetro é dependente do motor, então os mesmos valores podem e, geralmente, produzir resultados diferentes com diferentes motores usados.
A diferença entre Runs e MaxEval é a seguinte. A avaliação (ou teste) é um teste simples (ou avaliação do valor da função objetivo).
RUN é uma execução completa do algoritmo (encontrando o melhor valor) - geralmente envolvendo muitos testes (avaliações).
Cada execução simplesmente RESTAURA todo o processo de otimização desde o novo início (nova população aleatória inicial).
Portanto, cada execução pode levar a encontrar diferentes locais max / min (se não encontrar um global). Assim, o parâmetro Runs define o número de algoritmos subseqüentes. MaxEval é o número máximo de avaliações (bactests) em qualquer execução única.
Se o problema for relativamente simples e 1000 testes forem suficientes para encontrar o máximo global, é mais provável que 5x1000 encontre o máximo global.
porque há menos chances de ficar preso no máximo local, pois as corridas subseqüentes começam a partir de diferentes populações aleatórias iniciais.
Escolher valores de parâmetros pode ser complicado. Depende do problema sob teste, da sua complexidade, etc., etc.
Qualquer método estocástico não exaustivo 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 é: especificar 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 ser simples de usar, portanto, "razoável" Os valores padrão / automático são usados, de modo que a otimização pode geralmente ser executada sem especificar nada (aceitando padrões).
É importante entender que todos os métodos inteligentes de otimização funcionam melhor em espaços de parâmetros contínuos e funções objetivas relativamente lisas. Se o espaço dos parâmetros é discreto, os algoritmos evolutivos podem ter problemas para encontrar o melhor valor. É especialmente verdade para parâmetros binários (on / off) - não são adequados para qualquer método de pesquisa que use gradiente de mudança de função objetiva (como a maioria dos métodos inteligentes o fazem). Se o seu sistema comercial contiver muitos parâmetros binários, você não deve usar o otimizador inteligente diretamente neles. Em vez disso, tente otimizar apenas os parâmetros contínuos usando otimizador inteligente e altere os parâmetros binários manualmente ou através de um script externo.
SPSO - Otimizador padrão de enxertia de partículas.
O otimizador padrão de enxertia de partículas é baseado no código SPSO2007 que é suposto produzir bons resultados desde que os parâmetros corretos (ou seja, Runs, MaxEval) sejam fornecidos para um problema específico.
Escolher as opções corretas para o otimizador de PSO pode ser complicado, portanto, os resultados podem variar significativamente caso a caso.
SPSO. dll vem com códigos de fonte completos dentro de "ADK & quot; subpasta.
(encontrando o valor ideal em 1000 testes dentro do espaço de busca de 10000 combinações)
Buy = Cross (MACD (fa, sl), 0);
Sell ​​= Cross (0, MACD (fa, sl));
TRIBES - Otimizador de enxertia de partículas sem parâmetros adaptáveis.
Tribes é uma versão adaptável e sem parâmetros do otimizador não-exaustivo PSO (otimização de enxame de partículas). Para o conhecimento científico, veja:
Em teoria, ele deve ter um desempenho melhor do que o PSO normal, pois pode ajustar automaticamente o tamanho dos enxames e a estratégia do algoritmo para o problema a ser resolvido.
A prática mostra que seu desempenho é bastante semelhante ao PSO.
O plugin Tribes. DLL implementa & quot; Tribes-D & quot; (ou seja, sem adição). Baseado em clerc. maurice. free. fr/pso/Tribes/TRIBES-D. zip por Maurice Clerc. Códigos fonte originais utilizados com permissão do autor.
Tribes. DLL vem com o código fonte completo (dentro da pasta "ADK")
"MaxEval" - número máximo de avaliações (backtests) por execução (padrão = 1000).
O padrão 1000 é bom para 2 ou máximo 3 dimensões.
& quot; Executa & quot; - número de execuções (reinicia). (padrão = 5)
Você pode deixar o número de execuções no valor padrão de 5.
Por padrão, o número de execuções (ou reinicia) é definido como 5.
Para usar o otimizador Tribes, você só precisa adicionar uma linha ao seu código:
OptimizerSetOption (& quot; MaxEval & quot; 5000); // 5000 avaliações máx.
CMA-ES - Covariance Matrix Adaptation Otimizador de estratégia evolutiva.
CMA-ES (Covariance Matrix Adaptation Evolutionary Strategy) é otimizador avançado não-exaustivo.
Para o conhecimento científico, veja:
De acordo com benchmarks científicos, supera as nove outras estratégias evolutivas mais populares (como PSO, evolução genética e diferencial).
O plugin CMAE. DLL implementa & quot; Global & quot; variante de pesquisa com vários reinícios com o aumento do tamanho da população.
CMAE. DLL vem com o código fonte completo (dentro da pasta "ADK")
Por padrão, o número de execuções (ou reinicia) é definido como 5.
É aconselhável deixar o número padrão de reinícios.
Você pode alterá-lo usando OptimizerSetOption (& quot; Runs & quot ;, N) call, onde N deve estar no intervalo 1..10.
Especificar mais de 10 execuções não é recomendado, embora possivel.
Observe que cada execução usa TWICE o tamanho da população da corrida anterior para que ela cresça exponencialmente.
Portanto, com 10 corridas, você acaba com a população 2 ^ 10 maior (1024 vezes) do que a primeira corrida.
Existe outro parâmetro "MaxEval". O valor padrão é ZERO, o que significa que o plugin irá calcular automaticamente o MaxEval necessário. É aconselhável NÃO definir o MaxEval sozinho, pois o 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 o ponto de solução, 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 possa se mover muito rápido em alguns pontos. O plugin também possui capacidade para aumentar o número de etapas sobre o valor inicialmente estimado se for necessário encontrar a solução. Devido à sua natureza adaptativa, o "tempo estimado deixado" e / ou "número de etapas" exibido pela caixa de diálogo de progresso é apenas "melhor adivinhação no tempo" e pode variar durante o curso de otimização.
Para usar o otimizador CMA-ES, você só precisa adicionar uma linha ao seu código:
Isso executará a otimização com configurações padrão que são boas para a maioria dos casos.
Deve-se notar, como é o caso com muitos algoritmos de pesquisa de espaço contínuo, que diminui o "passo" o parâmetro nas chamadas do Optimize () funciton não afeta significativamente os tempos de otimização. O único que importa é o problema "dimensão", isto é, o número de parâmetros diferentes (número de otimização de chamadas de função). O número de & quot; passos & quot; 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 * (N + 3) * (N + 3) backtests em que "N" é a dimensão. Na prática, ele converge muito mais rápido. Por exemplo, a solução em espaço de parâmetros dimensionais 3 (N = 3) (digamos 100 * 100 * 100 = 1 milhão de etapas exaustivas) pode ser encontrada em apenas 500 a 900 passos CMA-ES.
Otimização individual multi-threaded.
A partir do AmiBroker 5.70, além do multithreading de vários símbolos, você pode executar otimização de um único símbolo multi-threaded. Para acessar esta funcionalidade, clique na seta suspensa ao lado de "otimizar" na janela Nova Análise e selecione & quot; Individual Optimize & quot ;.
"otimizar individual" usará todos os núcleos de processador disponíveis para executar otimização de um único símbolo, tornando-o muito mais rápido do que otimização regular.
1. O backtester personalizado NÃO é suportado (ainda)
2. Os motores de otimização inteligentes NÃO são suportados - apenas otimização EXHAUSTIVA funciona.
Eventualmente, podemos eliminar a limitação (1) - quando o AmiBroker é alterado, então o backtester personalizado não usa mais OLE. Mas (2) provavelmente está aqui para ficar por muito tempo.

Base de Conhecimento dos Usuários.
14 de outubro de 2018.
EOD Gap-Trading Portfolio sistema.
Adicionado em 29 de fevereiro de 2018, pontos adicionais a considerar:
1) Este sistema depende da obtenção de preenchimentos precisos ao preço aberto. Para obter esses preenchimentos, é necessário um feed de dados de 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 de abertura (tentando melhorar o desempenho), o sistema falha miseravelmente. Mesmo melhorar o preço por apenas um centavo mata o sistema. Isso sugere que a maior parte do lucro vem dos dias em que o preço do Open foi igual ao Baixo diário, ou seja, o preço subiu do Open e nunca caiu abaixo dele. Isso, é claro, é óbvio. Para confirmar isso, adicionei esta condição de teste (olha para frente) para excluir dias em que Open == Low:
Compre = Compre E NÃO O == L;
Isso mata o sistema e prova que a maior parte do lucro vem dos dias em que O == L. Para confirmar ainda isso adicionei a condição oposta:
Comprar = Comprar AND O == L;
Isso dá lucros quase infinitos e prova que a maioria dos lucros vem de dias em que o preço se move imediatamente a partir do Open e nunca retorna abaixo dele. Tentando melhorar o preço de entrada é um erro; deve-se entrar em um Stop set 1-2 ct acima do preço Open, isso eliminará os dias em que o preço cai e nunca volta. Isso melhora significativamente o desempenho.
3) Este sistema comercializa respostas / padrões de tradutores do joelho. Esses padrões geralmente são afogados por grande volume de negócios, portanto, esse sistema funciona muito melhor quando você seleciona tickers com volumes entre 500.000 e 5.000.000 ações / dia. Isso também melhora significativamente o desempenho.
A adição das duas características acima resulta em uma curva de equidade muito melhor do que a mostrada abaixo. Desculpe, não tenho tempo para documentar o acima em maior detalhe. Boa sorte!
Esta publicação descreve uma idéia de negociação muito simples apenas para Long-only que compra em uma determinada porcentagem abaixo de ontem e baixa, e sai no dia seguinte # 8217; s Open. Às vezes, pode ser difícil obter o preço aberto exato, a alta rentabilidade deste sistema torna um bom candidato para novas experiências. O sistema funciona bem com Watchlists como N100, SP500, SP1500, Russel 1000, etc. Desempenho no Russel 1000, com max. posições abertas definidas em 1, para o período de 12/10/2003 a 12/10/2018, tem essa aparência:
Algumas das outras Watchlists dão menos exposição (lucros), mas isso vem com DDs menores. As comissões foram fixadas em US $ 0,005 por ação. Nenhuma margem utilizada.
Não é utilizada classificação explícita; Os tickers são negociados com base em seu tipo alfabético na Watchlist. Isso pode parecer estranho, mas é significativo: ao reverter esse tipo, o sistema falha. Isso pode significar que, devido a problemas de varredura em tempo real, os símbolos listados no topo deste tipo podem ser negociados de forma diferente dos listados na parte inferior.
Preste atenção ao Liquidity (você pode querer negociar mais de uma posição) e slppage (A entrada é bastante livre de risco, mas as saídas podem ser problemáticas). Os DDs são significativos, mas podem ser compensados ​​com entradas e saídas negociadas em tempo real melhoradas. 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 preencher. 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 escolhidos apenas de um chapéu. Praticamente você pode otimizá-los ou ajustá-los dinamicamente para os tickers individuais. Testei brevemente este sistema no modo Walk-Forward e os resultados foram lucrativos para todos os anos testados. Exceto pelo número de ações, os parâmetros negociados não são muito críticos. O excesso de otimização não parece um problema neste caso.
O código abaixo é muito simples e requer poucas explicações. No entanto, é importante entender que este sistema goza de uma pequena vantagem ao negociar no Open e ao calcular 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 e # 8212; contanto que você os execute em tempo real & # 8212; É aqui que a AmiBroker e a tecnologia podem lhe dar uma vantagem. Se você Ref () retornar a TrendMA por uma barra, o sistema ainda é muito lucrativo, porém os DDs aumentam para algumas Listas de Verificação. Se você usa investimentos fixos, a diferença é insignificante.
O procedimento de negociação seria começar a digitalizar antes do mercado abrir e remover os tickers com preços tão remotos que não são susceptíveis de atender ao OpenThresh. Assim, você pode começar a escanear 1000 símbolos, mas muito rapidamente o número escaneado diminui para apenas uma dúzia de tickers. Quando você se aproxima das 9h30, sua varredura em tempo real será muito rápida e você poderá colocar sua ordem LMT muito próxima do Open & # 8211; você pode até mesmo melhorar o preço aberto.
Embora algumas pessoas tenham olhado o código abaixo e não encontraram nada 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 Ideas (Experimental)
Comentários desativados no sistema EOD Gap-Trading Portfolio.
1 de setembro de 2018.
Uma idéia comercial de EOD Gap de longa duração.
Essa idéia foi postada (# 161332) na lista principal do AmiBroker em 3 de julho de 2018. Houve inúmeros comentários excelentes na lista e se você está interessado em trabalhar neste sistema, você faz bem em lê-los todos antes de começar. Depois de postar, encontrei uma série de postagens na web discutindo essa idéia comercial, alguns alegaram estar negociando um sistema similar com um bom sucesso.
Eu me referi a este sistema a & # 8220; Gap Trading & # 8221; sistema, mas isso pode ser um pouco de um nome incorreto, & # 8220; Reversão média & # 8221; pode ser uma classificação melhor. Googling para isso irá obter muitos mais hits para sistemas semelhantes. Aqui estão alguns links:
Parece ser uma idéia comercial bastante amplamente discutida e eu sugiro que você faça alguns Googling por conta própria para aprender o mais recente. Como um usuário Amibroker, você possui melhores ferramentas do que a maioria dos comerciantes e você tem uma chance melhor do que a maioria de apresentar uma variação que funcione. Talvez com um pouco menos lucros, e com uma quantidade significativa de código adicional # 8212; ele ganhou & # 8217; t ser um & # 8220; quicky & # 8221; projeto :-)
Algumas pessoas comentaram que este sistema não funcionará na negociação real, enquanto eles podem estar certos, outros dizem que regimes como este trabalho. Eu não terminei o sistema e não posso reivindicar se é negociável ou não.
O sistema compra a uma determinada porcentagem abaixo de ontem & # 8217; s Low, em uma ordem LMT, e sai no mesmo dia no fim.
Arquivado por Herman às 6:53 pm sob Ideias (Experimental)
Comentários desativados em uma idéia de negociação de Long-only EOD Gap.
28 de novembro de 2007.
Retorno inverso ao sistema médio.
Arquivado por brian_z às 11:54 pm sob Ideas (Experimental)
Comentários desativados no sistema Inverse Return To Mean.
22 de outubro de 2007.
MACD Trend System.
Eu uso um pequeno critério de configuração para procurar minhas ações.
Procuro guias de histograma 4 e 1 barra para sinal de compra (eu tenho o histograma definido como vermelho para baixo e azul para cima para que eu possa ver.
MACD acima da Linha Zero.
Este sistema baseia-se no comércio de tendências. Comprar no pullback quando o mercado continuar sua tendência ascendente.
Para procurar MACD Trend setups:
1) Insira a seguinte fórmula em um gráfico.
Os estoques que atendam aos critérios serão reportados na lista de 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 haja configurações em nenhum dia determinado (portanto, nenhum estoque será relatado pela verificação).
3) Clique em qualquer símbolo no painel Resultados para visualizar o gráfico, para esse símbolo, em segundo plano.
Nota: neste exemplo, foi utilizado um banco de dados de treinamento, que apenas contém dados até 5/11/2007.
Idéia comercial por protraderinc. Comentários e fórmulas de Bill & # 8211; WaveMechanic.
Arquivado por brian_z às 11:06 pm sob Ideias (Experimental)
Comentários desativados no MACD Trend System.
14 de outubro de 2007.
Sistema de negociação de 15 dias.
Arquivado por brian_z às 10:43 pm sob Ideas (Experimental)
Comments Off no 15 Day Performers Trading System.
19 de agosto de 2007.
KISS-001: Intraday Gap Trading.
Esta é a primeira de uma série de idéias de negociação KISS (mantê-lo simples, estúpido) para você brincar. Todas as ideias do sistema apresentadas aqui não são comprovadas, não finalizadas e podem conter erros. Eles são destinados a mostrar padrões possíveis para uma maior exploração. Como sempre, você é convidado a fazer comentários e / ou adicionar suas próprias idéias a esta série.
Eu prefiro os sistemas em tempo real que comercializam rápido, são automatizados e estão desprovidos de indicadores tradicionais. De preferência, eles não devem ter parâmetros otimizáveis; No entanto, eu nem sempre posso conseguir esse objetivo. Nem todos os sistemas serão "isso" simples; haverá alguns que utilizam funções de média simples ou de tipo HHV / LLV. O primeiro sistema mostrado abaixo é uma cópia do sistema de demonstração que uso para desenvolver rotinas de Automação de Comércio em outros lugares neste site.
Para ver como isso funciona, você deve fazer o Backtest 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 superior, no entanto, o fato de que os lucros Longos e Curtos são aproximadamente iguais sugerem que há mais. Porque 98% de todos os negócios caem entre as 9:30 da manhã e as 10:30 da manhã, esse tipo de sistema é bom se você quer trocar pouco tempo a cada dia. Isso reduz o risco em relação à exposição ao mercado e dá mais tempo para aproveitar outras atividades.
Backtesting isso na lista de vigilância NASDAQ-100 (backtests individuais, 15 min. Periodicidade) dá os lucros mostrados abaixo para o período de 1 MAR 2007 até 17 de agosto de 2007. Os nomes de Ticker são omitidos para manter o gráfico compacto; O gráfico mostra simplesmente uma barra de lucro líquido para cada ticker testado. A exposição média deste sistema é de cerca de 15%; daí, você pode negociar carteiras para aumentar os lucros e suavizar as curvas de equidade. Seja advertido que, em sua forma bruta, as retiradas são inaceitáveis ​​e que pode haver restrições de volume para muitos tickers.
Uma vez que este sistema tem pouca exposição, pode ser um candidato para escaneamento de mercado e negociação de carteira classificada. RARs seria uma indicação dos lucros máximos absolutos que poderiam ser obtidos se conseguisse aumentar a exposição a cerca de 100%. No entanto, o movimento de preços de diferentes tickers pode ser correlacionado, e os negócios de diferentes tickers podem se sobrepor. Se muitos tickers operarem ao mesmo tempo, seria difícil aumentar a exposição do sistema.
Editado por Al Venosa.
Arquivado por Herman às 1:49 pm sob Ideias (Experimental)
Comentários desativados no KISS-001: Intraday Gap Trading.
17 de agosto de 2007.
System Ideas na Internet.
Você está convidado a enviar links para ideias do sistema em comentários para esta publicação.
Arquivado por Herman às 7:46 pm sob Sistemas de Negociação.
16 de julho de 2007.
Introdução aos Sistemas de Negociação & # 8211; Prático.
Esta categoria é reservada para sistemas de negociação reais, ou seja, que você negociou em algum momento ou que consideraria negociar. Uma vez que os critérios de negociação variam de pessoa para pessoa, e como os sistemas podem funcionar ou não dependendo de como eles são negociados, será difícil fazer a seleção de contribuições aqui. Com respeito ao que é publicado aqui, mantenha uma mente aberta e considere que o autor considera o sistema negociável.
Você pode contribuir postando como autor (requer registro) ou em um comentário para esta publicação.
Arquivado por Herman às 11:14 am sob Prático (Rentável)
Comentários desativados na Introdução aos Sistemas de Negociação & # 8211; Prático.
Introdução aos Sistemas de Negociação & # 8211; Idéias.
É aqui que você pode compartilhar sistemas de negociação que são marginalmente lucrativos, ou seja, aqueles que não devem ser negociados como estão, mas que mostram potencial. Normalmente, este seria um sistema básico que é rentável, mas as experiências diminuem 50%. Tais sistemas geralmente podem ser aprimorados pela adição de paradas, metas, gerenciamento de dinheiro, técnicas de portfólio, etc. A realidade é que, embora você não tenha a experiência para fazê-lo funcionar, outra pessoa pode.
Quase todos nós encontramos idéias do sistema de comércio em livros e revistas que codificamos na AFL para avaliação. Alguns desses sistemas podem estar por muitos anos, enquanto outros são idéias novas. Depois de codificá-los, quase sempre, estamos desapontados e retiramos o sistema (trabalho!). Em vez de jogar o seu trabalho, você está convidado a publicar o sistema aqui para dar a outro desenvolvedor a chance de corrigi-lo.
Você é convidado a contribuir como autor (requer registro) ou em um comentário para esta publicação.
Arquivado por Herman às 11:04 am sob Ideas (Experimental)
Comentários desativados na Introdução aos Sistemas de Negociação & # 8211; Idéias.
Postagens recentes.
Comentários recentes.
Richard Dale no Data Resources & # 8211; Forex Herman em solicitação de tópicos em tempo real aqui Mike B em solicitação de tópicos em tempo real aqui Tomasz Janeczko no banco de dados de estoque dos EUA (v2) brian_z na Configuração Um banco de dados personalizado e # 8211; Nasdaq.
Categorias.
Outubro de 2018 (1) setembro de 2018 (1) agosto de 2018 (1) julho de 2018 (1) abril de 2018 (2) março de 2018 (6) fevereiro de 2018 (2) janeiro de 2018 (2) fevereiro de 2009 (2) agosto de 2008 (1) Abril de 2008 (1) março de 2008 (20) fevereiro de 2008 (6) janeiro de 2008 (1) dezembro de 2007 (4) novembro de 2007 (18) outubro de 2007 (17) setembro de 2007 (17) agosto de 2007 (26) julho de 2007 (20) Junho de 2007 (17) maio de 2007 (8) abril de 2007 (16) janeiro de 2007 (1)
Este site usa a página do WordPress gerada em 0.858 segundos.

Rotational Trading: um conceito simples e poderoso.
Desta vez, quero abordar um tópico que não foi abordado aqui antes: negociação rotativa. Em primeiro lugar, vou dar-lhe algum conhecimento sobre o motivo pelo qual você deve procurar o rooteamento e, mais tarde, vou apresentar um sistema de rotação simples, mas poderoso.
A idéia básica por trás da negociação rotacional é simples: você classifica uma lista de ações ou ETFs por qualquer tipo de medida. Então você decide comprar ou vender o pior ou o melhor número de ações desta lista. Você pode fazer isso assim que as novas ações entrarem / sair da parte superior / pior cinco explorações ou em um cronograma predefinido, p. Ex. todas as semanas ou meses.
Aqui estão algumas das razões pelas quais você deve procurar negociação rotativa:
Diversificação: há momentos em que certas estratégias funcionam melhor do que outras. Não se deve colocar todos os seus ovos em uma cesta. Então, além do balanço ou troca de reversão média, isso pode ser uma alternativa interessante. Compra em força: você se lembra do tempo de meados de fevereiro a meados de abril deste ano? Dois meses com quase nenhum revés. Tempos bastante difíceis para o comércio de swing. Os sistemas de negociação de rotação geralmente compram em força; Daí, aqueles estão bem nessas condições. Sem dependência do timing do mercado: estamos tão focados em encontrar a melhor entrada ou a melhor saída. Os sistemas de negociação de rotação são menos sensíveis a encontrar a melhor entrada. Você monta os melhores estoques, desde que estejam entre os melhores estoques, então você muda de cavalos e vai novamente. Simples em execução: se a mudança entre as ações ou ETFs não for feita com muita frequência, a execução comercial pode ser bastante relaxante em comparação com algumas outras estratégias. Além disso, o custo de negociação é menos um fardo, pelo menos para modelos de rotação infreqüentes. Fácil de desenvolver. Com o software de negociação correto, esta pode ser uma tarefa bastante fácil. Isso pode não ser um problema para muitos de vocês, mas certamente há pessoas que não são desenvolvedores de software sofisticados. Uma das razões pelas quais troquei do meu antigo software (Tradesignal) para o Amibroker é a sua capacidade de configurar esses modelos muito fácil e rápido (com apenas algumas linhas).
Precisamos responder algumas questões antecipadamente:
O que queremos negociar e por quê? Eu gosto de trocar estoques NASDAQ100 para este propósito, porque os melhores ou os piores executantes costumam mostrar uma forte tendência em qualquer direção. Basta pensar em Apple, Bidu e co. Quantos estoques queremos negociar? Eu escolho 5 a 10 melhores ações para negociar. Se você chegar a muitos, então você pode inserir ações que podem não chegar ao topo. Direção do comércio: uso negociação rotacional por longos negócios. As tendências ascendentes são mais lentas (= mais longas) em desenvolvimento em comparação com tendências rápidas e bruscas para baixo. Portanto, movimentos para cima são mais fáceis de capturar. Como classificar os estoques? Ter uma boa maneira de classificar as ações para decidir o que é fraco e o que é forte é fundamental para o sucesso de um sistema rotacional. Usando um indicador de curto prazo, tal RSI (2) para medir a força não é uma boa idéia, já que no curto prazo muitas ações tendem a significar - reverter. Assim, o sistema entraria em força e deixaria em fraqueza (como as gotas de ranking RSI (2)). Então, você precisa de um método que olhe para além da tendência de curto prazo e seja capaz de medir a verdadeira força de tendência. Agora, analisaremos os detalhes do sistema conforme descrito acima. Deixe-me indicar claramente que não troco o sistema conforme descrito abaixo. No entanto, eu uso o mesmo conceito e ingredientes similares. Sugiro que você use o sistema como ponto de partida para sua própria pesquisa.
No caso de sua plataforma de negociação atual não oferecer capacidades de negociação rotacional, então você deve definitivamente olhar para o Amibroker. São apenas US $ 199. Eu não estou associado com AmiBroker, mas acho que oferece uma grande BANG para o BUG.
Um dos princípios básicos do comércio rotacional: você monta os melhores estoques, desde que estejam entre os melhores estoques, então você muda de cavalos e vai novamente. Para que isso aconteça, eu quero encontrar os estoques de tendências mais fortes, pois eles prometem continuar por algum tempo. Minha forma preferida de medir a força da tendência é a ETI. Então classifico as ações de acordo com seu valor de ETI (maior valor de ETI na parte superior).
Deixe-me dar-lhe alguns antecedentes sobre como realizei o teste.
Eu olhei os estoques atuais da Nasdaq 100. O primeiro ano de negociação é 2001. Não quero que os tempos de "bolhas" sejam incluídos nos resultados dos testes. Nenhuma comissão. Pego as 5 melhores ações e atribuo 20% do patrimônio líquido.
Já o resultado é bastante bom, dado que o princípio é extremamente simples e som. Cerca de 32% de CAGR, alta média de comércio vencedor e quase 55% de vencedores.
No entanto, o sistema tem um problema: quase 60% MaxDD (= max. Draw down). Emocionalmente, isso será muito difícil de trocar! O que você não vê; Um dos tempos mais lucrativos do sistema está correto após esta redução severa. Não tenho certeza se eu posso trocar isso! Então, ou você se inclina, por exemplo, ao curto-se o índice, ou você adiciona um componente de tempo ao seu sistema rotacional. Eu faço os dois, dependendo do estado do mercado.
Evitando cortes severos.
Mas vamos analisar a adição de um componente de tempo ao sistema. Eu só troco o sistema em momentos em que o índice está acima do 200 MA ou 30 MA. Normalmente, essas reduções severas ocorrem abaixo da média de 200 MA e a segunda média de 30 MA me ajudará a entrar quando a recuperação ocorrer. Portanto, essa pequena mudança melhorará significativamente o desempenho, ao mesmo tempo em que torna muito mais fácil o comércio. Eu sei que isso é parcialmente contra a filosofia de negociação rotacional (= estar sempre no mercado e evitar o timing do mercado), então você precisa descobrir seu próprio nível de tolerância de risco.
Freqüência de trades.
Atualmente, o sistema produz 585 negócios em cerca de 10 anos. Não é muito. Portanto, o custo de negociação não deve ser um problema. Da conveniência, bem como do ponto de vista emocional, o sistema pode ser melhorado. A ETI não é um indicador que muda rapidamente, mas das 585 negociações existem cerca de 120 negócios com apenas 2 barras. Isso indica que o ranking muda frequentemente e, portanto, produz esses negócios evitáveis. Eu, portanto, sugiro que você execute os negócios apenas uma vez por semana. Escolha um dia da semana que seja mais conveniente para você. Eu escolhi terça-feira para este teste, no entanto, todos os outros dias da semana produzem bons resultados semelhantes.
Como você vê, as métricas de desempenho ficam aproximadamente as mesmas, enquanto a quantidade de negócios foi significativamente reduzida.
O sistema apresentado apresenta um desempenho decente de 37% ao ano, enquanto é emocionalmente possível negociar. Isso proporciona um bom ponto de partida para o seu próprio sistema rotacional. No entanto, mais importante do que o sistema que apresentou é o fato de que você deve procurar diversificar suas estratégias de negociação por causa das razões que esbocei no início deste artigo.
SetPositionSize (20, spsPercentOfEquity);
Pontuação = IIf (idx & gt; MA (idx, 200) OU idx & gt; MA (idx, 30), pontuação, 0);
PositionScore = IIf (Year () & gt; = 2001 E DayOfWeek () == 2, score, scoreNoRotate);
Sobre o Autor System Trader Success Contributor.
Os autores contribuintes são participantes ativos nos mercados financeiros e totalmente absorvidos na análise técnica ou quantitativa. Eles desejam compartilhar suas histórias, idéias e descobertas no System Trader Success e espero que você seja um comerciante do sistema melhor. Entre em contato conosco se você quiser ser um autor contribuidor e compartilhar sua mensagem com o mundo.
Posts Relacionados.
Usando Metals to Trade Bonds.
Indicador e estratégia do MCVI sobre gráficos diários.
Publicações populares.
Connors 2-Period RSI Update para 2018.
Este indicador simples faz dinheiro novamente e novamente.
The Ivy Portfolio.
Melhorando a Estratégia de Identidade Simples, Parte 1.
Copyright © 2017 da Capital Evolution LLC. - Projetado por temas Thrive | Powered by WordPress.
Por favor faça login novamente. A página de login será aberta em uma nova janela. Depois de efetuar o login, você pode fechá-lo e retornar a esta página.

Como construir sistemas rentáveis ​​de negociação de reversão média.
Compartilhe esta publicação:
Como comerciante, a maioria das minhas estratégias se concentrou na filosofia da tendência seguinte. No entanto, ao longo do tempo, percebi que os sistemas de negociação de reversão também podem ser rentáveis ​​se implementados corretamente. Às vezes, talvez eles precisem ter uma duração um pouco maior e envolver algum elemento discricionário para funcionar bem.
O fato é que os mercados financeiros se movem em ciclos. Às vezes, eles tendem, e as estratégias de seguimento de tendências serão melhores, e outras vezes irão variar e retornar à média. Os mercados com limites de alcance são, na verdade, mais comuns do que os mercados de tendências, o que significa que as estratégias de reversão média geralmente têm maiores porcentagens vencedoras do que a tendência seguinte.
Como construir sistemas rentáveis ​​de negociação de reversão média.
O primeiro passo na construção de uma estratégia de reversão média bem sucedida é primeiro concordar sobre o que significa reversão é. Enquanto os seguidores das tendências procuram mercados de tendências que continuam por longos períodos, os comerciantes de reversão média procuram mercados que são invulgarmente baixos ou altos, o que eventualmente retornará ao seu nível normal. Assim, a reversão média é sobre a procura de mercados que tenham se desviado significativamente da sua média, o que provavelmente retornará à média em algum momento no futuro.
Muitos tipos de estratégias de reversão média, portanto, dependem de indicadores técnicos para indicar quando um mercado está longe disso significa. As médias móveis, Bollinger Bands, RSI, MACD e outros osciladores podem ser usados ​​dessa maneira.
A idéia de reversão média também pode ser aplicada aos fundamentos. Por exemplo, os estoques geralmente se movem em correlação com os ganhos, então, se os ganhos de uma empresa crescerem substancialmente acima da média recente, é uma boa aposta de que os ganhos do próximo trimestre retornarão mais de acordo com a média de longo prazo .
É uma história semelhante para conceitos econômicos, como a inflação e o crescimento econômico, que muitas vezes retornam à média de longo prazo ao longo do tempo.
Primeiro passo - Procure por padrões nos dados.
O primeiro passo para construir um sistema de troca de reversão média, então, é para escanear gráficos de preços procurando idéias ou padrões que você possa lucrar. Se você está negociando um mercado específico, você percebe algum comportamento interessante? O mercado mora de volta sempre que RSI toca um nível de sobrevenda de & # 8217; 20 & # 8217 ;? O mercado geralmente volta depois que ele mudou 2 desvios padrão na direção oposta?
Segundo Passo - Destilar em código.
O próximo passo é colocar a sua ideia no papel sob a forma de código matemático. Ao fazê-lo, você poderá usar um programa de negociação como o Amibroker para testar essa idéia em dados de preço real. Você poderia fazer isso à mão, mas seria um uso muito longo e ineficiente do tempo.
Passo Três - Teste novamente o código completamente.
Para testar o código corretamente, você precisará aprender um pouco sobre o design adequado do sistema. Em essência, você vai querer testar a estratégia da maneira mais completa possível; em diferentes prazos e em diferentes mercados. Certifique-se sempre de manter um grande pedaço de dados reservados para testes fora da amostra. Em seguida, faça seus testes nos dados na amostra e confirme seu sistema uma vez com os dados fora da amostra. Se falhar ao usar os dados fora da amostra, o sistema não é suficientemente robusto e você precisará começar de novo. A análise progressiva é algo que você deve enfrentar, a fim de garantir que o sistema se mantenha em diferentes condições de mercado.
Passo quatro - Papel comercial do sistema.
Se você passar pelas etapas do projeto adequado do sistema e você acabar com uma estratégia de reversão média que você acredita ser robusta, é importante não se precipitar no mercado e começar a negociá-lo imediatamente. Leve algum tempo para validar em dados novos e ativos primeiro para que você possa ter certeza de que a estratégia funcionará. Porque no final do dia, os únicos dados fora da amostra são dados futuros. Depois de trocar o sistema no papel por um tempo e ainda funciona, você pode começar a aplicá-lo com dinheiro real.
Passo Cinco - Revise o sistema.
Se você tiver uma estratégia de reversão média rentável e robusta, então ele deve se apresentar de forma semelhante aos seus testes anteriores. Você pode usar essas informações para manter um olho no sistema e certificar-se de que ele está se comportando como deve ser. Fique atento às métricas do sistema, como o índice de ganhos para perdas, a expectativa ou os níveis de retirada. Se você tiver um desconto que seja significativamente maior do que qualquer outro que você experimentou no modo back-testing, ele é um sinal de que o sistema foi discriminado.
Considerações para sistemas de negociação de reversão média.
Um dos principais problemas com os sistemas de negociação de reversão média é o controle de risco. Um comerciante de reversão médio vê um mercado que caiu da média como barato; O problema é que se o mercado continuar a cair, torna-se ainda mais barato. A resposta adequada de um comerciante de reversão médio é, portanto, continuar a comprar o mercado à medida que cai.
Isso vai contra a maioria dos princípios de controle de risco, pois não é sensato adicionar uma posição perdedora ou tentar pegar uma faca caindo.
A resposta dos comerciantes de reversão média é usar diferentes tipos de saídas para seguidores de tendências. As saídas baseadas no tempo são freqüentemente usadas e os comerciantes de reversão média costumam ter regras para impedir que elas adicionem muitas vezes a uma troca já perdida.
Claro, outra consideração fundamental são os dados utilizados para testar o sistema de negociação. Escusado será dizer que um sistema de negociação é tão bom quanto os dados que ele testou, sem bons dados que você pode criar um bom sistema. Eu uso Norgate Premium Data, que funciona com várias plataformas diferentes. Você pode obter uma avaliação gratuita do serviço aqui.
Outra consideração fundamental para comerciantes de reversão média é a condição no mercado. Como já mencionado, as estratégias de reversão média funcionam melhor nos mercados vinculados à escala e, em geral, os mercados tendem a ser ajustados em torno de 60% do tempo. No entanto, os sistemas de reversão média podem cair de forma espetacular durante as grandes tendências. Portanto, faz sentido ter uma estratégia para quando o mercado não está variando.
Por exemplo, você pode querer operar uma estratégia de seguimento da estratégia, bem como um sistema de reversão médio ou você pode ter um filtro para impedir que você entre negociações de reversão média quando o mercado está em tendência.
Este livro do Dr. Howard Bandy é bom para comerciantes de reversão média. Eu direi que algumas das idéias são bastante complexas e, em geral, o livro está voltado para os usuários da Amibroker. No entanto, é uma boa adição à biblioteca para comerciantes sérios.
Idéias para sistemas de negociação de reversão média.
• Quando o preço de mercado é maior do que a Banda superior de Bollinger, venda o mercado.
• Quando o preço do mercado for inferior ao Bollinger Band inferior, compre o mercado.
• Quando RSI tem menos de 20, compre o mercado.
• Quando o RSI tem mais de 80 anos, venda o mercado.
• Quando o índice do canal de commodities (CCI) é superior a 120, venda o mercado.
• Quando o índice do canal de commodities (CCI) for inferior a -120, compre o mercado.
• Quando o mercado é 10% superior aos 50 EMA, venda o mercado.
• Quando o mercado é 10% inferior aos 50 EMA, compre o mercado.
• Quando o VIX é 20% maior do que a média de dois anos, compre o mercado.
• Quando o EPS de 5 anos de uma ação cai 20% abaixo da média, compre o estoque.
Um exemplo do curso.
As estratégias de reversão média tendem a funcionar melhor em prazos mais curtos e, portanto, são ideais para comerciantes swing. Na Marwood Research, várias estratégias de reversão média são reveladas, como Bar Strength.
A seguinte ideia é projetada usando uma fórmula muito simples que mede a inclinação entre dois pontos recentes em uma média móvel exponencial de 24 períodos (EMA). A fórmula Amibroker para o indicador é a seguinte:
A fórmula GRA (gradiente), portanto, mede a inclinação da curva EMA.
Uma posição de compra é inserida sempre que o GRA cai abaixo de 0,98, pois isso indica uma condição de sobreposição significativa. Sempre que o GRA se desloca após 1,02, a posição está fechada.
Testei o sistema em dados diários sobre os estoques S & P 500 entre 2000 e 2018 e recebi um retorno anual composto de 16,73%.
Veja Mais Posts Like This One.
Compartilhe esta publicação:
Um comentário.
Deixe uma resposta Cancelar resposta.
Recursos educacionais recomendados:
Lembre-se: o comércio financeiro é arriscado e você pode perder dinheiro. Nada neste site deve ser considerado como um conselho personalizado de investimento. O desempenho passado não é indicativo de resultados futuros. Veja o aviso completo.
Pesquisa.
JB Marwood.
Tradutor independente, analista e escritor.
JB Marwood é um comerciante independente e escritor especializado em sistemas mecânicos de negociação. Ele começou sua carreira comercializando o FTSE 100 e German Bund para uma casa comercial em Londres e agora trabalha com sua própria empresa. Ele também escreve para Seeking Alpha e outras publicações financeiras. Google+
Lembre-se de que o comércio financeiro é arriscado e você pode sofrer uma perda significativa de capital. Nada neste site deve ser interpretado como um conselho de investimento personalizado. Veja o aviso completo.

No comments:

Post a Comment