Monday 5 February 2018

Desenvolvimento automatizado da estratégia de negociação


AlgoTrader Algorithmic Trading Software.
O AlgoTrader é a primeira solução de software de negociação algorítmica totalmente integrada para fundos hedge quantitativos. Ele permite a automação de estratégias de negociação complexas e quantitativas em mercados de ações, Forex e Derivados. O AlgoTrader fornece tudo o que um fundo de hedge quantitativo típico precisa diariamente para executar sua operação e é o primeiro e único produto de software de negociação algorítmica para permitir o comércio automatizado de Bitcoin e outras Cryptocurrencies.
AlgoTrader Benefícios.
Automatizado - Qualquer estratégia de negociação quantitativa pode ser totalmente automatizada.
Rápido - Os altos volumes de dados de mercado são processados, analisados ​​e atuados automaticamente em velocidade ultra alta.
Customizable - Arquitetura de código aberto pode ser personalizada para requisitos específicos do usuário.
Rentável: a negociação totalmente automatizada e os recursos internos reduzem o custo.
Confiável - Construído na arquitetura mais robusta e tecnologia de ponta.
Totalmente suportado - orientação abrangente disponível para instalação e personalização. Treinamento e consultoria no local e remoto disponíveis.
Recursos do AlgoTrader.
AlgoTrader, como funciona.
Qualquer estratégia de negociação baseada em regras pode ser totalmente automatizada:
Chegam dados eletrônicos do mercado. Os dados são encaminhados para estratégias de negociação em execução no AlgoTrader. As estratégias de negociação analisam, filtram e processam dados de mercado e criam sinais comerciais. Com base em sinais comerciais, as ações são executadas (por exemplo, colocando um pedido ou fechando uma posição). As encomendas são enviadas para os respectivos mercados.
AlgoTrader Services & # 038; Treinamento.
Consulta e treinamento no local e remoto: Automação e migração de estratégias existentes Melhorando e otimizando estratégias existentes Protótipos e backtesting de novas estratégias Desenvolvimento de funcionalidades personalizadas Documentação completa e guias de usuários.
Últimas notícias.
AlgoTrader entre os 5 vencedores do Swisscom Startup Challenge de 17 a 20 de agosto de 2010.
Apresentando o AlgoTrader 4.0 - Repleto de novos recursos poderosos Jul-17-2017.
O AlgoTrader faz parte do Swiss National Fintech Team 2017 Jun-12-2017.
Testemunhos.
A Vontobel aprecia a arquitetura aberta e extensível do AlgoTrader, bem como o uso de componentes de código aberto padrão usados ​​como o Esper e o Spring.
Benjamin Huber, chefe da Algo Trading & # 038; Smart Order Routing, Bank Vontobel AG, Zürich.
Estamos impressionados com as capacidades da AlgoTrader em termos de desenvolvimento estratégico e flexibilidade técnica. O AlgoTrader é a tecnologia chave que nos permite negociar várias estratégias VIX Future e Option em paralelo.
Raimond Schuster, Membro da Comissão Executiva, ISP Securities AG, Zürich.
Todos os direitos reservados.
Links Sociais.
Endereço inferior.
Suíça Ligue-nos: +41 44 291 14 85 Email:
1. Vá para aws. amazon e clique em & # 8220; Inicie sessão na consola & # 8221; (veja a imagem abaixo)
2. Se ainda não possui uma conta Amazon AWS, siga o processo de registro clicando em "Criar conta AWS"
3. Uma vez conectado ao console Amazon AWS, selecione "Minha conta" no menu no lado superior direito da tela sob seu nome de usuário.
4. Na próxima tela, você verá o ID de Amazon de 12 dígitos exibido em "Configurações da conta"
OS TERMOS E CONDIÇÕES DO CONTRATO DE LICENÇA DO USUÁRIO FINAL (& # 8220; ACORDO & # 8221;) GOVERNECE O USO DO SOFTWARE A MENOS QUE VOCÊ E O LICENCIANTE EXECUTAM UM ACORDO DE LICENÇA ESCRITO SEPARADO QUE REGULA O USO DO SOFTWARE.
O Licenciador está disposto a conceder a licença do Software apenas mediante a condição de você aceitar todos os termos contidos neste Contrato. Ao assinar este Contrato ou ao fazer download, instalar ou usar o Software, você indicou que entendeu este Contrato e aceita todos os seus termos. Se você não aceitar todos os termos deste Contrato, então o Licenciador não está disposto a licenciar o Software, e você não pode baixar, instalar ou usar o Software.
1. CONCESSÃO DE LICENÇA.
uma. Licença de Uso de Avaliação e Uso de Avaliação. Sujeito à sua conformidade com os termos e condições deste Contrato, o Licenciante concede a você uma licença pessoal, não exclusiva e não transferível, sem o direito de sublicenciar, durante o termo deste Contrato, usar o Software exclusivamente para Uso de avaliação e uso de desenvolvimento. Os produtos ou módulos de software de terceiros fornecidos pelo Licenciante, se houver, podem ser usados ​​exclusivamente com o Software e podem estar sujeitos à aceitação dos termos e condições fornecidos por esses terceiros. Quando a licença terminar, você deve parar de usar o Software e desinstalar todas as instâncias. Todos os direitos não especificamente concedidos aqui são conservados pelo Licenciador. O desenvolvedor não deve fazer nenhum uso comercial do Software, ou qualquer trabalho derivado dele (incluindo para fins de negócios internos do Desenvolvedor). Copiando e redistribuindo, de qualquer forma, o Software ou o Aplicativo de desenvolvedor para seus clientes diretos ou indiretos é proibido.
b. Licença de uso de produção. Sujeito à sua conformidade com os termos e condições deste Contrato, incluindo o pagamento da taxa de licença aplicável, o Licenciante concede a você uma licença não exclusiva e não transferível, sem o direito de sublicenciar, durante o termo deste Contrato, para : (a) use e reproduza o Software exclusivamente para seus próprios fins de negócios internos (& # 8220; Uso de Produção; # 8221;); e (b) fazer um número razoável de cópias do Software apenas para fins de backup. Essa licença é limitada ao número específico de CPUs (se licenciado pela CPU) ou instâncias de Java Virtual Machines (se licenças por máquina virtual) para as quais você pagou uma taxa de licença. O uso do Software em uma maior quantidade de CPUs ou instâncias de Java Virtual Machines exigirá o pagamento de uma taxa de licença adicional. Os produtos ou módulos de software de terceiros fornecidos pelo Licenciador, se houver, podem ser utilizados exclusivamente com o Software.
c. Não existem outros direitos. Os seus direitos e o uso do Software são limitados aos expressamente concedidos nesta Seção 1. Você não fará nenhum outro uso do Software. Exceto quando expressamente licenciado nesta Seção, o Licenciante não lhe concede outros direitos ou licenças, por implicação, impedimento ou de outra forma. TODOS OS DIREITOS NÃO CONCEDIDOS EXPRESSAMENTE AQUI SÃO RESERVADOS PELO LICENCIANTE OU SEUS FORNECEDORES.
2. RESTRIÇÕES.
Exceto conforme expressamente previsto na Seção 1, você não: (a) modificará, traduzirá, desmontará, criará obras derivadas do Software ou copiará o Software; (b) alugar, emprestar, transferir, distribuir ou conceder quaisquer direitos no Software de qualquer forma a qualquer pessoa; (c) fornecer, divulgar, divulgar ou disponibilizar, ou permitir o uso do Software, por qualquer terceiro; (d) publicar qualquer benchmark ou teste de desempenho executado no Software ou qualquer parte dele; ou (e) remover quaisquer avisos de propriedade, rótulos ou marcas no Software. Você não distribuirá o Software a qualquer pessoa em uma base autônoma ou em um fabricante de equipamento original (OEM).
3. PROPRIEDADE.
Entre as partes, o Software é e permanecerá propriedade única e exclusiva do Licenciador, incluindo todos os direitos de propriedade intelectual nele contidos.
uma. No caso de você usar o Software sob a licença estabelecida na Seção 1 (a), este Contrato permanecerá em vigor durante o período de avaliação ou desenvolvimento.
b. No caso de você usar o Software sob a licença estabelecida na Seção 1 (b), este Contrato permanecerá em vigor, seja (a) por um período de um ano, se adquirido como uma licença de assinatura anual ou (b) perpetuamente se comprado como um licença perpétua. Uma licença de assinatura anual será renovada automaticamente por um ano, a menos que seja encerrado com aviso prévio de um mês. Este Contrato terminará automaticamente sem aviso prévio se você violar qualquer termo deste Contrato. Após a rescisão, você deve imediatamente deixar de usar o Software e destruir todas as cópias do Software em sua posse ou controle.
5. SERVIÇOS DE APOIO.
Se você comprou esta licença, incluindo Serviços de Suporte, isso inclui Lançamentos de Manutenção (Atualizações e Atualizações), suporte por telefone e suporte por e-mail ou web.
uma. O Licenciador fará esforços comercialmente razoáveis ​​para fornecer uma atualização projetada para resolver ou ignorar um erro relatado. Se tal erro tiver sido corrigido em uma versão de manutenção, o Licenciado deve instalar e implementar a versão de manutenção aplicável; Caso contrário, a Atualização pode ser fornecida sob a forma de uma correção, procedimento ou rotina temporária, a ser usada até que uma Atualização de Manutenção contendo a Atualização permanente esteja disponível.
b. Durante o Termo do Contrato de Licença, o Licenciador deverá disponibilizar os Lançamentos de Manutenção ao Licenciado se, à medida que o Licenciador disponibilizar, em geral, tais Licenças de Manutenção a seus clientes. Se surgir uma questão sobre se uma oferta de produto é uma Atualização ou um novo produto ou recurso, a opinião do Licenciante prevalecerá, desde que o Licenciante considere a oferta de produtos como um novo produto ou recurso para seus clientes finais em geral .
c. A obrigação do Fornecedor de fornecer serviços de suporte está condicionada ao seguinte: (a) O titular da licença faz esforços razoáveis ​​para corrigir o erro depois de consultar o Licenciador; (b) O Licenciado fornece ao Licenciador informações e recursos suficientes para corrigir o erro no site do Licenciante ou no acesso remoto ao site do Licenciado, bem como no acesso ao pessoal, ao hardware e a qualquer outro software envolvido na descoberta do erro; (c) O titular da licença instala prontamente todas as versões de manutenção; e (d) o Licenciado adquire, instala e mantém todos os equipamentos, interfaces de comunicação e outros equipamentos necessários para operar o Produto.
d. O Licenciador não é obrigado a prestar serviços de suporte nas seguintes situações: (a) o Produto foi alterado, modificado ou danificado (exceto se sob supervisão direta do Licenciador); (b) o erro é causado pela negligência do Licenciado, falta de hardware ou outras causas além do controle razoável do Licenciador; (c) o erro é causado por software de terceiros não licenciado através do Licenciador; (d) O Licenciado não instalou e implementou a (s) Versão (s) de Manutenção para que o Produto seja uma versão suportada pelo Licenciador; ou (e) O Licenciado não pagou as taxas da Licença ou dos Serviços de Suporte quando vencer. Além disso, o Licenciador não é obrigado a fornecer serviços de suporte para o código de software escrito pelo próprio cliente com base no Produto.
e. O Licenciador reserva-se o direito de interromper os Serviços de Apoio se o Licenciador, a seu exclusivo critério, determinar que o suporte contínuo para qualquer Produto não é mais economicamente praticável. O Licenciador dará ao Licenciado pelo menos três (3) meses de antecedência prévia por escrito de qualquer descontinuação de Serviços de Apoio e reembolsará quaisquer taxas de Serviços de Suporte não acumuladas que o Licenciado pode ter pago antecipadamente em relação ao Produto afetado. O Licenciador não tem obrigação de suportar ou manter qualquer versão do Produto ou plataformas de terceiros subjacentes (incluindo, mas não limitado a, software, JVM, sistema operacional ou hardware) para o qual o Produto é suportado, exceto (i) a versão atual do Produto e plataforma de terceiros subjacente, e (ii) as duas versões imediatamente anteriores do Produto e do sistema operacional por um período de seis (6) meses após a sua primeira substituição. O Licenciador reserva-se o direito de suspender o desempenho dos Serviços de Apoio se o Licenciado não pagar qualquer montante a pagar ao Licenciador sob o Contrato no prazo de trinta (30) dias após esse valor ser devido.
6. GARANTIA.
uma. O Licenciador garante que o Software será capaz de realizar em todos os aspectos relevantes de acordo com as especificações funcionais estabelecidas na documentação aplicável por um período de 90 dias após a data em que você instalou o Software. Em caso de incumprimento de tal garantia, o Licenciante deverá, a seu critério, corrigir o Software ou substituir esse Software gratuitamente. O que precede são os seus únicos e exclusivos remédios e a única responsabilidade do Licenciador por violação dessas garantias. As garantias estabelecidas acima são feitas e em benefício de você apenas. As garantias aplicar-se-ão somente se (a) o Software tiver sido devidamente instalado e usado em todos os momentos e de acordo com as instruções de uso; (c) as atualizações mais recentes foram aplicadas ao software; e (c) nenhuma modificação, alteração ou adição foi feita ao Software por pessoas que não sejam o Licenciante ou o representante autorizado do Licenciador.
7. RENÚNCIA.
EXCEPTO, COMO SEJA FORNECIDO NO ÂMBITO DA SEÇÃO 6 (a), O LICENCIANTE EXCLUIRÁ EXPRESSAMENTE TODAS AS GARANTIAS, EXPRESSAS OU IMPLÍCITAS, INCLUINDO QUAISQUER GARANTIAS IMPLÍCITAS DE COMERCIALIZAÇÃO, APTIDÃO PARA UM PROPÓSITO ESPECÍFICO E NÃO INFRACÇÃO, E QUAISQUER GARANTIAS DECORRENTES DO CURSO DE NEGOCIAÇÃO OU USO DE COMÉRCIO. NENHUM AVISO OU INFORMAÇÃO, SEJA ORAL OU ESCRITO, OBTIDO DO LICENCIANTE OU DE OUTRO PODE CRIARÁ QUALQUER GARANTIA NÃO EXPRESSAMENTE INDICADA NESTE ACORDO.
O Licenciante não garante que o Produto de Software atenda seus requisitos ou opere sob suas condições específicas de uso. O Licenciante não garante que a operação do Produto de Software seja segura, sem erros ou sem interrupção.
VOCÊ DEVE DETERMINAR SE O PRODUTO DE SOFTWARE SUFICIENTEMENTE CARREGA SEUS REQUISITOS PARA SEGURANÇA E ININTERRUPTABILIDADE. VOCÊ PODE SER ÚNICA RESPONSABILIDADE E TODA A RESPONSABILIDADE POR QUALQUER PERDA INCURRIDA POR FALHA DO PRODUTO DO SOFTWARE PARA CUMPRIR OS SEUS REQUISITOS. O LICENCIANTE NÃO SERÁ RESPONSÁVEL PELA PERDA DE DADOS POR QUALQUER COMPUTADOR OU DISPOSITIVO DE ARMAZENAMENTO DE INFORMAÇÕES, SOB QUALQUER CIRCUNSTÂNCIA.
8. LIMITAÇÃO DE RESPONSABILIDADE.
A RESPONSABILIDADE TOTAL DO LICENCIANTE & # 8217; SÃO DE TODAS AS CAUSAS DE AÇÃO E SOB TODAS AS TEORIAS DE RESPONSABILIDADE SERÃO LIMITADAS E NÃO EXCEDERÃO A TAXA DE LICENÇA PAGADA POR VOCÊ PARA O LICENCIANTE PARA O SOFTWARE. EM NENHUM CASO, O LICENCIANTE SERÃO RESPONSÁVEIS POR QUAISQUER DANOS ESPECIAIS, INCIDENTAIS, EXEMPLARES, PUNITIVOS OU CONSEQÜENCIAIS (INCLUINDO PERDA DE USO, DADOS, NEGÓCIOS OU LUCROS) OU PARA O CUSTO DE PRODUTOS DE SUBSTITUIÇÃO DE PROCURAÇÃO QUE SÃO FORA DE OU EM CONEXÃO COM ESTE ACORDO OU O USO OU O DESEMPENHO DO SOFTWARE, SEJA TAL RESPONSABILIDADE DECORRENDO DE QUALQUER RECLAMAÇÃO COM BASE NO CONTRATO, GARANTIA, HORTOSÃO (INCLUINDO NEGLIGÊNCIA), RESPONSABILIDADE ESTRITA OU DE OUTRA FORMA, E SE O LICENCIANTE TENHA SIDO AVISADO DA POSSIBILIDADE DE TAL PERDA OU DANIFICAR. AS LIMITAÇÕES ANTERIORES SOBREVIVARÃO E APLICAREM MESMO SE QUALQUER REMÉDIO LIMITADO ESPECIFICADO NESTE ACORDO SE ENCONTRARÁ PARA QUE NÃO FALOU DE SEU PROPÓSITO ESSENCIAL. NA EXTENSÃO DE QUE A LEGISLAÇÃO APLICÁVEL LIMITA O LICENCIANTE DE APLICAÇÃO DE CUSTAS GARANTIAS IMPLÍCITAS, ESTA ISENÇÃO DE RESPONSABILIDADE SERÁ EFICAZ NA MÁXIMA EXTENSÃO PERMITIDA.
Se qualquer disposição deste Contrato for considerada inválida ou inexequível, o restante deste Contrato permanecerá em pleno vigor e efeito. Na medida em que quaisquer restrições expressas ou implícitas não sejam permitidas pelas leis aplicáveis, essas restrições expressas ou implícitas permanecerão em vigor e aplicadas na extensão máxima permitida por tais leis aplicáveis.
Este Contrato é o acordo completo e exclusivo entre as partes em relação ao assunto em questão, substituindo e substituindo todos e quaisquer acordos, comunicações e entendimentos anteriores (tanto escritos quanto orais) em relação a esse assunto. As partes deste Contrato são empreiteiras independentes, e tampouco tem o poder de vincular o outro ou de incorrer em obrigações em favor do outro. Nenhuma falha de qualquer das partes para exercer ou fazer valer qualquer dos seus direitos ao abrigo do presente acordo constituirá uma renúncia a tais direitos. Quaisquer termos ou condições contidos em qualquer pedido de compra ou outro documento de pedido que sejam inconsistentes ou adicionais aos termos e condições deste Contrato são rejeitados pelo Licenciador e serão considerados nulos e sem efeito.
Este Acordo será interpretado e interpretado de acordo com as leis da Suíça, sem levar em conta os princípios do conflito de leis. As partes concordam com a jurisdição exclusiva e o local dos tribunais localizados em Zurique, Suíça, para resolução de eventuais litígios decorrentes ou relacionados a este Contrato.
10. DEFINIÇÕES.
& # 8220; Avaliação Use & # 8221; significa o uso do Software exclusivamente para avaliação e avaliação para novas aplicações destinadas ao seu Uso de Produção.
& # 8220; Uso de Produção & # 8221; significa usar o Software apenas para fins comerciais internos. O Uso da Produção não inclui o direito de reproduzir o Software para sublicenciar, revender ou distribuir, incluindo, sem limitação, operação em um compartilhamento de tempo ou distribuição do Software como parte de um arranjo ASP, VAR, OEM, distribuidor ou revendedor.
& # 8220; Software & # 8221; significa o software do licenciador e todos os seus componentes, documentação e exemplos incluídos pelo Licenciador.
& # 8220; Erro & # 8221; significa (a) uma falha no Produto de acordo com as especificações estabelecidas na documentação, resultando na incapacidade de usar ou restrição no uso do Produto, e / ou (b) um problema que requer novos procedimentos, esclarecimentos, informações adicionais e / ou solicitações de aprimoramentos de produtos.
& # 8220; Liberação de manutenção & # 8221; significa Atualizações e Atualizações para o Produto que estão disponíveis para licenciados de acordo com os Serviços de Suporte padrão definidos na seção 5.
& # 8220; Update & # 8221; significa uma modificação ou adição de software que, quando feita ou adicionada ao Produto, corrige o Erro, ou um procedimento ou rotina que, quando observado na operação regular do Produto, elimina o efeito adverso prático do Erro no Licenciado.
& # 8220; Upgrade & # 8221; significa uma revisão do Produto divulgada pelo Licenciador aos seus clientes finais em geral, durante o Termo de Serviços de Suporte, para adicionar funções novas e diferentes ou para aumentar a capacidade do Produto. A atualização não inclui a liberação de um novo produto ou recursos adicionais para os quais pode haver uma cobrança separada.

Desenvolvimento automatizado da estratégia de negociação
OpenQuant é uma plataforma de desenvolvimento de sistema de negociação automatizada (ATS) projetada em torno do conhecido SmartQuant Financial Data Analysis and Trading Framework. A estrutura está em desenvolvimento desde 1997 e atualmente é usada por instituições financeiras líderes em todo o mundo.
Recursos OpenQuant.
- O OpenQuant é desenvolvido no topo do quadro de negociação institucional líder.
- linguagens de desenvolvimento de estratégias reais: C # e VisualBasic.
- sem scripts. OpenQuant sempre executa código compilado, fornecendo o melhor desempenho possível.
- backtesting e negociação do sistema de nível de portfólio.
- classes de ativos múltiplos (ações, futuros, opções, ETF, FOREX)
- contabilidade e simulações multi-moeda.
- arquitetura verdadeiramente orientada para eventos. Não existe um loop de backtesting "for" artificial. As estratégias são executadas no modo de simulação exatamente da mesma forma que elas são executadas no modo de negociação ao vivo.
- múltiplos sistemas de negociação.
- backtesting intradiário e negociação automatizada com dados de tick.
- aprofundamento do mercado e suporte ao livro de pedidos.
- barras de tempo, marca, volume e alcance.
- suporte a vários quadros de tempo.
- Biblioteca de análise técnica com mais de cem indicadores.
- indicadores definidos pelo usuário.
- biblioteca de matemática financeira e análise quantitativa (preço derivativo, volatilidade implícita, etc.)
- biblioteca de álgebra linear (operações vetoriais e matriciais)
- otimização de estratégia, incluindo otimização estocástica.
- Backtesting e simulações de alto desempenho, até 10.000.000 + carrapatos por segundo e mais com motor de dados de QuantServer incorporado.
- ordens de mercado, stop, limite, stop limite. Grupos OCA (One Cancels All). Grupos OCA simulados internamente para corretores que não suportam OCA nativamente.
- Gerenciamento direto de pedidos: Enviar, Cancelar, Substituir pedidos.
- autoexecution, roteamento de pedidos, suporte FIX, mecanismo incorporado QuickFIX. Comutação de um clique da simulação para o modo de negociação ao vivo.
Suporte de dados e corretores suportados.
IB, PATS, TAL, ESIGNAL, Foton Trader, MB Trading, TAQ, YAHOO, Google, CSI, Open Tick, IQ Feed, QuoteTracker, Genesis Securities, Nordic Stock Exchange, Open E Cry, New Edge, Morgan Stanley, TT X_Trader via Adaptador TT FIX e XTAPI, CQG FIX, Lightspeed, HotSpot FIX, Currenex FIX, FIX Integral, DB (Deutsche Bank) FIX, suporte a provedores genéricos FIX.
AlfaDirect, ItInvest, QUIK, OSL FIX, QUIK FIX, Finam TRANSAQ, Plaza II.
Uma interface aberta para desenvolver plugins personalizados de dados e provedores de execução.
OpenQuant Demo Download.
Baixe a versão de avaliação de 30 dias do OpenQuant.
OpenQuant Community and Support.
Você pode discutir o OpenQuant no SmartQuant Public Forums.
OpenQuant Flash Video Tutorials.
Vídeo 1 - Este vídeo demonstra como executar uma estratégia de demonstração no modo de simulação e como visualizar e analisar a saída do Startegy.
Vídeo 2 - Este vídeo demonstra como criar um instrumento, importar dados históricos para este instrumento a partir de um arquivo de texto usando Import Vizard e como visualizar e analisar dados importados.
Vídeo 3 - Este vídeo demonstra como configurar propriedades de instrumentos (estoque e futuros) para solicitar e monitorar o feed de dados em tempo real da Interactive Brokers.
Vídeo 4 - Este vídeo demonstra como desenvolver um código de estratégia simples que monitore e imprima dados comerciais e de barras de Interactive Brokers em tempo real.
Vídeo 5 - Este vídeo demonstra como baixar definições de instrumentos, monitorar dados em tempo real e executar pedidos com Open E Cry.
Vídeo 6 - Este vídeo demonstra como baixar definições de instrumentos e dados de mercado históricos com o OpenTick.
Vídeo 7 - Este vídeo demonstra como se conectar à TT XTrader API / TTSIM (dados de mercado e execução de pedidos).
Vídeo 8 - Este vídeo demonstra como se conectar ao TT FIX Adapter / TTSIM (dados de mercado e execução de pedidos).
Vídeo 9 - Este vídeo demonstra como monitorar dados em tempo real e executar pedidos com o MB Trading.
Vídeo 10 - Este vídeo demonstra como capturar dados de tick e barra em tempo real da base de dados históricos do mercado IB para OpenQuant.
Vídeo 11 - Este vídeo demonstra como usar as funcionalidades do scanner de mercado do OpenQuant.
Vídeo 12 - Este vídeo demonstra como depurar estratégias do OpenQuant com o Microsoft Visual Studio.

7 Essentials para desenvolver uma estratégia de negociação algorítmica.
por Bryan Fletcher.
1. Gerenciamento de riscos.
Ao formular uma estratégia de negociação, certifique-se de pensar o quanto você está em risco em todos os momentos.
Medir e rastrear seu risco aberto total em todos os momentos, calculando o quanto você perderia se todas as suas posições forem impedidas.
Você pode fazer isso medindo e ajustando o risco por posição e seu portfólio geral.
Isso significa que você sabe quanto dinheiro você perderá, por porcentagem do seu patrimônio da conta total, se todos os seus negócios fossem interrompidos.
Vamos ver uma maneira de fazer isso em uma estratégia de exemplo simples.
Deixe-nos dizer que você arrisca .5% do seu patrimônio total em cada novo comércio. A estratégia de exemplo usa uma parada final com base no preço mais baixo dos últimos períodos de X no período de tempo Y. Isso é.
Em mercados de movimento lento e paralelo, a parada se aproximará do preço e o risco será reduzido à medida que o tempo passa. Nos movimentos parabolizantes a seu favor, o preço e o risco aberto mover-se-ão muito mais rápido do que a sua parada final.
Seu risco aberto no comércio pode passar de 0,5% para um número múltiplo maior do que isso. Sem um mecanismo para reduzir o risco ainda mais neste comércio, você pode experimentar reduções significativas em sua equidade e psique se o comércio rapidamente retraça todos os seus ganhos. Especialmente quando você tem vários negócios em todos os benefícios do mesmo movimento.
Para os comerciantes do algo, esta descoberta significa que precisamos ter um algoritmo para explicar o risco aberto em cada posição e seu risco geral de portfólio.
Como podemos fazer isso?
Bem, você poderia adicionar um algoritmo projetado especificamente para essas circunstâncias que poderia mover paradas ou reduzir posições quando o risco exceder um determinado limite e depois otimizar esses parâmetros no backtesting.
Risco por Comércio = X% do Patrimônio Líquido Total.
Isso irá controlar o quanto você arrisca inicialmente em cada comércio.
Risco de risco individual máximo = X% (Mover paradas ou reduzir posições)
Esse número precisará ser igual ou maior que o número acima.
Risco máximo da carteira = Y% (Mover para ou reduzir posições)
Se a sua estratégia comercializar muitos instrumentos, este parâmetro pode manter o risco total do portfólio em cheque. Aqui, um exemplo visual que mostra o risco total do portfólio de uma estratégia de exemplo ao longo do backtest:
Imagem criada usando o software Trading Blox.
Eu aprendi sobre isso da maneira mais difícil quando eu estava com óleo longo em 2008. Eu usei um indicador de atraso muito longo como minha saída. Em meus extensos testes, eu não tinha considerado o controle de risco em lucros abertos à medida que movimentos parabólicos como esse eram típicos.
A minha estratégia era confiável na maioria das vezes em mercados lentos, voláteis e tendenciosos.
Quando eu tinha um longo óleo em 2008, no caminho para mais de US $ 140 / bbl, era emocionante. No entanto, ao mesmo tempo, quanto mais rápido ele subisse, mais preocupado eu olhei o quão longe minhas paradas eram. Lembro-me de ter esperança de que se consolidasse para dar às minhas paradas algum tempo para recuperar o atraso.
Eu tinha um componente de tomada de lucro, mas devido ao grande tamanho do contrato no mercado de futuros, eu era muito limitado em quanto eu poderia reduzir minha posição. Depois que eu fui parado naquela posição, eu me certificava de implementar mudanças no meu sistema que mediam e controlavam o risco, ajustando minhas paradas quando o risco excedia um determinado nível em posições individuais.
Criado com o Marketscope / Trading Station II.
O desempenho passado não é uma indicação de resultados futuros.
2. Seleção do Mercado, Time Frame e Portfolio Construction.
O cronograma (m1, h1, etc.) você terá um impacto nos mercados potenciais para consideração em seu sistema de negociação, plataforma de backtesting, recursos baseados em nuvem necessários, API usada e se os serviços de colocação forem necessários.
Os sistemas de freqüência mais altos baseando gatilhos ou a execução no tiquetaque ou barras de 1m podem precisar de uma solução baseada na nuvem para permitir o dimensionamento da potência de computação para backtesting e otimização para melhores resultados. Algumas plataformas de negociação algorítmicas de terceiros incluem isso como parte de seu pacote.
O poder de computação junto com um mecanismo de backtesting otimizado para tirar proveito disto irá economizar muito tempo no processo de desenvolvimento da estratégia para qualquer sistema comercial.
Aqueles que consideram uma estratégia de alta freqüência quererão considerar um sistema de produção que seja colocado tão perto dos servidores do seu corretor quanto possível e integrado através da API FIX para garantir que todas as atualizações de preços sejam recebidas, pois todas as cotações são empurradas em vez de puxadas como na negociação Station ou ForexConnect API.
Ao obter um preenchimento ao preço desejado ou melhor, importa muito para sua rentabilidade, assegurando a menor latência em sua arquitetura, código e localização do servidor, possível, você terá a melhor chance de obter tanta liquidez no momento exato que você precisar isto.
Os parceiros VPS da FXCM oferecem serviços de colocação para qualquer necessidade:
Alguns corretores oferecem comissões com desconto para comerciantes de alto volume. Se sua estratégia gera mais de 50 milhões de volume nocional por mês no volume de negócios ou você começa com capital de risco de US $ 150K, você pode obter comissões com desconto de 25-55% com a conta do Active Trader da FXCM, por exemplo.
Compreender as características de liquidez subjacentes de cada mercado também permite que você conheça a escalabilidade da sua estratégia. A liquidez ao preço que deseja não é um recurso ilimitado e pode variar bastante dependendo do mercado, da hora do dia e das circunstâncias.
Nosso guia de Traços de Comerciantes de sucesso tem alguns excelentes dados relacionados a isso.
Os sistemas de baixa freqüência geralmente dão mais margem de erro quando se trata de estimativas de deslizamento. O número mais baixo de trades totais em backtests significa que a contabilização do deslizamento na execução impacta a rentabilidade global menos de estratégias de freqüência muito mais altas.
Se a sua estratégia utiliza as ordens de parada de repouso com base em canais de preços ou algum tipo de indicador de atraso para desencadear uma ordem, reduzir a latência provavelmente ganhou um impacto tão grande, exceto em determinadas situações específicas da estratégia.
Velocidade venceu, não melhorar os preenchimentos que você obtém em quaisquer paradas ou limites que tenham estado sentados nos servidores dos corretores.
Os mercados individuais podem ter grandes variações no desempenho. Alguns podem estar limitados por longos períodos, enquanto outros vão em uma lágrima. Por isso, uma pequena quantidade de mercados em seu portfólio pode levar a retornos mais voláteis do que um portfólio maior e diversificado de mercados e estratégias.
Depois, existem alguns mercados que podem adicionar benefícios de diversificação ao seu portfólio, como USD / ZAR, usando uma estratégia de freqüência muito menor, mas podem não ser rentáveis ​​ao usar quadros curtos, dependendo da sua estratégia.
3. Utilize tipos de pedidos avançados.
Um grande número de comerciantes apenas utilizam ordens de mercado para entrar e sair de seus negócios. Em condições típicas do mercado, a maioria ficará feliz com os enchimentos que eles recebem. No entanto, em mercados rápidos onde há muita incerteza, os provedores de liquidez tendem a enviar cotações mais amplas para se proteger e os preços podem se mover muito rapidamente.
As estratégias baseadas em pênalas e em momentum podem ser sujeitas a uma derrapagem se os negócios forem desencadeados quando os níveis de resistência foram retirados e o fluxo de pedidos é pesado em uma direção. Somente usando ordens de paradas para entrar em negociações irá garantir a execução, mas deixa seu risco de deslizamento bem aberto. As ordens de entrada de intervalo podem ser usadas para entrar no comércio dentro de um intervalo aceitável, mas rejeitar ordens onde o deslizamento é considerado inaceitável.
Algumas estratégias podem encontrar deslizamento zero ou mesmo deslizamento positivo se as ordens limite ou as ordens Fill ou Kill forem utilizadas. Um exemplo disso pode ser uma reversão média de alta freqüência ou uma estratégia baseada em eventos. Backtesting pode assumir 100% de execução em cada comércio, mas a realidade pode ser diferente em mercados rápidos.
Bottom line: Compreenda quais tipos de pedidos estão disponíveis para você e como eles podem ajudá-lo a obter uma execução superior.
Tipos de ordem de exemplo.
Exemplo de Comandos comerciais.
4. Dimensionamento da Posição.
Existem duas maneiras comuns de dimensionar suas posições:
Dimensionamento de posição baseado em lote fixo: negociação do mesmo tamanho de lote, independentemente do tamanho do número de risco com base em risco: o risco é calculado para cada troca com base no posicionamento da parada de perdas.
Dimensionamento fixo da posição do lote.
Esta abordagem é popular entre muitos comerciantes, mas as limitações nesta abordagem podem levar a sobreponderar os mercados mais voláteis e a subponderação em mercados menos voláteis. As diferenças nas taxas de câmbio podem levar a diferenças dramáticas no tamanho do comércio nocional.
Dimensionamento de posição baseado em risco.
Muitos dos sistemas automatizados que vejo hoje têm um montante fixo de perda de parada em pips para cada posição. Eu não sou fã desta abordagem, pois acredito que isso pode levar a uma configuração muito próxima em mercados voláteis e muito longe em mercados silenciosos. O risco por comércio também está em todo o mapa com essa abordagem.
O dimensionamento de posição baseado em risco considera o risco por comércio, onde o risco é igual ao preço de entrada menos a parada inicial.
Uma abordagem sofisticada fará parte das gamas de preços médias únicas e recentes de cada mercado e determinarão a parada de colocação.
Uma maneira de fazer isso é calcular o intervalo verdadeiro médio dos últimos períodos de X e colocar a parada inicial de um múltiplo desse número longe de sua entrada. Este método irá equilibrar dinamicamente seu risco em cada mercado que você comercializa com base na volatilidade única de cada mercado.
Aqui, o cálculo do dimensionamento de posição baseado na volatilidade:
((Total Equity * Risco por comércio) / (X período ATR em pips * ATR offset * valor de pip por lote 1K)) = Tamanho comercial em lotes de 1K.
Equidade total = $ 100K.
Risco por Comércio = 1%
X período ATR em pips = 50.
Valor da pipa por lote 1K = $ 0,10.
133.333 = Tamanho comercial em lotes de 1K (Reduzir para 133 para enviar o comércio EUR / USD 133K)
Em mercados voláteis, a faixa média de preços por barra, independentemente do prazo, pode saltar bastante em tempos de incerteza e resultar em mercados muito rápidos e muito ruído sem direção, levando a muitos comerciantes a serem abalados.
No entanto, se você utilizar o ATR (Average True Range) recente para cada mercado e utilizar um múltiplo para determinar seu preço de parada, acredito que você está dando ao comércio uma melhor chance de sucesso, ao filtrar o ruído de curto prazo ( volatilidade).
Por outro lado, minhas configurações de comércio favoritas sempre vêm em mercados silenciosos, com intervalos de negociação restritos. Utilizar o ATR recente para dimensionar suas posições levará a paradas mais apertadas e tamanhos de posição maiores em mercados com baixas gamas de preços relativos.
Este método também lhe dá o benefício de ter uma abordagem de dimensionamento de posição consistente em cada mercado que você comercializa, levando a um portfólio mais equilibrado e diversificado. Se você não fizer fator na volatilidade de cada mercado para o dimensionamento da posição, a volatilidade de uma de suas posições pode ser várias vezes maior do que suas outras transações.
Não peço minha palavra, faça uma prova e estude os resultados de perto. Lembre-se, porém, backtesting tem suas limitações e desempenho passado não é indicação de resultados futuros.
A primeira coisa que você precisa é dados. Eu acho que é importante para testar o que você troca e comercializa o que você prova. A natureza descentralizada do mercado FX significa que cada corretor provavelmente terá historias de preços históricos e spreads.
A FXCM oferece dados históricos extensivos para todos os instrumentos gratuitamente através da nossa API ForexConnect ou através do nosso aplicativo Data Data Downloader.
Algumas plataformas de negociação algorítmicas de terceiros oferecem acesso aos dados históricos da FXCM & rsquo; também, mas talvez não possamos nosso conjunto de dados completo. Se você estiver usando um destes e quiser mais dados para testar novamente, você pode adicionar aos seus arquivos de dados com essas opções.
É uma coisa ter uma ótima idéia para uma estratégia de negociação e, em seguida, obtê-lo codificado para negociação ao vivo, mas se você apenas pular em negociação ao vivo ou utilizar backtests irrealistas, você provavelmente vai ter um tempo difícil lidar com o seu primeiro rebaixamento.
Se os seus testes anteriores não são realistas ou utilizam os pressupostos errados, como assumindo uma execução perfeita em cada comércio, você pode achar que seus resultados ao vivo são muito diferentes dos seus testes alternativos.
Um mecanismo de backtesting excelentemente projetado pode ajudá-lo a descobrir o que funciona e o que não é antes de colocar qualquer dinheiro na linha, embora o desempenho passado não seja uma indicação de desempenho futuro.
Você deve poder explorar diferentes variações de parâmetros e examinar estatísticas de desempenho, ver resultados de desempenho visual e ver o comércio por desempenho comercial em um gráfico.
As plataformas de backtesting mais sofisticadas terão capacidade de examinar e otimizar resultados em vários mercados ao mesmo tempo. Na minha opinião, isso é muito importante na descoberta de estratégias que são adequadas para muitos mercados diferentes e onde o risco é gerenciado para todo o portfólio de posições.
Se você não otimiza a sua estratégia de negociação, as chances são de que você terá uma estratégia que ganhou e estará perto tão bom quanto poderia ser. Por outro lado, se você otimizar demais, você pode acabar com uma estratégia que só funciona bem em dados históricos. A chave do `s é encontrar um equilíbrio entre estes.
O maior risco que você enfrenta ao otimizar sua estratégia com backtesting é o ajuste de curva. Eu sempre me preocupo com os sistemas que foram otimizados com muitas variáveis ​​diferentes ou apenas otimizados em um mercado. Dito de outra forma, você quer limitar os graus de liberdade do seu sistema.
Quanto mais parâmetros o seu sistema comercial, torna-se muito fácil aperfeiçoar perfeitamente os parâmetros no histórico de preços passados ​​com resultados surpreendentes, o que provavelmente é apenas o ruído e não um padrão repetitivo.
Backtesting sua estratégia em apenas um mercado pode ter o mesmo efeito. Uma vez que você apenas está simulando resultados em um fluxo de preços, será muito fácil superar seus parâmetros em dados passados ​​com resultados incríveis, mas pouco significado estatístico.
Na minha experiência e na pesquisa de muitos comerciantes de sistemas de sucesso, muitos usam sistemas muito simples com um pequeno número de parâmetros para evitar esse risco.
Manter a lógica da sua estratégia simples também o ajudará a reduzir a latência geral ao gerar decisões comerciais. Se o seu sistema só tiver que processar 6 pontos de verificação em vez de 10, por exemplo, você aumentará suas estatísticas de execução se você estiver negociando uma estratégia muito ativa.
7. Tolerância ao risco.
Toda pessoa tem um conjunto único de circunstâncias e disposição: sua idade, renda, despesas, capital de risco, apetite de risco geral e se eles são geralmente otimistas ou pessimistas. Devido a isso, cada pessoa deve determinar o tipo de risco que eles podem lidar. Se você tem pouco ou nenhum capital de risco, a melhor abordagem pode não ser o comércio e continuar economizando dinheiro.
A maioria dos comerciantes de algo são otimistas e acreditam que podem obter melhores resultados do que o seu Joe médio. Isso pode levar a muitos planos de negociação arrojados com alto risco que podem ser eliminados muito rapidamente devido a perdas ou por comerciantes atingindo seu ponto de tio psicológico na perspectiva de novas perdas.
Posso garantir-lhe que é difícil ser tão otimista como você estava no início da negociação quando você está sentado no meio de uma grande retirada.
É como quando eu estou realmente com fome e comendo fora. Normalmente, eu ordeno muito mais comida do que posso lidar. No entanto, eu não percebo isso até que eu fiquei cheio e eu tenho uma ou mais 2 tacos sentados no meu prato.
Na minha experiência, isso é semelhante à implementação de sua primeira estratégia automatizada. Uma estratégia que faz 20% ao ano quando o backtesting é bom, mas o homem, 40% ao ano seria muito melhor e tudo o que eu tenho a fazer é estar disposto a aceitar cobranças maiores!
Antes de lançar meu fundo, lembro-me de estudar os resultados de desempenho de muitos consultores sistemáticos de negociação de commodities, que são gerentes de dinheiro regulados pela NFA. Muitas das CTAs há muito tempo tiveram um excelente desempenho, mas volátil em seus primeiros anos, mas depois se tornaram muito mais conservadoras. Vai saber.
É a minha opinião de que sua verdadeira tolerância ao risco provavelmente será menor do que você pensa que é. Nunca se esqueça de que a sobrevivência e a preservação do capital são a coisa mais importante a considerar, não o quanto você pode potencialmente fazer por ano com base em seus testes anteriores.
Ao executar sua estratégia ao vivo, espere experimentar completamente todo o espectro de emoções. No entanto, penso que é importante que você não faça decisões impulsivas com base em seus sentimentos, deixando o medo ou a esperança levar a uma tomada excessiva de riscos ou a tentar superar sua estratégia e fazer negócios com sentimentos que você possui.
Emoções fortes de medo ou ganância podem levar a decisões ruins quando o comércio de sistemas. Os computadores não precisam lidar com isso, então a melhor estratégia para lidar com isso na minha opinião é encontrar um sistema comercial robusto, cumpri-lo e utilizar um processo de pesquisa antes de fazer qualquer alteração.
Suas emoções podem ajudá-lo a identificar fraquezas e oportunidades potenciais em seu sistema comercial. Se a volatilidade do seu desempenho comercial está deixando seu medo todo o tempo, reduza seu risco.
Talvez você veja um movimento que você se arrepende de ter perdido. Ouça esse arrependimento e use backtests para explorar formas de modificar seu sistema para garantir que você não perca esse tipo de oportunidade no futuro.
Quando devolvi muitos lucros no meu comércio de petróleo, fiquei muito enojado. Isso me levou a fazer modificações no meu sistema de negociação, o que melhorou a gestão geral de risco em risco de comércio aberto individual.
Juntando tudo.
Aqui estão alguns parâmetros para consideração ao projetar uma estratégia algorítmica direcional:
Risco de entrada por comércio.
# de períodos de observação ATR # múltiplo ATR (multiplique este número de vezes de períodos de retorno de ATR para parar a colocação)
Filtro de comércio (se aplicável)
Insira novos negócios somente quando a condição a seguir for atendida (ou seja, a tendência é baseada em duas médias móveis)
Insira parâmetros para o seu indicador técnico favorito Adicione qualquer outra lógica para escalar dentro / fora de negociações (parada final, tirar lucros no X ATR, etc.)
Risco de risco individual máximo.
Risco máximo de comércio individual = X% (Considere o melhoramento ou a redução de opções)
Risco máximo de portfólio.
Risco Máximo de Carteira = Y% (Considere o número de visitas ou a apresentação de informações)
Outros parâmetros importantes para backtesting:
Isso pode ser calculado em termos de pips ou em termos percentuais de seu preço de preenchimento ao preço mais baixo / mais alto na barra em que o comércio foi preenchido.
O que você acha essencial para desenvolver e executar uma estratégia algo?
Perguntas, comentários e comentários são bem-vindos. Deixe-me uma linha no instrutor @ dailyfx.
Para participar da minha lista de distribuição de e-mail, preencha este formulário.
RESULTADOS DE DESEMPENHO HIPOTÉTICOS TEM MUITAS LIMITAÇÕES INHERENTES, ALGUNS DESCRITOS ABAIXO. NENHUMA REPRESENTAÇÃO NÃO É REALIZADA QUE QUALQUER CONTA VÁ OU PODERÁ AGRADECIMENTAMENTE ALCANÇAR LUCROS OU PERDAS SIMILARES ÀOS MOSTRADOS. POR FAVOR, HÁ DIFERENÇAS FREQUENTEMENTE SHARP ENTRE RESULTADOS DE DESEMPENHO HIPOTÉTICOS E OS RESULTADOS REAIS REALIZADOS POR TODOS OS PROGRAMAS DE NEGOCIAÇÕES PARTICULARES.
UMA DAS LIMITAÇÕES DOS RESULTADOS DE DESEMPENHO HIPOTÉTICOS É QUE ESTÃO GERALMENTE PREPARADAS COM O BENEFÍCIO DE HINDSIGHT. NA ADDIÇÃO, A NEGOCIAÇÃO HIPOTÉTICA NÃO IMPORTA RISCOS FINANCEIROS, E NENHUM GRUPO DE NEGOCIAÇÃO HIPOTÉTICA PODE CONTACTO COMPLETAMENTE PARA O IM-PATO DE RISCOS FINANCEIROS NA NEGOCIAÇÃO REAL. POR EXEMPLO, A CAPACIDADE DE TERMINAR PERDAS OU ADEQUAR EM UM PROGRAMA DE NEGOCIAÇÃO ESPECÍFICO EM ESPIRRO DE PERDAS DE NEGOCIAÇÃO É PONTOS MATERIAIS QUE PODEM TAMBÉM ADIDÁVEL EFECTUAR RESULTADOS REAIS DE NEGOCIAÇÃO. HÁ NOMBROSOS OUTROS FATORES RELACIONADOS COM OS MERCADOS EM GERAL OU NA IMPLEMENTAÇÃO. DE QUALQUER PROGRAMA ESPECÍFICO DE NEGOCIAÇÃO QUE NÃO PODE SER COMPLETAMENTE COMPTABILIZADO NA PREPARAÇÃO DE RESULTADOS DE DESEMPENHO HIPOTÉTICOS E TODOS OS QUE PODEMOS ADVERSAMENTE EFECTUAR RESULTADOS REAIS DA NEGOCIAÇÃO.
Quaisquer opiniões, notícias, pesquisas, análises, preços ou outras informações contidas neste site são fornecidas como comentários gerais do mercado e não constituem conselhos de investimento. O grupo FXCM não aceita a responsabilidade por qualquer perda ou dano, incluindo, sem limitação, qualquer perda de lucro, que possa surgir, direta ou indiretamente, do uso ou dependência contida nos sinais de negociação, ou em qualquer análise de gráfico que acompanha.
O DailyFX fornece notícias e análises técnicas sobre as tendências que influenciam os mercados monetários globais.
Próximos eventos.
Calendário econômico Forex.
O desempenho passado não é uma indicação de resultados futuros.
DailyFX é o site de notícias e educação do Grupo IG.

Como codificar seu próprio robô Algo Trading.
Já quis tornar-se um comerciante algorítmico com a capacidade de codificar seu próprio robô comercial? E ainda, você está frustrado com a quantidade de informações desorganizadas, enganosas e falsas promessas de prosperidade durante a noite? Bem, Lucas Liew, criador do curso de negociação algorítmica on-line AlgoTrading101, pode ter a solução para você. Tendo excelentes revisões e recebendo mais de 8.000 estudantes desde o primeiro lançamento em outubro de 2018, o curso de Liew - destinado a apresentar os fundamentos da negociação algorítmica de forma organizada - está sendo bastante popular. Ele é inflexível sobre o fato de que a negociação algorítmica é "não um esquema rápido e rápido". Com base em idéias de Liew e seu curso, delineadas abaixo estão os fundamentos do que é preciso para projetar, construir e manter seu próprio robô de negociação algorítmica .
O que é um Robô de Negociação Algorítmico.
No nível mais básico, um robô de negociação algorítmica é um código de computador que tem a capacidade de gerar e executar sinais de compra e venda nos mercados financeiros. Os principais componentes desse robô incluem regras de entrada que indicam quando comprar ou vender, regras de saída indicando quando fechar a posição atual e regras de dimensionamento de posição que definem as quantidades para comprar ou vender. (Para mais, veja: Noções básicas de negociação algorítmica: conceitos e exemplos.)
As principais ferramentas.
Obviamente, você vai precisar de um computador e uma conexão com a Internet. Depois disso, será necessário um sistema operacional Windows ou Mac para executar o MetaTrader 4 (MT4), uma plataforma de negociação eletrônica que usa o MetaQuotes Language 4 (MQL4) para codificar as estratégias de negociação. Embora o MT4 não seja o único software que se possa usar para construir um robô, ele possui uma série de benefícios significativos.
Enquanto a principal classe de ativos da MT4 é câmbio (FX), a plataforma pode ser usada para negociar ações, índices de ações, commodities e Bitcoins usando CFDs. Outros benefícios de usar o MT4 em oposição a outras plataformas incluem ser fácil de aprender, tem inúmeras fontes de dados FX disponíveis e é grátis. Infelizmente, o MT4 não permite a negociação direta em mercados de ações e futuros e a realização de análises estatísticas pode ser onerosa; no entanto, o MS Excel pode ser usado como uma ferramenta estatística suplementar.
Estratégias de negociação algorítmica.
É importante começar por refletir sobre alguns traços essenciais que toda estratégia de negociação algorítmica deve ter. A estratégia deve ser prudente no mercado em que é fundamentalmente sólida do ponto de vista do mercado e econômico. Além disso, o modelo matemático utilizado no desenvolvimento da estratégia deve basear-se em métodos estatísticos sólidos.
Em seguida, é crucial determinar quais informações o seu robô pretende capturar. Para ter uma estratégia automatizada, seu robô precisa ser capaz de capturar ineficiências de mercado identificáveis ​​e persistentes. As estratégias de negociação algorítmica seguem um conjunto rígido de regras que aproveitam o comportamento do mercado e, portanto, a ocorrência de uma ineficiência única do mercado não é suficiente para construir uma estratégia. Além disso, se a causa da ineficiência do mercado não for identificável, não haverá maneira de saber se o sucesso ou o fracasso da estratégia foi devido ao acaso ou não.
Com o acima em mente, existem vários tipos de estratégia para informar o design do seu robô de negociação algorítmica. Estes incluem estratégias que aproveitam (i) notícias macroeconômicas (por exemplo, mudanças na folha de pagamento ou na taxa de juros não agrícolas); (ii) análise fundamental (por exemplo, usando dados de receita ou notas de versão de resultados); (iii) análise estatística (por exemplo, correlação ou co-integração); (iv) análise técnica (por exemplo, médias móveis); (v) a microestrutura do mercado (por exemplo, infração de arbitragem ou comercial); ou (vi) qualquer combinação do acima. (Para leitura relacionada, veja: O que é a eficiência do mercado?)
Projetando e testando seu robô.
Existem essencialmente quatro etapas necessárias para construir e gerenciar um robô comercial:
Pesquisa preliminar: esta etapa se concentra no desenvolvimento de uma estratégia que se adapte às suas próprias características pessoais. Fatores como perfil de risco pessoal, compromisso de tempo e capital comercial são importantes para pensar quando desenvolver uma estratégia. Você pode então começar a identificar as persistentes ineficiências do mercado mencionadas acima. Tendo identificado uma ineficiência do mercado, você pode começar a codificar um robô comercial adequado às suas próprias características pessoais.
Backtesting: Esta etapa se concentra em validar seu robô comercial. Isso inclui verificar o código para se certificar de que está fazendo o que deseja e entender como ele se realiza em diferentes intervalos de tempo, aulas de ativos ou diferentes condições de mercado, especialmente em eventos tipo cisne preto, como a crise financeira global de 2008.
Otimização: Então, agora você codificou um robô que funciona e, nesta fase, você deseja maximizar seu desempenho ao mesmo tempo em que minimiza o viés de superposição. Para maximizar o desempenho, primeiro você precisa selecionar uma boa medida de desempenho que capture elementos de risco e recompensa, bem como consistência (por exemplo, taxa Sharpe). O desvio excessivo ocorre quando o robô está muito próximo com dados anteriores; Esse robô vai dar a ilusão de alto desempenho, mas como o futuro nunca se assemelha completamente ao passado, ele pode realmente falhar.
Execução ao vivo: agora você está pronto para começar a usar dinheiro real. No entanto, além de estar preparado para os altos e baixos emocionais que você pode experimentar, existem alguns problemas técnicos que precisam ser abordados. Essas questões incluem selecionar um intermediário apropriado e implementar mecanismos para gerenciar riscos de mercado e riscos operacionais, como potenciais hackers e tempo de inatividade tecnológico. Também é importante nesta etapa verificar se o desempenho do robô é semelhante ao experimentado na fase de teste. Finalmente, o monitoramento contínuo é necessário para garantir que a eficiência do mercado que o robô foi projetado ainda existe. (Para mais, consulte: Como os Algoritmos de Negociação foram Criados.)
The Bottom Line.
Considerando que Richard Dennis, o lendário comerciante de commodities, ensinou a um grupo de estudantes suas estratégias de negociação pessoal que, em seguida, ganhou mais de US $ 175 milhões em apenas cinco anos, é completamente possível que os comerciantes inexperientes sejam ensinados com um conjunto rigoroso de diretrizes e se tornem comerciantes bem-sucedidos. No entanto, este é um exemplo extraordinário e os iniciantes definitivamente devem se lembrar de ter expectativas modestas.
Para ser bem sucedido, é importante não apenas seguir um conjunto de diretrizes, mas também entender como essas diretrizes estão funcionando. Liew enfatiza que a parte mais importante da negociação algorítmica é "entender em que tipos de condições de mercado o seu robô funcionará e quando vai quebrar" e "entender quando intervir". O comércio algorítmico pode ser gratificante, mas a chave para o sucesso é compreensão. Qualquer curso ou professor que prometa altas recompensas com mínima compreensão deve ser um sinal de alerta importante.

Como construir uma estratégia de negociação algorítmica.
Design & amp; Crie uma Estratégia de Negociação Automatizada.
Se você está lendo isso, então você está interessado em criar uma Estratégia de Negociação Algorítmica que irá abrir e fechar negociações automaticamente e gerenciar seu risco, mesmo que você dorme à noite.
"Se você acha que vai ganhar dinheiro com uma estratégia algorítmica, então pense novamente"
O que é uma Estratégia de Negociação?
Uma Estratégia de Negociação é um conjunto pré-planejado de instruções que obterão um retorno lucrativo ao enviar uma ordem de Compra ou Venda nos mercados. A estratégia pode ser baseada em análises técnicas, eventos fundamentais baseados em notícias e boa gestão de riscos. Uma estratégia comercial típica inclui vários indicadores técnicos que sinalizam a compra ou venda junto com algumas regras para sair do comércio com lucro. Uma estratégia totalmente automatizada também tira todas as emoções humanas que impedem o comerciante de fechar uma posição cedo ou deixar um perdedor correr demais e soprar sua conta, algumas regras pré-definidas para gerenciamento de riscos bem pensadas em avançadas limitarão o risco.
Por que é importante documentar a estratégia.
As palavras "Falhando em Planejar, Planejar Falhar", são tão verdadeiras quando se trata de desenvolvimento de estratégia automatizada algorítmica, a maior parte do seu tempo deve ser dedicada a documentar a estratégia, se você estiver usando um sistema bem conhecido que você tenha baixado da internet, isso já deve ser documentado. Se você começar a codificar sua estratégia com apenas uma idéia aproximada em sua cabeça, então você está fazendo o que é conhecido no mundo da engenharia de software como Programação Heroica, que é um grande não-não, evite isso a todo custo e trabalhe inteligente.
Preciso saber matemática para negociar?
Não há uma resposta simples para isso, pois o que você realmente precisa é um sistema confiável de alta probabilidade que seja capaz de capturar ganhos regularmente e também a psicologia para executar seu sistema e cumpri-lo, o que é uma habilidade emocional e não lógica, um entendimento de matemática sempre será um grande bônus, mas muitos comerciantes bem-sucedidos não têm nem precisam de uma forte compreensão das matemáticas. O aspecto mais importante do dia de negociação é uma atitude mental sólida e inquebrável seguida de uma boa compreensão dos parâmetros técnicos, gerais ambiente econômico e, finalmente, algumas habilidades analíticas.
"As boas habilidades de pensamento crítico e uma compreensão decente das estatísticas contribuirão muito para ajudá-lo a ter sucesso"
Você precisa entender a lógica? Sim .
Você precisa entender a correlação? Sim .
Fundamentos serão conceituais e abstratos.
Pontos Chave da Estratégia.
Teorias do mercado.
Para começar, você precisa entender como os mercados funcionam, você precisa entender as ineficiências do mercado, as relações entre diferentes ativos, produtos e o comportamento dos preços. Pesquisa de economia comportamental.
Projetando sua estratégia.
Os primeiros passos com qualquer estratégia é ter um bom design, a idéia precisa ser documentada, se você pular esta etapa, então você falhará antes de começar, a maior quantidade de seu tempo deve ser o design tendo em conta todo o comércio regras, gerenciamento de riscos e eventos de mercado incontroláveis, como a guerra mundial 3. Criando um robô de trabalho requer uma compreensão de como funcionam os sistemas automatizados que consistem em 3 componentes: (a) sinais de entrada, (b) sinais de saída e (c) dimensionamento de posição, você precisará projetar esses componentes em relação às ineficiências do mercado e esta não é uma tarefa simples.
Desenvolvimento de software.
A linguagem de programação dependerá do que você está tentando alcançar, se você estiver usando matemática complexa, então você quer um idioma que tenha sido construído para esta tarefa em particular, com algumas das novas linguagens de programação modernas, como Microsoft C #, F #, Java, R, MATLAB e Python. Se for a velocidade que você deseja para o High-Frequency Trading (HFT), então você pode estar olhando para C ++ para uma execução de código mais rápida.
Utilizamos o Microsoft C #, que é uma linguagem de programação moderna muito poderosa utilizada tanto pelo cTrader como pelo NinjaTrader, que é rápido, fácil de manter, robusto e uma vasta seleção de bibliotecas orientadas para negócios e matemática.
Saiba mais sobre nossos serviços de desenvolvimento para o cTrader.
API da plataforma de negociação.
Apenas entender a linguagem de programação não é suficiente, você também precisa entender a interface de programação de aplicativos (API) da plataforma de negociação, esta interface fornece acesso para obter a conta e os dados de negociação através da plataforma para o seu corretor. Você também pode ignorar a plataforma e usar um protocolo comum de troca de informações financeiras (FIX), onde você pode se comunicar com o corretor direto, tornando as suas execuções ainda mais rápidas, mas isso só é útil se você deseja salvar alguns milissegundos.
Gestão de dados.
Os dados precisos na forma de dados de back-test ajudarão realmente quando você encaminha o teste com dados ao vivo, se os dados do back-test estiverem imprecisos, então, como eles dizem "Garbage In - Garbage Out", sua estratégia está condenada ao fracasso. O problema com os dados do cTrader é que ele simplesmente não vai o suficiente para trás, você realmente precisa pagar por dados históricos de boa qualidade e carregar isso.
Gerenciamento de riscos.
Este é um dos aspectos mais negligenciados da negociação algorítmica, tanto tempo deve ser gasto no gerenciamento de seu risco como suas regras de entrada e saída de negócios. Existem dois tipos de gerenciamento de riscos para um comerciante:
Risco de mercado: isso envolve riscos relacionados à sua estratégia de negociação.
Risco operacional: é quando um evento de cisne negro acontece como uma guerra européia.
Execução de Negociações.
Todos sabemos que os testes de back-testing e live são muito diferentes, a menos que você use um ECN Broker, o que você deveria ter com o cTrader.
Servidor privado virtual (VPS) - Isto é uma obrigação se você estiver executando o seu robô 24/7 365 dias por ano, a maioria dos servidores virtuais possui 99,96% de tempo de espera.
Você também precisará monitorar o desempenho do robô e tornar o ajuste necessário ao longo de sua vida útil.
Considerações de Estratégia.
Pegue grandes tendências.
Toda a idéia da estratégia é ganhar dinheiro quando o mercado está tendendo e uma boa tendência durará cerca de 15-20% do tempo e isso é quando todos os tipos de comerciantes estão ativos. Se a sua estratégia é baseada na tendência, então deixe seus vencedores correrem, não intervenha, lembre-se de que você já pensou na lógica de regras pré-definidas.
Managing Winners & amp; Perdedores.
Muitas pessoas constroem um sistema que tem um excelente índice de perda / perda e esta não é a abordagem correta, um exemplo seria um robô que ganha 70% do tempo com um lucro médio de & libra; 100,00 por comércio e uma perda média de & libra ; 200,00 por comércio só fará & libra; 100,00 por 10 trades (& pound; 10 / trade net), onde um robô que ganha 30% do tempo com um lucro médio de & libra; 500,00 por troca e perda de libra; 100,00 por negociação fará um lucro líquido de & libra; 800,00 para 10 negócios (& libra; 80,00 / comércio). Então, em poucas palavras, nem sempre é bom fazer um alto índice de perda / perda.
"Mantenha suas perdas pequenas e deixe seus vencedores correrem"
Todos sabemos que a retirada é inevitável e sempre afirmamos que qualquer coisa superior a 5% é arriscada, esta é apenas nossa visão, mas isso nem sempre é o caso, pois pode atuar como um bloqueio roteiro quando seu robô atinge uma grande tendência que pode afetar o desempenho de sua estratégia.
Mais Gerenciamento de Riscos.
Sim, estamos falando de gerenciamento de riscos novamente. Quando você projeta sua estratégia, você sempre deve ter uma saída, uma saída que será executada, não importa o que o mercado jogue, precisa proteger todo o capital que você acumulou. Todo mundo tem uma visão diferente sobre o risco, dos comerciantes mais cautelosos para os jogadores de gama alta, não há uma abordagem certa ou errada, mas se você é um comerciante de baixo risco, então você precisa ter certeza de sair de um comércio como Logo que exceda sua regra de risco. Uma estratégia automatizada assegurará que suas emoções humanas não se envolvam e sairão de uma posição assim que o risco for muito alto, isso sozinho é um grande benefício da negociação automatizada.
Testando sua estratégia.
Ok, então sua estratégia automatizada foi desenvolvida e agora está pronta para testar, como você a prova? É aqui que o seu documento de requisitos ou o plano de sua estratégia é necessário, você pode executar a estratégia e se referir ao documento para garantir que a lógica esteja correta em cada caminho lógico, bem como os pontos de entrada e saída comerciais previstos, faça referência à lógica do documento contra os resultados reais do algoritmo.
Esta é uma área negligenciada, quando você testa sua estratégia com dados históricos, você está sob o pressuposto de que a ordem será executada com o preço exato pela estratégia automatizada, isso não será o caso, pois você deve lidar com o High - Freqüência Algo & rsquo; S e Market Makers, que empurram o preço tão rápido o seu pedido não é preenchido até que seja sua vez. Sempre haverá deslizamento, então você precisará avaliar isso em seus testes.
Otimização.
Muitos comerciantes sugerem que você não faz ajustes de curva e sobre otimização e eles provavelmente estão certos, já que o mercado é como uma cobra aleatória selvagem, onde você nunca sabe onde irá depois, você é melhor fazer o que é conhecido como Optimização Zonal que identifica zonas que possuem características semelhantes em termos de volatilidade e volume, apenas otimize essas áreas separadamente, em vez de todo o período.
Major News Impact Events.
Os principais eventos de notícias, especialmente com o Forex, não podem ser testados novamente com o cTraders cAlgo, você verá grandes explosões quando eles ocorrerem, isso dificulta o teste de algo com cTrader.
Executando sua estratégia.
Quando você testou sua estratégia e você está feliz, está trabalhando de acordo com suas regras pré-definidas a partir de seus requisitos de estratégia, qual o próximo passo? O próximo passo deve ser deixá-lo ser executado em uma conta de demonstração por um período de tempo, eu diria que, no mínimo, 3 meses, existem comerciantes que só querem entrar em contato imediatamente enquanto querem ganhar dinheiro agora, esse tipo de atitude perca seu dinheiro rapidamente. Lembre-se que este é um negócio e você quer estar nele para o longo prazo, por isso é melhor aprender a caminhar antes de poder executar.
Demo Account.
A maioria dos corretores oferecem uma conta de demonstração durante o tempo que quiser para que você possa aperfeiçoar suas habilidades de negociação manual ou automatizada antes de usar dinheiro real, isso é muito útil, mas as contas de demonstração também eliminam o medo humano de realmente perder dinheiro real, não é o mesmo. Desde o início, você deve ter um capital inicial que seja realista e comercialmente montantes realistas, isso refletirá o ambiente real quando você for ao vivo.
Conta ao vivo.
Quando você finalmente entrar em contato com sua estratégia automatizada, você precisará acompanhar de perto a negociação, mas não interfira com o robô, lembre-se de ter estabelecido as regras comerciais depois de muito pensado e já foi testado em uma conta demo. Por muitos meses, deixe-o fazer o seu trabalho e comércio. Interveja apenas quando você conhece algum evento fora dos limites das estratégias está prestes a acontecer ou está acontecendo.
Como podemos te ajudar.
Nossos Serviços de Programação.
Oferecemos um Serviço de Programação Profissional para a plataforma de negociação cTrader.
2018 janeiro (1) 2017 dezembro (4) novembro (2) outubro (2) setembro (4) agosto (4) junho (1) maio (2) abril (2) março (7) fevereiro (5) 2018 agosto (5 )
Novos produtos, serviços e educação.
AVISO LEGAL.
ClickAlgo se esforça para realizar negócios de acordo com as necessidades do cliente de forma rentável e sustentável e entregar um produto que corresponda às especificações desejadas do cliente. O cliente, no entanto, também é responsável por usar o produto que o ClickAlgo desenvolveu em seu nome. O cliente também é responsável pelo teste do produto e é a única decisão sobre como usar o produto sob seu próprio risco. ClickAlgo não é responsável por eventuais perdas causadas pelo uso do produto (incluindo perda de lucro, reivindicações de terceiros, etc.)
NENHUMA CONTA PAYPAL NECESSÁRIA!
Direitos autorais e cópia; 2018 ClickAlgo & Hayes IT Contracting Ltd. Todos os direitos reservados.

No comments:

Post a Comment