Monday 1 January 2018

Amibroker trading system tutorial


14 de outubro de 2017 Adicionado em 29 de fevereiro de 2017, pontos adicionais a serem considerados: 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 os dias em que o 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 OL. Para confirmar ainda isso, adicionei a condição oposta: Compre Compre E 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 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 atributos de resposta de comerciantes de joelhos. Tais padrões geralmente são afogados por grande volume de negócios, portanto, este sistema funciona muito melhor quando você seleciona tickers com volumes entre 500,000 e 5,000,000 shareday. 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 Este post descreve uma idéia de negociação simples muito simples que compra em uma determinada porcentagem abaixo de ontem8217s baixa, e sai no dia seguinte8217s aberto. Enquanto às vezes pode ser difícil obter o preço aberto exato, a alta rentabilidade deste sistema o 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. As posições abertas definidas para 1, para o período de 12102003 a 12102017, se parecem com isso: algumas das outras Watchlists dão menos exposição (lucros), mas isso vem com DDs mais baixos. As comissões foram definidas para 0,005 por ação. Nenhuma margem utilizada. Não é utilizado nenhum ranking explícito. 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 comercializados de forma diferente dos listados na parte inferior. Preste atenção ao liquidez (você pode querer negociar mais de uma posição) e deslizamento (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 apenas escolhidos de um chapéu. Quase certamente 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 negociadas, os parâmetros parecem não muito críticos. Over-optimizing doesn8217t 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 um 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 enquanto você os executa em tempo real 8212, é por isso que a AmiBroker e a tecnologia podem lhe dar uma vantagem. Se você Ref () voltar a TrendMA por uma barra, o sistema ainda é muito lucrativo, no entanto, os DDs aumentam para algumas Watchlists. Se você usa investimentos fixos, a diferença é insignificante. O procedimento de negociação seria iniciar a varredura antes do mercado abrir e remover os tickers com preços tão remotos que provavelmente não encontrarão o OpenThresh. Assim, você pode começar a escanear 1000 símbolos, mas muito rapidamente o número escaneado irá diminuir 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 perto do Open 8211, você pode até mesmo melhorar o preço Open. Embora algumas pessoas tenham olhado o código abaixo e não encontraram 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 Ideias (Experimental) Comments Off no sistema EOD Gap-Trading Portfolio 1 de setembro de 2017 Esta idéia foi postada (161332) na lista principal do AmiBroker em 3 de julho de 2017. Foram numerosos comentários excelentes sobre A lista e se você estiver interessado em trabalhar neste sistema, você faz bem em lê-los todos antes de começar. Depois de publicar, encontrei uma série de postagens na web discutindo essa idéia de negociação, alguns alegaram estar negociando um sistema similar com um bom sucesso. Eu me referi a este sistema um sistema 8220Gap Trading8221, mas isso pode ser um pouco de um nome incorreto, 8220Mean reversion8221 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 de negociação amplamente discutida e sugiro que você faça alguns Googling por conta própria para aprender o mais recente. Como um usuário do Amibroker, você possui melhores ferramentas do que a maioria dos comerciantes e você tem uma chance melhor do que a maioria para criar uma variação que funciona. Talvez com um pouco menos lucros, e com uma quantidade significativa de código adicional 8212 ganhou8217t seja um projeto 8220quicky8221 :-) 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 posso reivindicar saber se é negociável ou não. O sistema compra em uma determinada porcentagem abaixo de ontem8217s baixo, 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 EOD Gap de longo tempo Eu uso um pequeno critério de configuração para procurar minhas ações. MACD padrão, procuro barras 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 com clareza). MACD acima Zero Line RSI Acima 30 Este sistema baseia-se na negociação de tendências. Comprar no pullback quando o mercado continuar sua tendência ascendente. Para pesquisar as configurações da Tendência MACD: 1) Insira a seguinte fórmula em um gráfico. 2) Execute uma verificação 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 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é 5112007. Idéia comercial por protraderinc. Comentários e fórmulas pelo Bill 8211 WaveMechanic. Arquivado por brianz às 11:06 pm sob Ideias (Experimental) Comentários desativados no MACD Trend System 14 de outubro de 2007 Arquivado por brianz às 10:43 pm sob Ideias (Experimental) Comments Off no 15 Day Performers Trading System 19 de agosto de 2007 Isso é O primeiro em uma série de idéias comerciais 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 pretendem mostrar padrões possíveis para uma exploração posterior. Como sempre, você é convidado a fazer comentários ou a adicionar suas próprias idéias a esta série. Eu prefiro sistemas em tempo real que comercializam rápido, são automatizados e são desprovidos de indicadores tradicionais. De preferência, eles não devem ter parâmetros otimizáveis ​​no entanto, nem sempre posso conseguir esse objetivo. Nem todos os sistemas serão tão simples, haverá alguns que usam funções de tipo simples de média ou HHVLLV. 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. Real-time Gap-Trading. Para ver como isso funciona, você deve 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 devidos a um mercado superior, no entanto, o fato de que os lucros Longos e Curtos são aproximadamente iguais sugerem que há mais. Como 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ê quiser apenas trocar um curto período de tempo por dia. Isso reduz o risco em relação à exposição ao mercado e dá mais tempo para aproveitar outras atividades. O teste posterior na lista de vigilância do 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 dos tickers são omitidos para manter o gráfico compacto, o gráfico mostra simplesmente um lucro líquido Barra para cada ticker testado. A exposição média para este sistema é cerca de 15, portanto, você pode negociar carteiras para aumentar os lucros e suavizar as curvas de equivalência patrimonial. Seja advertido de 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 para 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 comerciantes trocam ao mesmo tempo, seria difícil aumentar a exposição do sistema. Arquivado por Herman às 1:49 pm sob Ideas (Experimental) Comments Off no KISS-001: Intraday Gap Trading 17 de agosto de 2007 Você está convidado a enviar links para ideias do sistema em comentários para esta publicação. Gap Trading Strategies 8211 Stockcharts Intraday Moving Average Crossover com dimensionamento de posição 8211 NeoTicker Volatility-Breakout-Systems 8211 Traders Log Sistema de HighLow de dez dias 8211 StockWeblog Reversion Systems 8211 SeekingAlpha Systems Traders Club. Boletins do Clube Comerciante. 16 de julho de 2007 Esta categoria é reservada para sistemas reais de negociação de trabalho, ou seja, você negociou em algum momento ou consideraria negociar. Uma vez que os critérios para a comercialização variam de pessoa para pessoa, e como os sistemas podem funcionar ou não dependendo da forma como são negociados, será difícil rever as 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 publicando como um autor (requer registro) ou em um comentário para esta publicação. Arquivado por Herman às 11:14 am sob Comentários Práticos (Rentáveis) Desativados na Introdução aos Sistemas de Negociação 8211 Prático É onde 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 de 50. Tais sistemas podem ser melhorados pela adição de Stops, Targets, Gerenciamento de Dinheiro, técnicas de portfólio, etc. A realidade é que, embora você não tenha a experiência necessária para fazer Isso funciona, alguém pode. Quase todos nós encontramos idéias de sistemas 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 IdeasWriting AFL para Amibroker Os melhores recursos para Amibroker AFL podem ser encontrados através da biblioteca Amibroker AFL ou um dos fóruns Amibroker yahoo. Aqui há geralmente muitos comerciantes generosos que estão felizes em compartilhar alguns de seus códigos e dar assistência, se necessário. Eu também fornecem código para 20 sistemas de negociação escritos na AFL com todas as compras do meu livro ou curso e publicaremos muito código livre da AFL aqui no futuro, então certifique-se de voltar regularmente. Novo para Amibroker Por sorte, escrever AFL para Amibroker é bastante direto, mesmo para alguém sem antecedentes em programação. Se você é novo no Amibroker, recomendarei um conselho que recebi pela primeira vez no fórum Amibroker: Comece com dados do fim do dia para ações dos EUA e procure sistemas simples e robustos. Tudo o que você precisa de um bom sistema de negociação pode ser encontrado com dados do EOD e, a partir daqui, deve ser possível alcançar retornos de 30 CAR por ano com um pouco de trabalho. A partir daí, você pode começar a trabalhar em retornos ainda maiores, mas lembre-se de retornos mais altos significarão inerentemente um risco maior. Em dados de fim de dia eu significo dados que mostram alta, baixa, aberta e fechada a partir do dia de negociação. It8217s é muito melhor para se concentrar nos sistemas diários ou semanais e ignorar a comercialização do dia se você é novo nos mercados. E lembre-se, nenhum sistema comercial pode ser criado sem dados de boa qualidade. Eu recomendo Norgate Premium Data e você pode obter uma avaliação gratuita do serviço aqui. Escrevendo AFL para Amibroker Quando você começa a escrever Amibroker AFL it8217s uma boa idéia para começar com um tipo de modelo que você pode usar como base de vários sistemas de negociação. Eu costumo começar com algo assim, (as opções definidas também podem ser definidas no painel Amibroker, mas it8217s melhor para escrevê-las no código): SetOption (8220InitialEquity8221, 10000) Este define o quanto de capital você precisa negociar, por exemplo. 10.000 SetOption (8220UsePrevBarEquityForPosSizing8221, True) Permite que o tamanho da posição seja calculado usando os fundos anteriores do bar8217s. Pode ser ativado ou desativado It8217s geralmente não é possível trocar no momento exato em que ocorre um sinal. Então, você pode atrasar as entradas de compra, venda, curto e cobertura por 1 (ou mais) barras. SetOption (8220MaxOpenpositions8221, 10) Define as posições máximas abertas que deseja ao mesmo tempo. I8217ve definir o meu em 10 como eu troco um portfólio de 10 ações. Amibroker entra em negociações com base na classificação de sinal também conhecida como posiçãocore. Se você mantém posições curtas e longas, esta variável permite que elas sejam classificadas separadamente para que você não acabe favorecendo uma direção sobre a outra. SetOption (8220Maxopenlong8221, MOL) SetOption (8220Maxopenshort8221, MOS) MOL 10 MOS 5: Este código permite um máximo de 10 posições longas e 5 posições curtas a qualquer momento. SetOption (8220AllowSameBarExit8221, True) Permite que os negócios sejam fechados na mesma barra que o sinal de saída ou sinal de parada ocorre Númeroposições 10 SetOption (8220Maxopenpositions8221, numberpositions) SetPositionSize (1, spsShares) PositionSize -2018 Este é o segmento do código que eu uso para configurar Meu posicionamento ou risco. -20 10 significa que meu tamanho de posição por comércio é 20 da minha conta dividido por 10. Em outras palavras, se eu começar com 10.000, meu primeiro comércio terá um valor de estoque de 200. Para obter o número de ações, você simplesmente divide isso Número pelo preço das ações. Por exemplo, para um estoque que é 12, vou comprar 16 ações. Negociações de classificação Uma vez que o 8217s está no lugar, é uma boa ideia para definir métricas do positioncore e insira as fórmulas para os indicadores que você planeja usar. Lembre-se, positioncore determina a classificação. Se você tiver mais de um sinal comercial, a Amibroker terá o comércio mais marcado. Isso é bastante importante, especialmente se o seu sistema gera muitos sinais na mesma barra do dia. Você pode usar qualquer cálculo que você gosta. Aqui estão algumas idéias: PositionScore RSI (14) 8211 100 Prefere posições longas com valores mais baixos de RSI e posições curtas com alto RSI PositionScore ATR (10) 8211 100 Prefere posições longas com valores menores de ATR (valor médio real) PositionScore ROC (C, 1 ) -1 Prefere posições longas com valores mais baixos de ROC (taxa de variação). Em seguida, você pode inserir suas condições de compra e venda. Quando você escreve AFL para a Amibroker it8217s, uma boa idéia para manter tudo organizado para que você não cometa nenhum erro e você pode facilmente entendê-lo no futuro. Here8217s um exemplo de cruzamento de média móvel muito simples: Buy Cross (fastEMA, slowEMA) Compra quando o EMA de 50 períodos atravessa o período de 200 EMA. Sell ​​Cross (slowEMA, fastEMA) Vende quando o período de 200 EMA cruza sob o período de 50 EMA. Depois de tentar isso, você pode definir otimizar alguns de seus parâmetros como abaixo: fastema Optimize (8220fastEMA8221,50,25.200,25) slowema Optimize (8220slowEMA8221,200,180,300,20) Quando executado, o otimizador irá percorrer esses valores e apresentar Eles em uma tabela mostrando quais foram os melhores. Os números entre parênteses representam (configuração padrão, primeira iteração, iteração final, etapa). Em outras palavras, o otimizador primeiro testará o fastema com a configuração 8217258217, então continuará testando em intervalos de 25 até chegar a 200 onde ele pára. Se você executar o backtest sem o otimizador, o Amibroker usa a configuração padrão (50). Após as condições de compra e venda, você pode inserir o código que traça seus vários indicadores no gráfico e quaisquer cálculos que você possa ter com a curva de equivalência patrimonial. Para mais código, certifique-se de verificar aqui regularmente, pois planejo publicar vários sistemas de negociação analisados ​​e apresentados com a AFL para a Amibroker. It8217s também é uma boa idéia para verificar os recursos da Amibroker para back-testing e testes de portfólio aqui. Veja Mais Posts Like This JB Marwood

No comments:

Post a Comment