Flat Fee Stock Trading Broker na Índia (corretores de ações mais baratas) PROCURANDO UM CORRETOR DE AÇÕES Podemos ajudá-lo a encontrar o corretor certo para suas necessidades de negociação. Tradicionalmente, a corretagem de negociação de ações (encargos ou taxas) é cobrada sobre a porcentagem do valor da negociação (ou seja, ICICI Direct cobra 0,55 no segmento de entrega de caixa). Esses corretores também são conhecidos como corretores de serviço completo ou corretores tradicionais. Há poucos desafios com estes corretores como eles são caros, a corretora com eles vai alto com o tamanho do comércio, o cliente tem que fazer um monte de cálculos para descobrir o custo da ação e uma corretora mínima cobrado (ICICIDirect cobra mínimo Rs 25 por comerciante) torna a negociação em tostão quase impossível. Com a tecnologia utilizada na negociação mudou significativamente nos últimos anos e negociação on-line tornaram-se uma norma, uma nova categoria de corretores conhecida como Flat Fee Stock Brokers ou Discount Brokers tem florescido e tirou uma grande parte do volume de negociação dos corretores tradicionais no último poucos anos. Negociação de ações de taxa plana é uma opção muito simplificada e mais barata disponível para os comerciantes de hoje. O lote de taxa fixa de negociação já se tornou muito popular nos países desenvolvidos (empresas como E-Trade, Sharebuilder, Fidelity, Charles Schwab e TD Ameritrade) e, finalmente, fazer o seu caminho para Indias Stock e Commodity Trading mercado. Flat Fee Stock Corretores de negociação (também conhecido como corretores de desconto) cobra uma quantidade fixa (ou seja, Rs 20 ou Rs 25) por comércio independentemente do tamanho do comércio. O comerciante paga a corretora fixa do preço, digamos Rs 20, para o comércio de Rs 100 ou Rs 1,00,000. Quando você compra 500 partes de XYZ Ltd em Rs 0,15 por ação, a corretora cobrada pelo corretor de preço fixo será Rs 20, enquanto o corretor tradicional irá cobrar mínimo de Rs 25. Quando você comprar 500 partes da ABC Ltd em Rs 750 por ação, A corretora cobrada pelo corretor de preço fixo ainda será Rs 20, enquanto o corretor tradicional irá cobrar Rs 1875 (à taxa de 0,50). O exemplo acima mostra claramente que a corretora cobrada na negociação de ações de taxa fixa é significativamente baixa e simples. Por que eu deveria passar para Flat Fee Stock Trading Broker Há várias vantagens de se deslocar para um Flat Fee Stock Trading Broker. Alguns deles são discutidos como abaixo: Se você é um comerciante ativo e não precisa ou quer aconselhamento, pesquisa, recomendações ou quaisquer outros serviços, este é provavelmente o tipo de corretor você deve escolher. Eles podem salvar acima de 90 corretagem na maioria de seus comércios. Sem taxas adicionais, apenas um baixo, tudo incluído taxa. Eles são mais acessíveis aos investidores médios. Com a economia deste tamanho, você pode trocar mais. Faz o cálculo da corretora realmente simples. Depois de saber o número de negócios que você fez, você pode simplesmente multiplicá-lo com a corretora fixa e descobrir a conta de corretagem total que você tem que pagar (excluindo impostos). Eles são focados apenas em serviços de corretagem e prestar melhores serviços ao cliente. Não há cobranças escondidas. Eles não cobram por usos de software. Impostos cobrados sobre corretagem (ou seja, Imposto de Serviço de 12 sobre corretagem) são menos como corretora em si é menor. As plataformas de negociação fornecidas são padrão da indústria. O que Flat Fee Corretores de Negociação de ações não fornecem Eles são principalmente corretores não-folho e não fornecem muitos serviços que os corretores de ações tradicionais fornecem incluindo conselhos pessoais, relatórios de pesquisa, recomendações, 3-em-1 contas (banco demat trading conta) Em cada cidade etc Contas de conta on-line, conformações comerciais, contas, pagamentos etc estão disponíveis gratuitamente. Mas serviços adicionais como chamada e comércio, papel declarações etc são cobradas extra. Isto é bastante semelhante aos corretores tradicionais que também têm encargos adicionais para serviços add-on. Os corretores de taxa fixa também não podem fornecer todas as opções de investimento um corretor de serviço completo pode fornecer. Por exemplo Zerodha doesnt fornecer opção de investir em IPOs. Em visitas de pessoa a filiais não é possível com quase todos os corretores de desconto. Como dito anteriormente, para reduzir o custo, eles mantêm número limitado de agências em cidades metropolitanas apenas. Serviço ao cliente dos corretores de taxa fixa não pode ser tão bom como outros grandes corretores tradicionais. O representante de atendimento ao cliente pode não estar disponível para responder às suas questões. Muito poucos corretores de desconto fornecer serviços ao cliente no final da noite ou aos sábados e domingos. Em nossa discussão com a gerência destes corretores, a maioria destes corretores estão planeando agora para 247 serviço ao cliente. Quais ações ou câmbio de commodities posso negociar? A taxa fixa de negociação de ações corretores são os mesmos que os corretores tradicionais. Eles são registrados com SEBI e várias bolsas de valores. Eles fornecem facilidade de negociação em quase todas as ações populares e bolsas de commodities na Índia, incluindo BSE, NSE, MCX, etc Eles também prestam serviços em todos os segmentos de ações e commodities, incluindo Intraday Cash, Delivery Cash, Futures e Options Trading. A negociação com corretores de desconto é tão segura quanto a negociação com qualquer outro corretor racional, já que eles são registrados ou governam pelos mesmos órgãos (SEBI e Bolsas de Valores). Como Flat Fee Corretores de Negociação de Ações ganhar dinheiro com uma corretora tão baixa Eles são corretores de desconto que correm em modelo de negócio baseado em volume. Seu principal objetivo é aumentar o volume de negócios e assim ganhar mais dinheiro. Quando o comércio é mais barato, o comerciante executa mais negócios e, assim, o corretor faz mais dinheiro. Além disso, seu custo operacional é muito baixo, pois eles fornecem serviços de broker não-folho. Eles alavancam a tecnologia para manter o custo baixo. Eles não gastam dinheiro em gerir sucursais em cada cidade e equipe de pesquisadores que fornece recomendações diárias. Seus gastos em publicidade também é menor, pois eles trabalham no modelo de referência para promover seus serviços. Por manter o custo baixo e alto volume de comércio, eles podem ganhar mais dinheiro do que os corretores tradicionais. A simplicidade no modelo de negócios torna muito atraente para os comerciantes. Quais os parâmetros que eu deveria olhar antes de escolher um Flat Fee Stock Broker Cada investidor é único e tem requisitos diferentes. A seguir estão alguns parâmetros-chave que podem ajudar um comerciante na escolha de um corretor: taxas de corretagem e outros encargos Você deve olhar cuidadosamente a corretagem de preço fixo, bem como encargos de serviços adicionais de cada um dos corretores. Não tome a sua decisão apenas sobre o montante fixo de corretagem. Por exemplo: Zerodha cobra Rs 20 por comércio e ProStocks cobra Rs 15 por comércio. Corretores podem exigir um saldo mínimo. Vale a pena verificar sobre isso com antecedência. Opções de investimento disponíveis com o corretor Ao contrário dos corretores de serviços completos de tradição, os corretores de desconto não oferecem ampla gama de opções de investimento (por exemplo, ações, commodities, moedas, IPOs, FDs, fundos mútuos etc.). Você deve olhar cuidadosamente as opções de investimento disponíveis. Por exemplo: Zeordha doesnt fornecer negociação de ações na BSE, opção de investir em IPOs e plataforma de negociação móvel. É importante saber os horários de disponibilidade de representantes de atendimento ao cliente por telefone ou on-line, embora o bate-papo. Solicite uma demonstração de plataformas de negociação e software de back office Antes de abrir a conta, certifique-se de pedir uma demonstração da plataforma de negociação que você estará usando. É importante verificar se o seu computador é compatível e sua conexão com a Internet é boa o suficiente. A interface, usabilidade e segurança da conta de negociação on-line e softwares de negociação devem ser verificados antes de abrir a conta. Quem são top Flat Fee Stock Trading Broker na Índia ProStocks (Rs 899Month ilimitadas Eq Trading) ProStocks. Um empreendimento de Sunlight Broking LLP é um corretor de ações on-line baseado em Mumbai que oferece serviços de corretagem de ações de taxa fixa. ProStocks oferece Equity, Equity FO e negociação de derivativos de moeda na BSE e NSE. ProStocks é o corretor de ações que cresce mais rápido na Índia. Os planos de corretagem oferecidos pela ProStocks são os seguintes: Rs 15 por ordem executada em qualquer segmento de negociação e troca Rs 899 por mês flat fee Plano de negociação ilimitado para Equity and Equity Derivatives segmento Rs 499 por mês flat fee Para saber mais sobre ProStocks. Zerodha, o corretor de disconto (Flat Rs 20 por o comércio) Um Bangalore baseou a taxa lisa que compartilha o corretor de troca que carrega Rs 20 por o comerciante. Zerodha foi a primeira empresa a introduzir este modelo de corretagem na Índia em junho de 2010. Clique aqui para saber mais sobre Zeordha. RKSV Securities (Flat Rs 20 Por Comércio) RKSV é um corretor de desconto popular baseado em Mumbai. A RKSV oferece planos de negociação ilimitados e planos de Rs 20 por plano de corretagem comercial em segmentos da NSE, BSE e MCX. RKSVs Dream Plan oferece negociação em flat Rs 20 plana, independentemente do tamanho do comércio ou número de lotes em um comércio, com os primeiros 5 comércios gratuitos, a cada mês, para a vida. Clique aqui para saber mais sobre RKSV Securities. Conclusão Escolher o corretor certo depende principalmente de seus padrões de investimento e necessidade de serviços e conselhos. O comerciante deve considerar várias opções antes de escolher o corretor. Enquanto Flat Fee Share Brokers são opções mais baratas, eles não podem fornecer pesquisa, recomendações eo nível de serviços pessoais que você pode estar recebendo de seu corretor tradicional. Eu sou um NRI meu plano para investir em ações 25.000 a 40.000 mensais, mínimo 10 lakhs nos próximos 3 anos. O investimento será apenas em ações apenas, sem fundos mútuos sem bancos, Qual é o melhor corretor para lidar. Eu pretendo manter o investimento por um período de 4 anos 2017 3 4 2024. eu pensei ICICI HDFC para ser bom, mas eu li comentários desanimando-los. SAS on-line com base em Delhi tem atualmente zero Conta abertura encargos. Zero AMC encargos para sempre, e zero demat encargos para sempre, se referido através deste site. Sim, eles têm amc e demat amc vida livre. Acho-os rápidos e úteis na resolução de minhas consultas por e-mail e telefone. Estou tentado demonstração de Nest Software e acho que é bom para o meu propósito de comércio com base na entrega e comércio de opções ocasionais ou comércio de dia. Eles também me disseram que estão desenvolvendo lá software próprio para todas as plataformas. Quando eu não sei. Geralmente as pessoas precisam, janelas e Mac softwares baseados mais android, janelas e ipad baseado em softwares tablet e novamente android, janelas e softwares telefone baseado iphone. Assim, eles podem estar em contato com o mercado, mesmo quando eles estão em movimento. Se você encontrar qualquer outro corretor de desconto em bom lugar por favor escreva sobre itthem para que todos os leitores virão a conhecer os benefícios. Eu estive no mercado há 25 anos antes que ele fosse online. Nos últimos 15 anos eu estava com 5paisa (Indainfoline), Indiabulls, Geogitparibas, Nirmal Bang, Icicidirect, HDFC títulos e Angel corretagem). Dos 7 eu testei e usei, eu vivi com Indiabulls a maior becathey tinha um grande software (powerbulls). IIFL foi completamente inútil e atolado em problemas de 2001 a 2005, quando eu fechei. Nirmal Bung nunca soube que eu existo, período. Geojit é lento e estável, mas tem grande software, platina e agora Selfie. Das sete HDFCsec e ICIC diretas foram fraudes definitivas. O primeiro tinha prometido software grande quando não havia nenhum como eles tinham acabado de começar. Então eu fechei em 15 dias com Rs 750 perdido. O ICICidirect fez com que algumas das minhas partes desaparecessem e depois de muita luta reaparecer. Eles podem ser bons para pessoas que têm bolsos muito, muito profundos. Angel tem seus próprios problemas como eles não podem resolver problemas simples no ODIN o terminal comercial. Eles não se preocupam em responder que não podem resolver o problema. Há contabilidade é suspeita para mim e nunca compreender as acusações que cobram a sua própria vontade. Estou fechando isso também. Portanto, apenas geogit permanece. Pelo menos eles têm transparência em tudo. Agora, eu e minha esposa estamos conversando com a SAS on-line on mytrade. Provavelmente eu vou com o SAS. Zerondha não está muito interessada no diálogo comigo. Em primeiro lugar don, t em todo o comércio com ICICIDIRECT becarecently tenho feito um tostão estoque de comércio em icicidirect para o valor total de rs. 3600 e para que amt eles têm encargos-me uma corretora de rs. 800, que é quase 22 do valor total. Devido a este vou fechar o meu ac soo muito. Eu costumo negociar em ações tostão u pode me dizer que tipo de corretor, bem como plano de corretagem será confortável para mim. Ou qual dos corretores acima é confiável. Eu fico em Pune. Corretagem muito alta para kotak títulos sem margem desde o nosso cliente. kotak sec. ki chamada mai kaam karna muito arriscado. Online Commodity Tipos de Conta Trading Você é novo para negociação de commodities Se sim. Recomendamos que este seja um ideal on-line commodity trading conta para você. Como um comerciante de commodities brotamento, você terá acesso a todas as instalações de pesquisa e negociação que são necessários para ajudá-lo a executar seus negócios sem esforço. Você pode decidir o que comprar ou vender, quando comprar ou vender, etc., quer com base em sua própria pesquisa ou consultando os relatórios de pesquisa da Kotak Commodity. Se você é um comerciante experiente no mercado de commodities, recomendamos a conta do Círculo Privilege Conta de negociação livre de vida, sem taxas de manutenção de conta Acesso ao KC Trader Acesso à Kotak Commodities Academy que ajuda você a aprender mais sobre mercados de commodities e negociação. Mercados de commodities e produtos especiais e relatório especial irá ajudá-lo a tomar decisões de investimento informado ao lidar com essas commodities Atualizações de pesquisa via Kotak Commodities Alertas SMS para que você não perca oportunidades importantes de compra e venda testemunhado no mercado Você pode ativar Kotak Commodity Gateway conta Com uma margem inicial entre Rs 30.000 a Rs 5,00.000. Isso tem que ser em forma de margem de caixa apenas. É muito simples para abrir uma conta de negociação com Kotak Commodities Services Ltd. Basta seguir os passos simples mencionados abaixo: Passo 1: Para abrir sua conta, basta dar seus detalhes em Abrir uma conta. Em dar os detalhes nosso representante entrará em contato com você para completar todas as formalidades de abertura de sua conta Você também pode nos chamar e teremos nosso representante atender você e ajudá-lo a abrir a conta Passo 2: Vamos informá-lo assim que sua conta É ativado por e-mail e imediatamente um kit de boas-vindas será enviado para você, e você pode começar a negociar imediatamente após a ativação de sua conta Conta abertura encargos de Rs. 750- Para a conta Gateway, o KC Trader está disponível a uma taxa nominal de Rs. 500 por mês Obter Kotak Commodities SMS Alertas Rs. 100 por mês Chamada Grátis para as primeiras 20 chamadas em um mês. A partir da chamada 21, você paga apenas Rs. 20- por callDerivative Um derivado é um contrato entre duas partes que deriva seu valor de um ativo subjacente que pode ser um Índice, Equity, Commodities, etc. Esta opção de investimento oferece uma boa oportunidade de alavancagem e é uma ótima ferramenta para a especulação. Ele pode ser negociado em futuros de índices e opções de índices, futuros de ações e opções de ações. Um futuro é um contrato para comprar ou vender o ativo subjacente por um preço específico em um tempo pré-determinado. Através de karvyonline, agora você pode negociar em futuros de índice e estoque no NSE. Na negociação de futuros, você toma posições buysell em contratos de índice ou estoque (s) com um período de contrato mais longo de até 3 meses. Negociação em futuros é simples Se, durante o curso da vida do contrato, o preço se move em seu favor (ou seja, aumenta se você tem uma posição de compra ou cai no caso de você ter uma posição de venda), você faz um lucro. Uma opção é um contrato, que dá ao comprador o direito de comprar ou vender ações a um preço específico, em ou antes de uma data específica. Para isso, o comprador tem que pagar ao vendedor algum dinheiro, que é chamado de prémio. Não há obrigação de o comprador concluir a transação se o preço não lhe é favorável. Para assumir a posição de compra em opções de índice, você deve colocar certa porcentagem do valor da ordem como margem. Com opções de negociação, você pode alavancar em seu limite de negociação, tomando posições buysell muito mais do que o que você poderia ter tomado no segmento de dinheiro. Opção de Compra tem o direito, mas não a obrigação de comprar o Activo Subjacente ao preço de exercício especificado, pagando um prémio, enquanto que o Vendedor do Pedido tem a obrigação de vender o Activo Subjacente ao preço de exercício especificado. A opção de venda tem o direito, mas não a obrigação de vender o Activo Subjacente ao preço de exercício especificado, pagando um prémio, enquanto que o Vendedor da Put tem a obrigação de comprar o Activo Subjacente ao preço de exercício especificado. Pagando menor quantidade de prémio, você pode criar posições sob OPÇÕES e tirar proveito de mais oportunidades de negociação. Vantagens: Gestão de Risco: Em derivados alguns riscos financeiros podem ser transferidos para outras partes que estão mais dispostos a assumir ou gerenciar o risco. Assim, pode ser uma ferramenta útil para o gerenciamento de riscos. Abaixo estão duas técnicas de gerenciamento de risco. Ele está tomando posições iguais ou opostas em dois mercados diferentes, como comprar no segmento de caixa e concordar em vender no mercado de derivativos ou vice-versa. Arbitragem: Trata-se de um lucro fazendo atividade de mercado de compra e venda de mesma segurança em diferentes bolsas. Arbitragem como uma prática é seguida para aproveitar a disparidade de preços. Aumenta os limites de negociação: uma opção de negociação dá alta exposição a um estoque ou segurança, pagando uma pequena margem. ATENÇÃO INVESTORS Evite transações não autorizadas em sua conta TradingDemat --gt Atualize seu número de celular e ID de e-mail com seu participante Stock BrokerDepository. Receba alertas no seu Mobile Registrado para todas as transações de débito e outras transações importantes na sua conta TradingDemat diretamente do ExchangeNSDLCDSL no mesmo dia. No interesse dos investidores. Impedir transações não autorizadas em sua conta TradingDemat --gt Atualize seu número de celular e ID de e-mail com seu participante Stock BrokerDepository. Receba alertas no seu Mobile Registrado para todas as transações de débito e outras transações importantes na sua conta TradingDemat diretamente do ExchangeNSDLCDSL no mesmo dia. No interesse dos investidores KYC é um exercício de tempo ao negociar em mercados de valores mobiliários - uma vez que KYC é feito através de um SEBI intermediário registrado (corretor, DP, fundo mútuo etc), você não precisa sofrer o mesmo processo novamente quando você se aproxima de outro intermediário Clique Aqui para ler maisTrading Account Semelhante a uma conta bancária, uma conta de negociação atua como uma plataforma comum para vender ou comprar títulos. Os títulos são comprados através de uma conta de negociação, realizada em uma conta Demat, e os pagamentos são feitos através da conta bancária vinculada. Fundamentos da conta de negociação Como abrir uma conta de negociação on-line na Índia Benefícios da conta de negociação on-line Como negociar online usando a conta de negociação Diferença entre Demat conta e conta de negociação NRE, NRO, NRI Trading conta na Índia Por que você precisa para começar a negociar on - Precisa de uma Conta de Negociação Importância da Conta de Negociação Uma conta de negociação on-line ajuda você a negociar instrumentos financeiros através da Internet. Você pode executar ordens buysell com o clique de um mouse. É fácil de configurar e oferece acesso telefônico e on-line. Ele contém uma riqueza de informações sobre seus detalhes de negociação. Assim, você pode tomar decisões financeiramente sólidas para aumentar a lucratividade. Tal conta fornece informações sobre o lucro bruto e perda. Ele também aumenta a velocidade de execução e liquidação de ordens comerciais. Você também pode fazer como muitos ou como poucos comércios como você deseja. Além disso, o custo do comércio on-line é menor em comparação com o comércio físico tradicional. Tipos de Conta de Negociação Existem muitos tipos de contas on-line disponíveis para fins de negociação de valores mobiliários, ações, ouro, ETFs, moedas, etc. Estes incluem Online Forex Trading conta, Online Commodities Trading conta, Online Currency Trading conta, Online Equity Trading conta E Online Derivatives Trading conta. Uma conta Forex é aquele que detém depósitos em uma ou mais moedas com a finalidade de especulação de movimento no mercado de câmbio. O mercado de commodities é semelhante ao de um mercado de ações, exceto que os bens são negociados em vez de ações. Uma conta em linha da equidade permite que você invest nas IPOs, na equidade, nos fundos mútuos e nos instrumentos derivados da moeda corrente. As contas derivadas ajudam a fazer lucros apostando no valor futuro de um ativo subjacente, como moedas, ações, taxas de câmbio, etc Características Benefícios Online trading conta oferece viabilidade para os investidores, pois é simples, estável e rápido para implantar. Permite aos investidores monitorar os movimentos de ativos e títulos negociáveis em tempo real. Você pode ter várias contas com base em suas estratégias de negociação. Alguns podem ter uma conta de negociação para comprar e vender ações de longo prazo, poupança de aposentadoria, contas de margem, etc. Ele permite que você defina seus próprios limites de negociação pessoal e ordens buysell conforme sua conveniência. Uma conta de negociação on-line também reflete a relação entre o custo dos produtos vendidos eo lucro bruto. Ele também lhe dá uma essência de suas transações, dá-lhe cotações em tempo real, e fornece ferramentas de pesquisa e análise técnica, permitindo assim que você faça melhores decisões de negociação. O principal benefício de uma conta de negociação on-line é a facilidade com que você pode gerenciar suas carteiras de ações sem intermediários. Ele também lhe dá maior controle para confiar em suas próprias intuições e assumir riscos com seus investimentos. Além disso, a velocidade das transações aumenta como tudo pode ser feito instantaneamente. Em um set-up tradicional, um teve que contatar seu corretor da bolsa, que negociaria então o preço com o comerciante e coloc a ordem. Isso resultaria em atrasos de transação. O comércio on-line elimina esses problemas. Você também pode monitorar seu estoque como e quando desejar, analisar relatórios de pesquisa, ler notícias financeiras e comércio, mesmo quando você está em movimento. Coisas que você também pode gostar de saber Por que eu deveria abrir uma conta comercial com Angel Broking Angel Broking oferece os melhores serviços financeiros com relação a contas de negociação. As taxas de abertura de uma conta de negociação são nulas. Ele também fornece dicas de negociação especializada para que você possa tomar decisões de investimento rentável. Angel Broking oferece negociação conveniente em smartphones e web através dos aplicativos Angel Swift e Angel Lite. Você pode fazer transações em seu telefone e comprimidos através de Angel Swift. Angel Lite é a ferramenta de troca baseada em navegador móvel. Através de uma conta de negociação Angel Broking, você pode negociar vários produtos, incluindo negociação de commodities, negociação de ações, negociação de derivativos, moeda e Forex, seguro de vida e fundos mútuos. Sou elegível para abrir uma conta de negociação Qualquer pessoa pode abrir uma conta de negociação desde que tenha uma prova de identidade e uma prova de endereço. Estes documentos são necessários ao abrir uma negociação e uma conta demat. Você pode fornecer sua identidade de eleitor, cartão PAN, carteira de motorista, passaporte ou contas como prova de identidade. Como prova de endereço, cartão de racionamento, carta de condução, caderneta de banco, identificação de eleitores, conta de eletricidade, conta de telefone, etc, pode ser apresentado. Você também deve ter uma conta poupança como é necessário para transferrecece dinheiro quando você buysell ações através de sua conta comercial. É aconselhável abrir uma conta de negociação, uma vez que você está bem versado com os fundamentos da negociação. Como posso abrir uma conta de negociação on-line O primeiro passo para abrir uma conta de negociação on-line na seleção de um corretor ou uma empresa. Certifique-se de que o brokerfirm está registrado no Securities Exchange Board da Índia (SEBI). Selecione o melhor provedor de serviços com base em sua reputação, serviço prestado, segurança, taxas de corretagem e serviços de consultoria. Uma vez que você tenha finalizado o corretor, preencha o formulário de Abertura de conta on-line ou colete-o da filial. Junto com o formulário devidamente preenchido, envie os documentos KYC necessários, como sua prova de identidade e prova de endereço. Após a verificação do aplicativo, você receberá seus detalhes da conta de negociação. Em seguida, você pode fazer transações on-line e gerenciar suas carteiras de ações de acordo com sua conveniência. Quanto tempo leva para abrir uma conta de negociação on-line O tempo necessário para abrir uma conta de negociação on-line depende do tempo de processamento. Normalmente, leva cerca de uma semana para a verificação e processamento dos documentos. Às vezes, os candidatos podem enfrentar problemas durante a aplicação, por ex. Alguns podem inserir um endereço diferente em seu formulário de abertura de conta e sua prova de endereço pode ter um endereço diferente. Em tais casos, o processo de verificação fazer demorar mais tempo do que o esperado, causando um atraso na abertura da conta. Uma vez que a verificação de documentos é feita, um kit de boas-vindas é despachado para você com seus detalhes de negociação. Quantas contas bancárias e de depósito posso vincular a uma conta de negociação Você pode vincular quantas contas de negociação você tem a uma conta demat, contanto que seu corretor de ações tenha a Procuração (PoA) para essa conta demat. É necessário que o corretor de ações tenha PoA, uma vez que as ações podem ser retiradas da conta de clientes. Quando você compra ações, você tem a opção de enviar as ações para a mesma conta demat através de várias contas de negociação. No entanto, ao vender, você pode fazer isso com uma conta de negociação (a conta para a qual o PoA é mapeado com demat). Não há muitas vantagens de abrir várias contas de negociação, exceto que as despesas de corretagem são menos. Em vez disso, você tem que acompanhar várias contas, acessar suas contas através de várias plataformas e verificar várias instruções PL, o que pode não ser viável.
Tuesday, 25 July 2017
Monday, 24 July 2017
Teknik Londres Breakout Forex
A Simple London Breakout ingressou em janeiro de 2007 Status: Toda nova idéia parece louca em primeiro 1.580 Posts Aqui está uma estratégia simples de Londres, baseada em uma variação do meu indicador BoxFibo do meu segmento de Estratégia progressiva de Londres. Eu simplifiquei o indicador para colocar os pontos de entrada iniciais apenas entre o que seria normalmente as extensões de fibra de 27 e 38.2 em ambos os lados da caixa. Eu não queria estendê-lo após a extensão 38.2, embora possa ser realizado de forma viável, porque quanto mais longe nós movemos nosso alvo, mais difícil é alcançar os objetivos pretendidos à medida que ele se move em proporção ao tamanho da caixa. Eu queria ter certeza de que tínhamos uma maior probabilidade de alcançar nosso objetivo. A linha Meta de lucro foi cuidadosamente calculada para produzir a mesma quantidade de pips que o tamanho da caixa. Então, se o tamanho da sua caixa fosse de 40 pips, suas linhas de Meta de lucro deveriam ser exatamente 40 pips do seu ponto de entrada. Por causa do menor tamanho da caixa, isso não se destina a pegar uma tonelada de pips, mas esperamos aumentar a taxa de sucesso de nossos negócios. Você precisará colocar o indicador em um gráfico de 15 minutos. A hora de início é colocada das 03:00 às 06:00 GMT, que é as 3 horas que antecedem o Frankfurt aberto (se o seu horário GMT for GMT não é GMT 0, você precisará ajustar as horas dependendo da hora GMT da sua corretora ). Meu corretor é GMT 1, então vou começar das 04:00 às 07:00. A óbvia razão pela qual colocamos isso antes do Frankfurt aberto é ter a caixa desenhada antes da volatilidade entrar e antes que ocorram os breakouts. No que diz respeito aos negócios que ocorrem, você pode lidar com eles de várias maneiras. Você pode A) pegue o primeiro comércio que você obtém e faça um comércio uma noite, vença ou perca, ou: B) tome todos os negócios que se apresentam, é sua escolha. Se você trocar usando a opção B) e ainda tem negociações abertas quando a nova caixa se forma, você pode deixar o comércio até atingir seu Lucro de lucro ou pára, ou você pode fechar todas as negociações abertas antes do início da nova caixa em torno de 03 : 00 GMT se o seu comércio é lucrativo ou não, o que é o que eu prefiro fazer para não se sobrepor às negociações. Prefiro o último, principalmente porque se eu decidir incorporar qualquer tipo de abordagem Martingale, preciso saber o novo tamanho de lote que preciso usar antes que o próximo comércio se apresente. O bom é que você realmente não vê muitos negócios em uma linha que são perdedores. A maioria que eu olhei foi 4-5 em uma linha, então você poderia experimentar uma abordagem de estilo Martingale e aumentar muito em seus perdedores para compensar suas perdas. Pegue 4-5 pares de baixa disseminação (ou seja, EurUsd, UsdJpy, etc.) e brinque com ele nos próximos dias e durante o fim de semana e, a partir da segunda-feira, 12, eu vou escolher alguns pares e mostrar alguns Exemplos de como os negócios teriam se desdobrado. Você deve ver cerca de uma proporção de 65-75 ganhos em geral. Os pares que eu estarei monitorando são: EurUsd GbpUsd UsdJpy EurJpy UsdChf Eu sugiro altamente para não tomar trades se o tamanho da caixa for mais de 40-50 pips em todos os pares. Geralmente, isso ocorre porque um movimento de preços maiores já ocorreu antes do aberto e tornará mais difícil alcançar metas. Não estou dizendo que é impossível, mas use seu senso comum antes de colocar qualquer transação. As estratégias de Martingale são inerentemente arriscadas e não recomendadas, a menos que um capital adequado esteja prontamente disponível para proteger sua conta da possibilidade de uma chamada de margem. Utilize o Gerenciamento de dinheiro adequado em todos os momentos. Erro corrigido em ambos os indicadores. Graças a sangmane para a correção. Novos indicadores e modelos carregados. 4122010 Apenas uma pequena nota, atualizei os dois indicadores e modelos na publicação 1 com as alterações no código que o nightyhawk fez, incluindo o parâmetro MaxBoxSize e a capacidade de alterar a cor do nível. O parâmetro de entrada Fibcolor foi removido, pois não vi mudanças quando a entrada foi alterada. Se você estiver usando um corretor de 5 dígitos, adicione uma quot0quot extra para obter o MaxBarSize correto. 4152010 Um grande agradecimento a Steve Hopwood por modificar uma de suas EAs para se adequar a essa estratégia. A versão atual é do post 292 4192010 As modificações de indicadores feitas por sangmane e squalou agora são incorporadas para incluir que agora você pode alterar a cor da caixa se a caixa for maior que a entrada MaxBoxSizeInPips. Você também pode ajustar a cor SessionEndTime também. Agora você também pode alterar o nível de entrada e os níveis de metas de lucro. Os níveis padrão nos indicadores agora são cuidadosamente configurados para que o objetivo de lucro da sua entrada corresponda ao tamanho da caixa. Há também um parâmetro LevelResizeFactor que foi adicionado, que permite ajustar os níveis se desejar diferentes do tamanho da caixa, mas mantendo a caixa como base. Por exemplo, se você configurá-la para 0.7 (1.0 é o padrão Para negociação normal), todos os níveis serão ajustados como se a caixa fosse realmente esmagada por esse fator, ainda centrada na caixa real quotmedian Pricequot. Post 357 tem algumas fotos de exemplo e uma explicação mais detalhada. Agradeço a todos por suas contribuições. 4222010 V7 do Indicador tem as seguintes melhorias: - mostra quotProfit Zonesquot em verde (pode ser desativado por entrada) - exibe o tamanho da caixa em pips abaixo da caixa e um sinal quotNO TRADEquot para caixas vermelhas - coloca um gráfico-Comentário no topo Canto esquerdo com as configurações principais para que você instantaneamente saiba o que é para esse gráfico - define variáveis globais em todo o sistema para uso com o tratamento abaixo. Squalou modificou Steve Hopwoodss quotLondon Breakout scriptquot (apresentado na postagem 138 e anexado aqui), vá lê-lo para obter o uso básico dos scripts. Este novo script aproveitará as melhorias adicionadas no indicador V7, para que você não precise inserir mais valores entryTPSL. Aqui é como usá-lo: -1- carregar o indicador quotLondon BreakoutV7.mq4quot (ou versão superior) no gráfico -2 - arraste o script para o gráfico, e basta clicar em OK, é isso. O script substituirá automaticamente os valores de entrada deixados para 0 com os níveis de entradaTPSL correspondentes para os pedidos BuyStop e SellStop que o Indicador calculou usando as entradas de seus indicadores, então você não precisa inseri-los manualmente. Você pode usar o script em gráficos abertos com diferentes pares cada. Use quotF3quot key para mostrar o GlobalVariables criado. Você pode mudar seus valores diretamente lá, estes serão os escolhidos pelo script. Eles serão atualizados automaticamente quando uma nova caixa for formada no dia seguinte. 4282010 A V8 possui as seguintes entradas adicionadas Esta versão permitirá manter os níveis de SLTP em limites quotreasonablequot minmax em dias com volatilidade pré-breakout muito alta ou muito baixa. Tem mais 2 entradas atuando como limitadores de tamanho de caixa. Não quer que seus níveis de TPSL saem do telhado Apenas configure o quotMaxExtentInPipsquot para qualquer tamanho de caixa que você não deseja exceder, e é isso. E para aqueles dias em que você acha que a caixa é muito pequena, e você certamente poderia colher mais pips do que o que sugere a pequena tira verde. Então basta configurar o quotMinExtentInPipsquot. Claro, como de costume, ignorar esses valores (padrão 0) não alterará o comportamento do indicador de versões anteriores. Apenas para mantê-lo em casa. Graças ao squalou para todas as melhorias. Se você tiver alguma dúvida técnica sobre o indicador ou os parâmetros do script, por favor PM squalou diretamente, obrigado. 4292010 O pacote completo agora é adicionado em um arquivo zip que agora inclui: Steve Hopwoods EA (modificado por Squalou) Indicadores (Novo Indicador V.9.1) Scripts Qualquer dúvida, por favor PM ou e-mail squalou para detalhes. 562010 Uma configuração alternativa está sendo testada no início no post 647. As configurações e regras alternativas podem ser encontradas na versão 506 5112010 V4.0 da EA. - Adicionado Capacidade de Trailing Stop TrailingStopPips (0) - pips para rastrear o StopLoss quando 0 não é aplicado um trailing (SL fixo como antes). TrailingStopStep (1) - o SL de tração irá saltar por esse valor em vez de se arrastar em cada marca (ajuda a limitar o número de pedidos enviados e, portanto, a rejeições de ordem). - Ganhar lucro adicional após lucro fixo: quotBreakEvenPipsquot - quando quotBreakEvenPipsquot é gt0, SL é movido para BEquotBreakEvenProfitInPipsquot quando o preço atingiu BEquotBreakEvenPipsquot. Funciona de forma independente de quotAllowHalfClosequot opção (mas usa o mesmo valor BreakEvenProfitInPips) também será arrastado se TrailingStop for selecionado (inspirado em Steves MPTM EA.) Quot MaxRisk quot - if gt0, então o tamanho da ordem é o min do lote de entrada e o máximo calculado baseado no lote No MaxRisk e no Stoploss - Todos os negócios de openpending serão fechados quando o EA estiver descarregado - substituirão as funções relacionadas à ordem com quotreliablequot versões deles. (Repetir 10 vezes em intervalos cronometrados se a chamada falhar). - quando o MagicNumber é 0, um MagicNumber exclusivo é criado pela EA, o MagicNumbers será diferente para cada período de par. Isso ajuda a executar a EA em diferentes quadros de pares sem ter que alterar manualmente o MagicNumber. - Alertas adicionadas quando as Variáveis globais de configurações de indicadores não podem ser encontradas. A EA interromperá a negociação neste caso. - correção: no V3.0, objPrefix valor padrão não foi definido como quotLB-quot como deveria ter sido, levando a erro 130 quotinvalid stopsquot. 5202010 eu li o post inicial várias vezes, baixei o modelo, mas não consegui essas coisas simples 1. onde está o seu stoploss. Está na outra extremidade da caixa. Não é mencionado na publicação initail 2. onde você colocará seu pedido de compra. À extensão de 27 fibras. 38.2 extensão de fib. Se ambos estiverem bem, por que você precisa do outro. Não podemos consertar um número 3. se o stoploss estiver na outra extremidade, então a recompensa de risco é inferior a 1: 1, você mencionou a taxa de ganhos de 70-80, que transmitiria para BE ou um número ligeiramente positivo. É o 4. correto no modelo. Eu mudei os horários para 05:00, 08:00 (meu corretor é GMT1), mas os níveis de saída de entrada não mudaram, mas a caixa é redesenhada 5. você trocaria apenas pares da Europa porque isso é Londres. Você tem similares para os EUA? Qual é o melhor par para negociar para Londres 6. você mencionou que pode entrar várias vezes, precisamos manter a redefinição da caixa. Se assim você demorar 3 horas passadas. Junte-se a janeiro de 2007 Status: Todas as novas ideias ficam loucas no primeiro 1.580 Posts 1. Onde está o seu stoploss. Está na outra extremidade da caixa. Não é mencionado na publicação do initail Mostra as paradas no indicador para você. 2. Onde você colocará seu pedido de compra. Na extensão de 27 fibras. 38.2 extensão de fib. Se ambos estiverem bem, por que você precisa do outro. Não podemos consertar um número novamente, veja o indicador. Seu ponto de entrada já está lá para você. Os pontos de entrada são calculados para estar acima dos 27 ext. No primeiro indicador e logo acima do 38.2 ext. E a segunda versão do indicador. As extensões não têm nada a ver com a entrada, elas são apenas para referência. Você não está sendo forçado a usar qualquer um, eu acabei de adicionar o segundo indicador como outra opção. Use qualquer coisa que faça com que você se sinta confortável usando. Basta lembrar, se você usar o segundo indicador de que suas metas de lucro serão distribuídas cada vez mais difíceis de acertar. 3. Se o stoploss estiver na outra extremidade, a recompensa de risco é inferior a 1: 1, você mencionou a taxa de ganhos de 70-80, que seria traduzida para BE ou um número ligeiramente positivo. É sim sim sim, o RR é inferior a 1: 1, mas não muito. Hipoteticamente, se usarmos as gamas Target Target e Stoploss a partir do gráfico acima e tomar 10 trades e usar uma taxa de sucesso de 70, teríamos isso: agora, se você fizer 10 negociações por dia x 5 dias por semana, você acabará Com 305 pips. Eu digo que é muito melhor do que BE, você não conheço muitos comerciantes que gostariam de ter apenas 20 pips por dia, e muito menos 61 Sim, existem sistemas melhores lá fora, mas duvido que existam muitos simplistas Como isso. Lembre-se, há pessoas lá fora que louvam as FAP Turbo e Megadroid EAs, e você apenas faz 5-7 pip lucro por comércio e ainda tem 100-200 pip stop loss. Eu tomarei isso qualquer dia da semana. 4. no modelo. Eu mudei as horas para 05:00, 08:00 (meu corretor é GMT1), mas os níveis de saída de entrada não mudaram, mas a caixa é redesenhada Eu não tenho certeza do que você está perguntando, mas as linhas de meta de entrada e lucro devem mudar conforme Mudanças de tamanho da caixa. Você pode publicar uma foto sobre o que você está tentando explicar, o que ajudaria. 5. Você trocaria apenas pares da Europa porque este é Londres? Você tem similares para os EUA? Qual é o melhor par para negociar para Londres A estratégia funciona melhor com o GBPUSD. Como este par negocia levemente fora do horário comercial de Londres, o aumento da negociação todas as manhãs na U. K dá-lhe uma abertura do mercado 8220real8221, que a estratégia procura explorar. O comércio de GbpUsd é virtualmente inexistente durante as horas de negociação na Ásia. Quando Londres abre, no entanto, o GbpUsd representa quase um quarto de todas as operações de forex. As taxas de câmbio com uma negociação mais contínua e 24 horas terão menos de um openclose distinto à medida que passarem pelas diferentes sessões de negociação. Por exemplo, o USDJPY, que domina a atividade de Forex durante o horário comercial asiático (78% do volume), ainda representa 17% da negociação durante as horas européias. Então, como você pode ver, a sessão de negociação de Londres pode afetar cada par que você troca, basta puxar qualquer gráfico e ver por si mesmo. Olhando para o diagrama, você pode ver como os 4 majores têm a maior atividade na sessão de Londres. 6. Você mencionou que pode entrar várias vezes, precisamos manter a redefinição da caixa. Se assim você demorar as últimas 3 horas, não, você não redesenha a caixa. O indicador é redesenhado automaticamente a cada dia em qualquer momento definido nos parâmetros. Uma vez que a caixa é desenhada após o Frankfurt aberto, todas as negociações são baseadas nesses níveis até que uma nova caixa seja desenhada na noite seguinte. Para entradas múltiplas, uma vez que o preço retrocede abaixo do nosso ponto de entrada original ou reverte e atinge o ponto de entrada oposto, você tem o poder discricionário para entrar em negócios adicionais se você escolher. Vou mostrar a todos mais exemplos disso nesta segunda-feira. Estes sistemas mostram lucro a longo prazo e, embora eles não o tornem rico ao longo da noite, eles poderiam fazer a longo prazo com a alavanca certa. Grande comentário: cada novato que pensa em começar a negociação Forex deve aprender esta mentalidade primeiro, juntamente com o aprendizado do Money Management . Eu criei minhas contas ao longo dos anos depois de aprender da maneira mais difícil que todas essas estratégias e EAs que reivindicam você pode dobrar ou triplicar sua conta são um monte de porcaria e estão apenas lá para drenar sua carteira. Sempre acreditei que, se sua EA ou estratégia de negociação fosse tão boa, por que vendê-lo, vou começar a negociar EURGBP na segunda-feira 12 em conta ao vivo. Eu vou deixar você saber como vai. Obrigado, mantenha-nos informados em seus negócios ao vivo, pois essa é a melhor maneira de validar uma estratégia de negociação, testes em directo. Os pares com os quais eu vou trabalhar são os 4 maiores pares (EurUsd, UsdJpy, GbpUsd e UsdChf) e também EurJpy e EurGbp. Uma vez que você pode nos informar sobre o último, o EurGbp, eu apenas atualizo e analiso os primeiros 5. Isso parece funcionar com EURGBP com o segundo indicador, muito bem. Isso ocorre porque a caixa geralmente é muito pequena. Ele tem uma proporção muito boa de ganhos se a caixa for menor que 30 pips. De novo, é bom ver outros comerciantes mudá-lo para se adequar ao seu próprio estilo. Eu estava pensando em fazer algo semelhante no UsdChf, usando o 2º indicador e limitando o tamanho da caixa para apenas 30-40 pips. Faz sentido porque esses dois pares não possuem o alcance dos outros. Isso mostra as paradas no indicador para você. Novamente, observe o indicador. Seu ponto de entrada já está lá para você. Os pontos de entrada são calculados para estar acima dos 27 ext. No primeiro indicador e logo acima do 38.2 ext. E a segunda versão do indicador. As extensões não têm nada a ver com a entrada, elas são apenas para referência. ColorblueVocê não está sendo forçado a usar qualquer um, acabei de adicionar o segundo indicador como outra opção. Use qualquer coisa que faça com que você se sinta confortável usando. Uau. Ótima explicação. Muito obrigado mer071898. Vou fazer uma troca de papel por uma semana. Vai fazer grandes 4 pares Coloque um EMA 84 em seu gráfico quando o EMA estiver na caixa por um dia em que não trocamos. A maioria está na caixa quando está tocando apenas os lados sem problemas, então está tudo bem. Quando a caixa está acima de EMA quando procura apenas longos quando o preço está abaixo de apenas calções. Ingmarforex, agradeço a entrada. Uma questão é o EMA configurado para fechar ou algo diferente. Deixe-nos saber se você está testando e se o ajudou. Para aqueles que desejam incorporar o 84 EMA no seu gráfico, sinta-se livre para fazê-lo. Só utilizo o indicador London Breakout somente neste segmento por enquanto. Obrigado por compartilhar seu sistema e indicadores. Você é bem vindo. Obrigado pela estratégia. Claro, parece ótimo em GU e GJ. Parece que não há falhas nos dois pares. Ao voltar a testar outros EU e EJ e EURGBP só tem uma taxa de sucesso de 50 a 60, enquanto a UJ parece ter uma taxa de sucesso de 70-80. Eu fiz um pouco a estratégia do meu gosto. Aqui está o meu ajuste: a fuga é de 7 a 10 GMT. Pego o comércio 5 pips abaixo ou acima da caixa e defina meu TP no valor de fib de 161,8. 0-100 sendo o baixo e alto da caixa. SL sendo 5 pips abaixo ou acima da caixa em frente ao meu comércio. Fico feliz em ver que está funcionando para você, espero que você tenha sucesso com seu ajuste. Eu só quero ter certeza de que o tópico também não seja bombardeado com a variação de todos. Se você tem uma estratégia ou variação diferente, abra um tópico diferente e discuta-os lá, pois não quero confundir com a estratégia original, obrigado. Uau. Ótima explicação. Muito obrigado mer071898. Vou fazer uma troca de papel por uma semana. Vai fazer 4 pares importantes, tento ser tão claro quanto possível, mas às vezes você precisa re-iterar o que você diz para garantir que as pessoas compreendam completamente tudo. Sinta-se a vontade para fazer qualquer pergunta e eu vou responder-lhes o melhor que posso para você. Agora, lembre-se, eu só uso os principais pares porque a maioria dos comerciantes está familiarizado com eles e é negociado com mais freqüência. Você pode usar isso em QUALQUER PAR, eu apenas prefiro usá-lo em pares com spreads baixos para maximizar meu potencial de lucro. Uma vez que os corretores dos EUA não permitem que alguém se cubra, como você filtra esses falsos conflitos. Primeiro, não há hedging em andamento, você está apenas em um comércio em um par por vez. Você está sendo impedido ou já atingiu o seu Lucro de lucro antes que outros negócios estejam sendo usados. Simple London Breakout V.2 Ingressou em janeiro de 2007 Status: Toda nova idéia parece louca no primeiro 1.580 Posts Eu tive que ajustar meu pensamento a isso Estratégia um pouco porque antes, estávamos preocupados com a captura do breakout e era isso. Agora iriam puxar pips para fora das reversões que estavam nos atormentando para ajudar a compensar todo o encontro de inversões completas bem e estar pronto com os negócios já existentes quando ocorrem os breakouts. Agora, não vamos pegar todas as fugas, mas está tudo bem, pois não vamos sacrificar a disciplina por fazer lucros, não paga para ser ganancioso. Aqui você encontrará uma versão revisada da minha estratégia Simple London Breakout. Depois de algumas complicações no que diz respeito ao manuseio de reversões dentro da estratégia original, sentei-me e estudei as tabelas passadas para tentar encontrar uma maneira melhor de aproveitar os dias em que ficaríamos presos em um período variável. O que eu queria realizar era tentar aliviar, ou pelo menos minimizar, o dano de ser interrompido nessas reversões após as nossas entradas iniciais. Quando terminei de trabalhar em outros projetos, voltei para a minha estratégia original e notei algumas coisas que estavam acontecendo que poderíamos aproveitar e fazer o trabalho em nosso benefício. Eu também encontrei algumas maneiras de tentar e ajudar a proteger o nosso lucro tomando ao longo do caminho. O que eu estava vendo era com que frequência nós teríamos o nosso ponto de entrada atingido e depois, magicamente, teríamos uma reversão imediata logo depois disso. Um bom amigo sugeriu que isso pode ser devido ao fato de eu estar começando muito cedo (a primeira estratégia tinha o final da caixa no Frankfurt aberto às 7:00 GMT) e que eu deveria incluir essa hora inteira e começar a caixa diretamente em O London Open porque provavelmente estávamos a ter pontos falsos do Frankfurt aberto. Ele também sugeriu que talvez tente usar o ponto de entrada antigo como um alvo em vez disso. Eu terei que dar algum crédito à rjlacha, pois lembrei que ele abriu um fio um tempo atrás e estava usando a borda da caixa como seu ponto de entrada e eu pensei que poderia funcionar. Assim, com a ajuda de habilidades de codificação extraordinárias, desenvolvemos uma versão modificada do indicador London Breakout para que todos possam usar (sqaulou está atualmente jogando com uma nova EA para esta estratégia que virá mais tarde, depois que ela for testada corretamente primeiro). O que fizemos foi usar a borda da caixa como o novo ponto de entrada da maneira que a rjlacha o usa e incorporou uma configuração de metas de lucro de 3 camadas para pegar pips mais cedo no comércio e ainda ser capaz de tomar mais pips quando ocorrer o breakout. Como todos sabem, eu sou um grande usuário de técnicas de martingale e que é transmitido do primeiro segmento com um pouco de torção para isso que eu explicarei mais tarde, quando apresentamos alguns exemplos. Então, ao longo dos próximos posts, vou mostrar exemplos de configurações perfeitas, configurações de reversão e como obtemos lucros em diferentes cenários. A grande diferença no indicador modificado é que o parâmetro quotMaxBoxSizeInPipsquot é agora quotMinBoxSizeInPipsquot. A razão pela qual é porque nosso primeiro objetivo de lucro não está longe do ponto de entrada e não queremos que o spread coma todo o lucro. Devido à mudança de parâmetro, é melhor usar pares com um spread menor. Você pode usar um par com um spread maior, mas certifique-se de aumentar o quotMinBoxSizeInPipsquot apropriadamente (o padrão é 25). Nós realmente queremos ficar longe de grandes caixas com mais de 100-120 pips, porque Target 1s será difícil de alcançar e parar de sair quando tivermos reversões será muito caro. Nós incorporamos um objetivo de lucro de 3 níveis para este indicador para ajudar o comerciante a ver visualmente quando fechar cada troca e quando ajustar suas paradas. Os tempos de caixa padrão são das 05:00 às 08:00 GMT e não iremos colocar novos negócios depois das 17:00 GMT às sextas-feiras, pois não queremos ficar apanhados em lacunas durante o fim de semana. Na verdade, se você estiver mostrando algum sinal de rentabilidade, gostaria de sugerir fechar o comércio e não mantê-los durante o fim de semana. Se o seu corretor é GMT 0, você não precisa mudar nada. Mas se seu corretor for, por exemplo, GMT 2 como com o FXCBS (este é o corretor que vou usar para os meus exemplos), basta adicionar 2 horas para todas as vezes para estar correto. Estou usando o FXCBS porque eles têm muito baixo para se espalhar. Você pode verificar a propagação da maioria dos corretores aqui para ver onde eles estão em comparação com os outros. Eu anexei este indicador aqui para publicar 1 juntamente com o meu modelo que eu uso. Eu só estarei assistindo 5 pares em um gráfico de 15 minutos: EurUsd, GbpUsd, EurJpy, UsdCad e GbpJpy. GbpJpy é o meu par experimental e aumentou o tamanho mínimo da caixa para 35. Vou dar exemplos de configuração usando todos os pares, mas só publicarei exemplos de comércio em EurUsd apenas para economizar tempo. Tenho certeza de que todos vão conseguir o jeito muito rápido e poderão ler os outros gráficos por conta própria. Antes de começarmos, como cortesia, abster-se de comentar sobre a natureza das estratégias de martingale. Todos sabemos agora os riscos inerentes envolvidos em usá-los e não precisam ser lembrados repetidamente. Se você é um daqueles que odeiam estratégias de martingale, por favor, avance e não perturbe o fio, isso obviamente não será para você. Além disso, não inundar o segmento com quotyou deve fazer isso ou adicionar thisquot ou quotthis funcionaria melhores quot comments. Eu quero preferir manter a estratégia original postada, mas se você quer brincar com as configurações e adicionar outros indicadores, sinta-se livre para fazê-lo por conta própria, caso contrário confunde aqueles que querem seguir a premissa original da estratégia , obrigado. Tudo bem, sqaulou, nosso codificador extraordinário, modificou o indicador e adicionou duas novas funções. Bem, na verdade, uma função era uma função antiga que foi adicionada novamente e a segunda é nova. O primeiro que ele adicionou de volta ao indicador foi a função quotMaxBoxSizeInPipsquot. Isso funciona de forma semelhante ao parâmetro quotMinBoxSizeInPipsquot, na medida em que desenha uma caixa vermelha que diz quotNo Tradequot quando a caixa está excedida. QuotXquot número de pips Agora, a nova função adicionada ao indicador é chamada quotLimitBoxToMaxSizequot. O que isso nos permite fazer em ocasiões em que o tamanho da caixa padrão é muito grande, é que ele limita o tamanho da caixa comercializável para quotXquot número de pips. O indicador calculará e centralizará a caixa com base na EMA média composta pelas 12 barras da caixa. Assim começamos com uma caixa que não é muito larga, mas devidamente centrada. Exemplos são mostrados nas postagens 62 amp 63. Ive atualizou o modelo para usar a nova versão do indicador. Sqaulou e adicionei dois (2) níveis de alvo ao indicador LBO e o postei abaixo, juntamente com um novo modelo. Para aqueles comerciantes lá fora que gostam de deixar seus negócios funcionarem, isso é para você. A opção perfeita sqaulou adicionada neste é quando você define o quotTPFactor5quot para quot0quot, o indicador mostrará apenas 3 metas em vez de 5. Então você basicamente tem 2 indicadores em um. Ele também adicionou um comentário quotBOquot abaixo da caixa (para B reak O ut) para ajudar a distinguir a estratégia BreakOut da nova estratégia Counter Trend que será introduzida. Você verá apenas a entrada para o TPFactor5 nos parâmetros dos indicadores porque TPFactor 4 é calculado o mesmo que o TPFactor2, adicionando Target 3 amp 5 juntos e dividindo-os por 2. Target 5 é definido como a extensão 3.618 Fib por padrão. Sinta-se livre para mudá-lo para o que você estiver com vontade de usar. Ele também o corrigiu para onde as zonas são desenhadas durante o fim de semana também. Eu fiz algumas mudanças (começando na postagem 988) sobre como fechar negócios e ter enviado um e-mail para sqaulou para ver se ele pode atualizar a EA com essas novas mudanças. Iniciou-se em janeiro de 2007 Status: Toda nova idéia parece louca no primeiro 1.580 Posts Quando Colocando negociações na estratégia original, nós apenas colocamos um único comércio no ponto de entrada e esperamos até atingir um alvo ou ficar parado. Com esta estratégia, você pode colocar um único comércio, 2 negociações, ou mesmo 3 negociações no ponto de entrada. Estarei colocando 3 negociações ao mesmo tempo para todos os exemplos que eu lhe darei. Mais uma vez, isso é como um comércio perfeito iria: 1.) O preço atinge nosso ponto de entrada e colocamos três negócios individuais de qualquer tamanho que sua administração de dinheiro ditará (faça todos os 3 negócios do mesmo tamanho). 2.) À medida que o preço atinge nosso Target 1, fechamos 1 dos negócios e deixamos as outras duas negociações abertas. Uma vez que o comércio está fechado (referido como o comércio 1 a partir daqui em diante), mova sua parada nas outras duas negociações para se equilibrar ou, como eu, pague 1 (garante-lhe pelo menos 1 pip após uma reversão). 3.) À medida que o preço atinge o alvo 2, fechamos mais 1 comércio (comércio 2) e deixamos o último comércio aberto. Uma vez que o comércio está fechado, mova sua parada nos últimos negócios para o Target 1 para bloquear os pips. 4.) À medida que o preço atinge o Target 3, fechamos nosso último comércio (comércio 3). Na foto abaixo, na GbpJpy ontem à noite, tivemos uma configuração de comércio perfeita que nos compensou 200 pips no total em 3 negócios individuais (não incluindo o spread). Os negócios perfeitos não acontecem com a frequência com que se quer ver, mas isso é bom, temos um plano para isso. Comércio 1 47 Comércio 2 100 comércio 3 153 Total 200 Se você estiver usando apenas 1 comércio, basta mover sua parada em cada nível alvo. Se você usa 2 negociações, feche o comércio 1 no Alvo 1 e mova as paradas no comércio 2 enquanto atinge cada alvo. Como eu disse, estou usando 3 negócios, então eu posso levar 1 comércio para cada nível alvo. Imagem anexa (clique para ampliar) parece interessante, posso saber o que TF está usando. O prazo que você precisa usar é de 15 minutos. Como eu disse no post anterior, as tradições perfeitas não ocorrem muitas vezes, pois geralmente se apresentam após uma reversão. Neste exemplo, tivemos um par de reversões antes do nosso comércio perfeito ocorreu. Agora, a fraqueza da estratégia é que, quando o preço atinge nossa entrada e reverte, temos 3 negociações na linha e não 1. Em vez de ter uma perda de pipa de -26 (que é o tamanho da caixa), temos um -78 Perda de pip (3 negociações x 26 pips). Este é o lugar onde a martingale entra para salvar o dia. Eu uso um multiplicador com meus negócios quando eu tenho uma perda e a seqüência vai 1, 2, 5, 13, 34, 89, 233 e 610. Eu notei com esta nova versão da estratégia que o multiplicador raramente ultrapassa 34. Como o multiplicador funciona é uma vez que atingimos nosso stoploss, fechamos todas as 3 negociações e imediatamente inserimos mais 3 trades curtos usando o próximo multiplicador na seqüência, neste caso, seria 2. se usarmos .1 lotes para um exemplo, Abriremos as próximas 3 negociações em .2 lotes. Neste comércio, tivemos 2 reversões antes de termos tido nossa descoberta. A primeira inversão que nos impediu de passar por -78 pips (3 x -26). Nós inserimos mais 3 comércios imediatamente usando um multiplicador de 2 para qualquer tamanho de lote que você usou no primeiro comércio. Acabamos com uma segunda inversão que nos impediu de -156 pips (3 x -26 x um multiplicador de 2). Mais uma vez, entrámos imediatamente em mais 3 negócios, desta vez com um multiplicador de 5. Como podemos ver, os multiplicadores nos ajudam a recuperar são perdas nos negócios anteriores que não passaram bem. É com isso que seria com e sem o multiplicador: Comércio 1 -26 Comércio 2 -26 Comércio 3 -26 Comércio 1 -26 Comércio 2 -26 Comércio 3 -26 Comércio 1 16 Comércio 1 34 Comércio 1 52 Para um total de -132 pips Comércio 1 -26 Comércio 2 -26 Comércio 3 -26 Comércio 1 -52 (-26 x multiplicador de 2) Comércio 2 -52 (-26 x multiplicador de 2) Comércio 3 -52 (-26 x multiplicador de 2 ) Comércio 1 80 (16 x multiplicador de 5) Comércio 1 170 (34 x multiplicador de 5) Comércio 1 260 (52 x multiplicador de 5) Para um total de 276 pips Muito um pouco de diferença, você não pensa Sinta-se livre para usar Seu próprio estilo de multiplicador e experimente um pouco. Alguns só querem recuperar as perdas com nenhum lucro adicional e alguns vão querer uma abordagem mais agressiva. Imagem anexa (clique para ampliar) Inscrito em janeiro de 2007 Status: Toda nova idéia parece louca em primeiro 1.580 Posts Na maioria das vezes, vamos ver as reversões do Target 1 muito nesta estratégia e precisamos pegar os pips quando podemos . O Target 1 é colocado na extensão 61.8 fib da caixa, de modo que ele vai ser um ponto de reversão natural e isso estava causando a maioria dos problemas no segmento original, já que o usávamos como ponto de entrada em vez de um alvo. Neste exemplo no UsdCad, podemos ver as entradas longas que se desviam do Target 1. A razão pela qual eu tenho você move a parada para break-even ou break-even 1 depois de atingir o Target 1 é porque estamos preparados para uma reversão em Este ponto e nos poupa de perder dinheiro no comércio de 2 amplificadores 3. Se eu quiser negociar o primeiro, eu faria 34 pips no comércio 1 e 1 pips cada um no comércio de 2 amp 3 quando foram impedidos de reverter. Imagem anexa (clique para ampliar) Estou certo de que muitos de vocês estão se perguntando se existe uma regra para reintroduzir um comércio, sim. Se você seguir esta regra, isso salvará muitas entradas ruins. Não volte a entrar no comércio até uma vela se fechar dentro da caixa Se continuarmos com o gráfico UsdCad da publicação anterior, podemos ver que, depois de fecharmos nosso primeiro conjunto de negócios, temos uma vela fechada dentro da caixa tanto às 13: 30 e 16:00 GMT (15:30 e 18:00 GMT na FXCBS) A primeira reentrada nos compensou mais 34 pips no comércio 1 e, em seguida, 1 pip cada no comércio 2 amp 3 na reversão (lembre-se, movemos nosso Pare para o ponto de equilíbrio 1 ao atingir o alvo 1). A segunda reentrada foi feita como uma troca curta e nós compensamos outros 34 pips no comércio 1 e negociamos 2 amp 3 com 72 e 111 pips, respectivamente, para um total de 289 pips, embora tivéssemos que aguardar no próximo dia para fechar o comércio 2 amperios 3 para fora. Eu prefiro deixar os negócios abertos restantes serem executados até atingir um alvo ou parar, apenas minha preferência. Você pode fechar todos os negócios abertos sempre que desejar. Não abrirei novos negócios após 01:00 GMT, que é o fim da zona verde em seus gráficos. Eu permitirei que todos se recuperem e mergulhe tudo e eu publicarei mais alguns exemplos mais tarde. Imagem anexa (clique para ampliar) Inscrito em janeiro de 2007 Status: Toda nova ideia parece louca em primeiro lugar 1.580 Posts Obrigado por parar em caras, se você alguma dúvida não hesitar em perguntar. O próximo exemplo que eu quero mostrar é lidar com uma inversão e não chegar a um alvo 2 ou 3 e como lidar com isso. Podemos ver quando começamos com um alvo 1 sendo atingido por 37 pips e, em seguida, conseguir uma parada para o comércio 2 amp 3 para 1 pip cada. Nós temos uma vela perto na caixa às 13:45 GMT, mas a próxima vela aumenta e desencadeia um longo comércio. Esperávamos que o tempo continuasse, mas não nos faz para -180 pips (-60 x 3 comércios). Agora, fechamos esses negócios e entramos imediatamente em 3 novos negócios usando um multiplicador de 2. Normalmente, neste momento, esperamos que possamos chegar ao alvo 2, o que garantiria que recuperássemos nossa perda. Infelizmente, isso não acontece, pois só recebemos 74 pips no alvo 1 antes de nos voltar e depois troque 2 amp 3 para fechar por 2 pips cada. Recebemos uma outra vela que fecha na caixa às 19:30 GMT e outra oportunidade comercial curta dispara na próxima vela. Agora você pode ir para um multiplicador de 5 aqui se você escolher, mas, como ainda estavam dentro do mesmo dia de negociação e ainda não recuperamos nossa perda, seria mais seguro ficar com um multiplicador de 2 quando a sessão de Londres fechou e O mercado dos EUA é a única sessão aberta. O preço dispara um pouco e, na verdade, rejeita o 38.2 fib do grande downswing que acabamos de ter. Estou pensando que este deve ser um bom comércio de continuação e bem, devolva nosso dinheiro, mas leva uma reviravolta drástica e nos interrompe novamente por uma perda de 3/60 pip (-60 x 3 trades x multiplicador de 2). Uma vez que estamos antes das 01:00 GMT, não entramos em novos negócios, então espere até a nova caixa se formar. Uma vez que não recuperamos todas as nossas perdas de volta com um multiplicador de 2, abrimos o próximo conjunto de trocas em um multiplicador de 5. Ao entrar na caixa dos próximos dias, você tem uma melhor chance de recuperar o início da vida, por isso Eu coloco o multiplicador. As coisas finalmente funcionam a nosso favor e seguimos todos os 3 destinos. Todas as novas oportunidades comerciais agora começam de volta aos tamanhos de lote normais. Vejamos como isso ocorreu Comércio 1 37 Comércio 2 1 Comércio 3 1 Correndo Total 39 Comércio 1 -60 Comércio 2 -60 Comércio 3 -60 Correndo Total -141 Comércio 1 74 (37 x 2) Comércio 2 2 (1 x 2) Comércio 3 2 (1 x 2) Correndo Total -63 Comércio 1 -120 (-60 x 2) Comércio 2 -120 (-60 x 2) Comércio 3 -120 (-60 x 2) Correndo Total -423 Comércio 1 165 ( 33 x 5) Comércio 2 355 (71 x 5) Comércio 3 540 (108 x 5) Total final 637 Isso mostra que você não pode desistir, mesmo depois de algumas reversões. Isso pode mostrar a todos que um gerenciamento de dinheiro calculado da martingale pode funcionar, especialmente se você estiver assistindo vários pares para ajudar a compensar as perdas de outros pares que estão esperando para recuperar essas perdas. Imagem anexa (clique para ampliar)
Sunday, 23 July 2017
Vb Net Trading System
Plataforma de Negociação Plataforma de Negociação de Código Aberto Aplicação de Software Aplicação de Negociação Código Fonte A plataforma de negociação M4 é um aplicativo de negociação profissional que é fornecido com código-fonte completo. Você pode comprar M4 pagando uma taxa de licença de uma só vez, em seguida, personalizar o aplicativo para suas especificações exatas e rebrand-lo como seu próprio software. Em seguida, você pode redistribuir o aplicativo compilado sem pagar taxas de licença extras ou royalties. M4 está disponível como código fonte VB, C ou VC, assim você pode optar por trabalhar com o idioma que você está mais confortável com. Uma visão mais técnica abrangente da M4 pode ser encontrada em modulusfem4 Se você está considerando um pronto para ir, plataforma de negociação de etiqueta branca, então não procure mais. M4 vai economizar sua empresa 8.500 desenvolvimento homem-horas, o que equivale a mais de 100.000 em poupança em apenas 15 horas ou bem mais de 340.000 em poupança em 40 horas. M4 é simples, Felxible e acessível Nós oferecemos três versões de M4. A interface de usuário front-end está disponível no Visual Basic (VB), C e VC. Sentimos que a versão VC oferece uma configuração familiar para programadores VC experientes, enquanto que as versões VB e C tornam as personalizações da interface do usuário muito simples e econômicas. Em todas as versões, o código de back-end intensivo da CPU é escrito em VC para o máximo desempenho possível. O código back-end inclui o mecanismo de gráficos, as funções de análise técnica e a linguagem de script. Veja o diagrama de processo abaixo. Tudo sobre M4 é completamente customizável. Todas as janelas, menus, barras de ferramentas, gráficos e recursos podem ser modificados, aprimorados ou removidos com facilidade. Como você obtém código-fonte completo tanto para o front-end (VB, C ou VC para a Interface do Usuário) como para o backend (VC para o mecanismo de gráficos, linguagem de script, indicadores técnicos, mecanismo de banco de dados, etc.) Ou você pode contratar desenvolvedores para fazer modificações para você. Acessível M4 pode ser configurado com base em suas necessidades exclusivas e orçamento. Nós oferecemos uma licença perpétua acessível com código fonte custa apenas uma fração da taxa de 100.000 que outras empresas de software de plataforma cobram sem código-fonte Com M4 o tempo de mercado é mais rápido e os custos totais são muito menos do que mesmo usando bibliotecas de código aberto e pagando Para o desenvolvimento terceirizado. Diagrama de Processo Básico 1. A primeira camada do M4 é o cliente comercial front-end, que inclui entrada de pedidos, gráficos em tempo real, alertas, back testing, scanningscreening, etc. Tanto um aplicativo desktop quanto um aplicativo Windows Mobile são fornecidos com fonte completa Código, para que você possa fazer qualquer número de personalizações para esses aplicativos. 2. A segunda camada é o servidor M4, que é um serviço da web que pode ser hospedado em seu servidor ou hospedado em nossos servidores. Um servidor barato será suficiente. Esta camada é responsável pelo tratamento dos dados do cliente (configurações de janelas, logs comerciais, relatórios, mensagens instantâneas, chaves de licença, etc.) para que a carga neste servidor seja mínima. Todos os dados são criptografados antes da chegada. O utilitário de administração fornecido permite gerar relatórios de contas, enviar mensagens instantâneas, criar chaves de licença, desativar usuários e assim por diante. 3. A terceira camada é um servidor de banco de dados em tempo real opcional capaz de armazenar dados de carrapatos em tempo real, transmitindo simultaneamente os dados de carrapatos para clientes M4 e processando pedidos de dados históricos em tempo real. Este servidor é capaz de lidar com várias extremidades de cabeça de troca ou feeds de dados e agregando todos os dados em uma fonte. Esta camada é usada somente se você estiver hospedando seus próprios dados. Alternativamente, o cliente M4 pode se conectar diretamente a um provedor de dados, como eSignal, Barchart, DTN, etc. Compatibilidade Garantida Se o seu corretor ou provedor de dados não for suportado, podemos programar as APIs em M4 sem custo adicional. Contacte-nos para mais detalhes. Garantia de Qualidade A M4 já foi submetida a milhares de horas de testes de QA, testes de carga e uso do mundo real por comerciantes reais para que você possa gastar menos tempo testando e depurando. Primeiros passos Clique aqui para ver uma demonstração da plataforma M4. Em seguida, entre em contato conosco e consultaremos você e sua equipe para mostrar os recursos e benefícios da plataforma de negociação M4, além de oferecer dicas para personalizar a plataforma M4 para melhor atender às suas necessidades. Não importa se você é uma corretora, instituição financeira ou um profissional profissional individual, você certamente irá beneficiar das informações fornecidas em nossa apresentação. Os tópicos abordados podem incluir feeds de dados, sistemas de entrada de pedidos, design de servidor, design de hardware, design de rede, protocolos, design e desenvolvimento de software, gerenciamento de projetos, orçamento de projetos e qualquer outra coisa que você gostaria de discutir. Ver o filme de demonstração Ver capturas de telaMultiCharts 10 MultiCharts é uma plataforma de negociação vencedora de prêmios Se você precisa de software de troca diária ou você investir por períodos mais longos, o MultiCharts possui recursos que podem ajudar a alcançar seus objetivos comerciais. Gráficos de alta definição, indicadores e estratégias integrados, negociação com um clique do gráfico e DOM, backtesting de alta precisão, otimização da força bruta e genética, execução automatizada e suporte para scripts EasyLanguage são ferramentas-chave à sua disposição. Hoice de corretores e feeds de dados A liberdade de escolha tem sido a idéia motriz por trás de nossos MultiCharts e você pode vê-lo na ampla escolha de feeds de dados suportados e corretores. Escolha o seu método de negociação, teste-o e comece a negociar com qualquer corretor suportado que você gosta thats a vantagem de MultiCharts. Best linguagem de programação para Algorithmic Trading Systems Uma das perguntas mais freqüentes que recebo no mailbag QS é Qual é a melhor linguagem de programação para Negociação algorítmica. A resposta curta é que não há melhor linguagem. Parâmetros de estratégia, desempenho, modularidade, desenvolvimento, resiliência e custo devem ser considerados. Este artigo descreverá os componentes necessários de uma arquitetura de sistema de negociação algorítmica e como as decisões relativas à implementação afetam a escolha da linguagem. Em primeiro lugar, serão consideradas as principais componentes de um sistema de negociação algorítmica, tais como ferramentas de pesquisa, otimizador de portfólio, gerenciador de risco e mecanismo de execução. Posteriormente, diferentes estratégias de negociação serão examinadas e como elas afetam a concepção do sistema. Em particular, a frequência das negociações e o provável volume de transacções serão discutidos. Uma vez que a estratégia de negociação foi selecionada, é necessário arquitetar todo o sistema. Isso inclui a escolha do hardware, do (s) sistema (s) operacional (is) e da resiliência do sistema contra eventos raros, potencialmente catastróficos. Enquanto a arquitetura está sendo considerada, devemos ter devidamente em conta o desempenho - tanto para as ferramentas de pesquisa como para o ambiente de execução ao vivo. O que é o sistema de negociação tentando fazer Antes de decidir sobre o melhor idioma com o qual escrever um sistema de negociação automatizado é necessário definir os requisitos. Será que o sistema vai ser puramente baseado em execução Será que o sistema requer uma gestão de risco ou módulo de construção de carteira O sistema exigirá um backtester de alto desempenho Para a maioria das estratégias do sistema de negociação pode ser dividido em duas categorias: Pesquisa e geração de sinal. A pesquisa se preocupa com a avaliação do desempenho de uma estratégia em relação aos dados históricos. O processo de avaliação de uma estratégia de negociação sobre dados de mercado anteriores é conhecido como backtesting. O tamanho dos dados ea complexidade algorítmica terão um grande impacto na intensidade computacional do backtester. A velocidade ea simultaneidade da CPU são muitas vezes os fatores limitantes na otimização da velocidade de execução da pesquisa. Geração de sinal está preocupado com a geração de um conjunto de sinais de negociação a partir de um algoritmo e enviar tais ordens para o mercado, geralmente através de uma corretora. Para certas estratégias é necessário um alto nível de desempenho. As questões de E / S, como a largura de banda ea latência da rede, são freqüentemente o fator limitante na otimização de sistemas de execução. Assim, a escolha das linguagens para cada componente de todo o seu sistema pode ser bastante diferente. Tipo, Frequência e Volume da Estratégia O tipo de estratégia algorítmica empregada terá um impacto substancial na concepção do sistema. Será necessário considerar os mercados que estão sendo negociados, a conectividade com fornecedores de dados externos, a freqüência e o volume da estratégia, o trade-off entre facilidade de desenvolvimento e otimização de desempenho, bem como qualquer hardware personalizado, Servidores, GPUs ou FPGAs que possam ser necessários. As escolhas tecnológicas para uma estratégia de ações de baixa freqüência nos EUA serão muito diferentes das de uma estratégia de arbitragem estatística de alta freqüência negociada no mercado de futuros. Antes da escolha da linguagem muitos fornecedores de dados devem ser avaliados que pertencem a uma estratégia em mãos. Será necessário considerar a conectividade com o fornecedor, a estrutura de qualquer API, a oportunidade dos dados, os requisitos de armazenamento e a resiliência em face de um fornecedor ficar offline. É também aconselhável possuir acesso rápido a vários fornecedores. Vários instrumentos têm todos os seus próprios caprichos de armazenamento, exemplos dos quais incluem múltiplos símbolos de ticker para ações e datas de vencimento para futuros (sem mencionar quaisquer dados OTC específicos). Isso precisa ser incorporado ao design da plataforma. Freqüência da estratégia é provável que seja um dos maiores drivers de como a pilha de tecnologia será definida. Estratégias empregando dados com mais freqüência do que minuciosamente ou barras de segunda necessidade significativa consideração no que diz respeito ao desempenho. Uma estratégia que ultrapassa as barras secundárias (isto é, dados de carraça) conduz a um design conduzido pelo desempenho como requisito primário. Para estratégias de alta freqüência, uma quantidade substancial de dados de mercado precisará ser armazenada e avaliada. Software como HDF5 ou kdb são comumente usados para essas funções. Para processar os volumes extensos de dados necessários para aplicações HFT, um backtester extensivamente otimizado e sistema de execução deve ser usado. CC (possivelmente com algum montador) é provável que o candidato linguagem mais forte. As estratégias de freqüência ultra-alta quase certamente exigirão hardware personalizado, como FPGAs, troca de co-location e kernalnetwork interface tuning. Sistemas de pesquisa Os sistemas de pesquisa normalmente envolvem uma mistura de desenvolvimento interativo e scripts automatizados. O primeiro ocorre frequentemente dentro de um IDE, como Visual Studio, MatLab ou R Studio. Este último envolve cálculos numéricos extensos sobre vários parâmetros e pontos de dados. Isso leva a uma escolha de linguagem proporcionando um ambiente simples para testar o código, mas também fornece desempenho suficiente para avaliar estratégias em várias dimensões de parâmetro. IDEs típicos neste espaço incluem Microsoft Visual CC, que contém utilitários de depuração extensa, capacidades de conclusão de código (via Intellisense) e vistas gerais diretas de toda a pilha de projeto (via o banco de dados ORM, LINQ) MatLab. Que é projetado para a álgebra linear numerosa extensa e operações vectorized, mas em uma maneira console interativa R Studio. Que envolve o console de linguagem estatística R em um Edi IDE Eclipse totalmente desenvolvido para Linux Java e C e IDEs semi-proprietários como Enthought Canopy para Python, que incluem bibliotecas de análise de dados como NumPy. SciPy. Scikit-learn e pandas em um único ambiente interativo (console). Para backtesting numérico, todos os idiomas acima são adequados, embora não seja necessário utilizar uma GUIIDE como o código será executado em segundo plano. A principal consideração nesta fase é a da velocidade de execução. Uma linguagem compilada (como C) é frequentemente útil se as dimensões do parâmetro backtesting forem grandes. Lembre-se que é necessário ter cuidado com esses sistemas, se for esse o caso linguagens interpretadas como Python muitas vezes fazem uso de bibliotecas de alto desempenho, como NumPypandas para o backtesting passo, a fim de manter um grau razoável de competitividade com equivalentes compilados. Em última análise, o idioma escolhido para o backtesting será determinado por necessidades específicas algorítmicas, bem como a gama de bibliotecas disponíveis no idioma (mais sobre isso abaixo). No entanto, a linguagem utilizada para o backtester e ambientes de pesquisa pode ser completamente independente daqueles usados nos componentes de construção de portfólio, gerenciamento de risco e execução, como será visto. Construção de Portfólio e Gerenciamento de Risco Os componentes de construção de carteira e gerenciamento de risco são freqüentemente ignorados por comerciantes de algoritmos de varejo. Isso é quase sempre um erro. Essas ferramentas fornecem o mecanismo pelo qual o capital será preservado. Eles não só tentam aliviar o número de apostas arriscadas, mas também minimizar o churn das próprias operações, reduzindo os custos de transação. Versões sofisticadas desses componentes podem ter um efeito significativo na qualidade e consistência da lucratividade. É fácil criar um estável de estratégias como o mecanismo de construção de carteira e gerente de risco pode ser facilmente modificado para lidar com vários sistemas. Assim, eles devem ser considerados componentes essenciais no início do projeto de um sistema de negociação algorítmica. O trabalho do sistema de construção de carteira é levar um conjunto de negócios desejados e produzir o conjunto de negócios reais que minimizam churn, manter exposições a vários fatores (como setores, classes de ativos, volatilidade etc) e otimizar a alocação de capital para vários Estratégias em um portfólio. A construção da carteira reduz-se frequentemente a um problema linear da álgebra (tal como uma factorização da matriz) e conseqüentemente o desempenho é altamente dependente da eficácia da execução numérica da álgebra linear disponível. As bibliotecas comuns incluem uBLAS. LAPACK e NAG para C. MatLab também possui operações de matriz amplamente otimizadas. Python utiliza NumPySciPy para tais computações. Uma carteira freqüentemente reequilibrada exigirá uma biblioteca de matriz compilada (e bem otimizada) para levar essa etapa para fora, de modo a não encolher o sistema de negociação. A gestão de risco é outra parte extremamente importante de um sistema de negociação algorítmica. O risco pode vir de várias formas: Aumento da volatilidade (embora isso possa ser visto como desejável para certas estratégias), aumento de correlações entre classes de ativos, padrão de contraparte, interrupções de servidores, eventos de cisne preta e bugs não detectados no código de negociação poucos. Os componentes de gerenciamento de risco tentam antecipar os efeitos da volatilidade excessiva e correlação entre as classes de ativos e seus efeitos subseqüentes sobre o capital comercial. Muitas vezes isso se reduz a um conjunto de cálculos estatísticos, como testes de estresse de Monte Carlo. Isso é muito semelhante às necessidades computacionais de um mecanismo de determinação de preços de derivados e, como tal, será ligado à CPU. Essas simulações são altamente paralelas (ver abaixo) e, até certo ponto, é possível lançar hardware no problema. Sistemas de Execução O trabalho do sistema de execução é receber sinais de negociação filtrada dos componentes de construção de carteira e gerenciamento de risco e enviá-los para uma corretora ou outros meios de acesso ao mercado. Para a maioria das estratégias de negociação de algoritmos de varejo, isso envolve uma conexão API ou FIX para uma corretora, como Interactive Brokers. As principais considerações ao decidir sobre uma linguagem incluem a qualidade da API, a disponibilidade do wrapper de linguagem para uma API, a freqüência de execução ea antecipação do deslizamento. A qualidade da API refere-se a quão bem documentada é, que tipo de desempenho fornece, se ele precisa de software autônomo para ser acessado ou se um gateway pode ser estabelecido de uma forma sem cabeça (ou seja, sem GUI). No caso de Interactive Brokers, a ferramenta Trader WorkStation precisa estar em execução em um ambiente GUI para acessar sua API. Uma vez eu tive que instalar uma edição Desktop Ubuntu em um servidor de nuvem Amazon para acessar Interactive Brokers remotamente, puramente por esta razão A maioria das APIs irá fornecer uma interface C andor Java. Normalmente, é a comunidade que desenvolve invólucros específicos de linguagem para C, Python, R, Excel e MatLab. Observe que com cada plugin adicional utilizado (especialmente API wrappers) há espaço para bugs a fluência no sistema. Sempre testar plugins desse tipo e garantir que eles sejam mantidos ativamente. Um indicador valioso é ver quantas novas atualizações de um codebase foram feitas nos últimos meses. A freqüência de execução é de extrema importância no algoritmo de execução. Observe que centenas de pedidos podem ser enviados a cada minuto e, como tal, o desempenho é crítico. Slippage será incorrido através de um sistema de execução mal executando e isso terá um impacto dramático sobre a rentabilidade. Linguagens estaticamente tipadas (veja abaixo), como CJava, geralmente são ótimas para execução, mas há um trade-off no tempo de desenvolvimento, teste e facilidade de manutenção. As linguagens de tipo dinâmico, como Python e Perl, são agora geralmente suficientemente rápidas. Certifique-se sempre de que os componentes são projetados de forma modular (veja abaixo) para que possam ser trocados para fora à medida que o sistema é escalado. Processo de Planejamento e Desenvolvimento Arquitetônico Os componentes de um sistema de negociação, suas necessidades de freqüência e volume foram discutidos acima, mas a infra-estrutura do sistema ainda não foi coberta. Aqueles que atuam como um comerciante de varejo ou trabalhando em um pequeno fundo provavelmente será usando muitos chapéus. Será necessário estar cobrindo o modelo alfa, os parâmetros de gerenciamento e execução de riscos, e também a implementação final do sistema. Antes de aprofundar em linguagens específicas o projeto de uma arquitetura de sistema ideal será discutido. Separação de preocupações Uma das decisões mais importantes que devem ser tomadas no início é como separar as preocupações de um sistema de comércio. No desenvolvimento de software, isso significa essencialmente como quebrar os diferentes aspectos do sistema de comércio em componentes modulares separados. Ao expor as interfaces em cada um dos componentes, é fácil trocar partes do sistema por outras versões que auxiliem o desempenho, a confiabilidade ou a manutenção, sem modificar nenhum código de dependência externa. Esta é a melhor prática para esses sistemas. Para estratégias em freqüências mais baixas tais práticas são aconselhadas. Para a negociação de freqüência ultra alta o livro de regras pode ter que ser ignorado à custa de ajustar o sistema para ainda mais desempenho. Um sistema mais fortemente acoplado pode ser desejável. A criação de um mapa de componentes de um sistema de negociação algorítmico vale um artigo em si. No entanto, uma abordagem ótima é certificar-se de que há componentes separados para as entradas de dados históricos e em tempo real do mercado, armazenamento de dados, API de acesso a dados, backtester, parâmetros de estratégia, construção de portfólio, gerenciamento de riscos e sistemas de execução automatizada. Por exemplo, se o armazenamento de dados que está sendo usado está underperforming, até mesmo em níveis significativos de otimização, ele pode ser trocado com rewrites mínimo para a ingesta de dados ou API de acesso a dados. Tanto quanto o backtestter e componentes subsequentes estão em causa, não há diferença. Outro benefício de componentes separados é que ele permite que uma variedade de linguagens de programação para ser usado no sistema global. Não é necessário restringir-se a uma única língua se o método de comunicação dos componentes for independente da linguagem. Este será o caso se eles estão se comunicando via TCPIP, ZeroMQ ou algum outro protocolo independente de linguagem. Como exemplo concreto, considere o caso de um sistema de backtesting sendo escrito em C para o desempenho de crunching de números, enquanto o gerenciador de portfólio e sistemas de execução são escritos em Python usando SciPy e IBPy. Considerações sobre Desempenho O desempenho é uma consideração significativa para a maioria das estratégias de negociação. Para as estratégias de freqüência mais alta, é o fator mais importante. Desempenho cobre uma ampla gama de problemas, tais como velocidade de execução algorítmica, latência de rede, largura de banda, IO de dados, paralelismo de concorrência e dimensionamento. Cada uma dessas áreas são cobertas individualmente por grandes livros didáticos, portanto, este artigo apenas arranhará a superfície de cada tópico. A arquitetura ea escolha da língua serão agora discutidas em termos de seus efeitos sobre o desempenho. A sabedoria predominante como afirmado por Donald Knuth. Um dos pais da Ciência da Computação, é que a otimização prematura é a raiz de todo o mal. Isso é quase sempre o caso - exceto quando se constrói um algoritmo de negociação de alta freqüência Para aqueles que estão interessados em estratégias de baixa freqüência, uma abordagem comum é construir um sistema da maneira mais simples possível e apenas otimizar como gargalos começam a aparecer. As ferramentas de criação de perfil são usadas para determinar onde surgem gargalos. Perfis podem ser feitos para todos os fatores listados acima, em um ambiente MS Windows ou Linux. Existem muitas ferramentas de sistema operacional e linguagem disponíveis para fazê-lo, bem como utilitários de terceiros. A escolha da língua será agora discutida no contexto do desempenho. C, Java, Python, R e MatLab contêm bibliotecas de alto desempenho (tanto como parte de seu padrão ou externamente) para estrutura de dados básicos e trabalho algorítmico. C é fornecido com a Biblioteca de modelos padrão, enquanto o Python contém NumPySciPy. Tarefas matemáticas comuns são encontradas nessas bibliotecas e raramente é benéfico escrever uma nova implementação. Uma exceção é se a arquitetura de hardware altamente personalizada é necessária e um algoritmo está fazendo uso extensivo de extensões proprietárias (como caches personalizados). No entanto, muitas vezes reinvenção da roda desperdiça tempo que poderia ser melhor gasto desenvolvendo e otimizando outras partes da infra-estrutura de negociação. Tempo de desenvolvimento é extremamente precioso, especialmente no contexto de desenvolvedores exclusivos. A latência é muitas vezes uma questão do sistema de execução, uma vez que as ferramentas de pesquisa estão normalmente situadas na mesma máquina. Para o primeiro, latência pode ocorrer em vários pontos ao longo do caminho de execução. Os bancos de dados devem ser consultados (latência de disknetwork), os sinais devem ser gerados (sistema operacional, latência de mensagens kernal), sinais comerciais enviados (latência NIC) e pedidos processados (latência interna dos sistemas de troca). Para operações de freqüência mais alta, é necessário tornar-se intimamente familiarizado com otimização kernal, bem como otimização da transmissão em rede. Esta é uma área profunda e está significativamente além do escopo do artigo, mas se um algoritmo UHFT é desejado, em seguida, estar ciente da profundidade do conhecimento necessário Caching é muito útil no kit de ferramentas de um desenvolvedor de negociação quantitativa. O cache refere-se ao conceito de armazenar dados acessados com frequência de uma forma que permite um acesso de melhor desempenho, à custa da potencial indisponibilidade dos dados. Um caso de uso comum ocorre no desenvolvimento da web ao tirar dados de um banco de dados relacional com suporte a disco e colocá-lo na memória. Quaisquer solicitações subseqüentes para os dados não precisam acertar o banco de dados e, portanto, os ganhos de desempenho podem ser significativos. Para situações de negociação cache pode ser extremamente benéfico. Por exemplo, o estado atual de um portfólio de estratégia pode ser armazenado em um cache até que ele seja reequilibrado, de modo que a lista não precisa ser regenerada em cada loop do algoritmo de negociação. Tal regeneração é provável que seja uma CPU alta ou operação de E / S de disco. No entanto, o cache não é sem seus próprios problemas. A regeneração de dados de cache de uma só vez, devido à natureza volátil do armazenamento em cache, pode colocar uma demanda significativa na infra-estrutura. Outra questão é dog-piling. Onde várias gerações de uma nova cópia de cache são executadas sob carga extremamente alta, o que leva a uma falha em cascata. A alocação dinâmica de memória é uma operação cara na execução do software. Portanto, é imperativo que aplicativos de negociação de maior desempenho estejam bem conscientes de como a memória está sendo alocada e desalocada durante o fluxo do programa. Padrões de linguagem mais recentes, como Java, C e Python, todos executam a coleta automática de lixo. Que se refere à desalocação da memória alocada dinamicamente quando os objetos saem do escopo. A coleta de lixo é extremamente útil durante o desenvolvimento, pois reduz os erros e facilita a legibilidade. No entanto, muitas vezes é sub-ideal para certas estratégias de negociação de alta freqüência. A coleta de lixo personalizada é freqüentemente desejada para esses casos. Em Java, por exemplo, ajustando o coletor de lixo ea configuração de heap, é possível obter alto desempenho para estratégias HFT. C não fornece um coletor de lixo nativo e, portanto, é necessário manipular toda a atribuição de alocação de memória como parte de uma implementação de objetos. Embora potencialmente propenso a erros (potencialmente levando a ponteiros pendentes) é extremamente útil ter controle de grão fino de como objetos aparecem no heap para determinadas aplicações. Ao escolher um idioma, certifique-se de estudar como o coletor de lixo funciona e se ele pode ser modificado para otimizar para um caso de uso particular. Muitas operações em sistemas de negociação algorítmicos são passíveis de paralelização. Isto refere-se ao conceito de realizar operações programáticas múltiplas ao mesmo tempo, isto é, em paralelo. Os chamados algoritmos embarassingly paralelos incluem etapas que podem ser calculadas de forma totalmente independente de outras etapas. Certas operações estatísticas, tais como simulações de Monte Carlo, são um bom exemplo de algoritmos embarassingly paralelos como cada desenho aleatório e operação de caminho subsequente pode ser computado sem o conhecimento de outros caminhos. Outros algoritmos são apenas parcialmente paralelizáveis. As simulações de dinâmica de fluidos são um exemplo, onde o domínio de computação pode ser subdividido, mas, em última instância, esses domínios devem se comunicar uns com os outros e, portanto, as operações são parcialmente sequenciais. Algoritmos paralelizáveis estão sujeitos à Lei Amdahls. Que proporciona um limite superior teórico para o aumento de desempenho de um algoritmo paralelizado quando sujeito a N processos separados (por exemplo, num núcleo de CPU ou thread). A paralelização tornou-se cada vez mais importante como um meio de otimização, uma vez que as velocidades do clock do processador estagnaram, pois os processadores mais recentes contêm muitos núcleos com os quais realizar cálculos paralelos. A ascensão de hardware gráfico de consumo (predominantemente para jogos de vídeo) levou ao desenvolvimento de Unidades de Processamento Gráfico (GPUs), que contêm centenas de núcleos para operações altamente concorrentes. Essas GPUs são agora muito acessíveis. Estruturas de alto nível, como a Nvidias CUDA, têm levado à adoção generalizada na academia e nas finanças. Esse hardware GPU geralmente é adequado apenas para o aspecto de pesquisa de finanças quantitativas, enquanto outros hardware mais especializados (incluindo Field-Programmable Gate Arrays - FPGAs) são usados para (U) HFT. Hoje em dia, a maioria dos langauges modernos suportam um grau de simultaneidademultithreading. Assim, é fácil otimizar um backtester, uma vez que todos os cálculos são geralmente independentes dos outros. Escala em engenharia de software e operações refere-se à capacidade do sistema para lidar consistentemente aumentando cargas na forma de solicitações maiores, maior uso do processador e mais alocação de memória. Na negociação algorítmica uma estratégia é capaz de escalar se ele pode aceitar grandes quantidades de capital e ainda produzir retornos consistentes. A pilha de tecnologia de negociação escalas se ele pode suportar maiores volumes de comércio e aumento da latência, sem gargalos. Enquanto os sistemas devem ser projetados para escalar, muitas vezes é difícil prever antecipadamente onde um gargalo irá ocorrer. Rigorosa exploração madeireira, testes, perfil e monitoramento vai ajudar muito em permitir que um sistema de escala. As próprias línguas são muitas vezes descritas como não escaláveis. Isso geralmente é o resultado de desinformação, ao invés de fato duro. É a pilha de tecnologia total que deve ser determinada para escalabilidade, não a linguagem. Claramente certas línguas têm um desempenho maior do que outras em casos de uso específicos, mas uma língua nunca é melhor que outra em todos os sentidos. Um meio de gerenciar a escala é separar preocupações, como mencionado acima. A fim de introduzir adicionalmente a capacidade de lidar com picos no sistema (isto é, volatilidade súbita que desencadeia uma série de negócios), é útil criar uma arquitectura de enfileiramento de mensagens. Isso significa simplesmente colocar um sistema de fila de mensagens entre componentes para que os pedidos sejam empilhados se um determinado componente não conseguir processar muitos pedidos. Ao invés de solicitações sendo perdidas eles são simplesmente mantidos em uma pilha até que a mensagem é tratada. Isso é particularmente útil para enviar comércios para um mecanismo de execução. Se o motor está sofrendo sob latência pesada, então ele vai fazer o backup de comércios. Uma fila entre o gerador de sinal de comércio e a API de execução aliviará esta questão à custa de uma potencial desvalorização do comércio. Um corretor de fila de mensagens de código aberto bem respeitado é RabbitMQ. Hardware e sistemas operacionais O hardware que executa sua estratégia pode ter um impacto significativo na rentabilidade do seu algoritmo. Este não é um problema restrito aos comerciantes de alta freqüência também. Uma má escolha em hardware e sistema operacional pode levar a uma máquina falhar ou reiniciar no momento mais inoportuno. Assim, é necessário considerar onde sua aplicação vai residir. A escolha é geralmente entre uma máquina desktop pessoal, um servidor remoto, um provedor de nuvem ou um servidor co-localizado de troca. As máquinas de mesa são simples de instalar e administrar, especialmente com os sistemas operacionais mais recentes, como o Windows 78, Mac OSX e Ubuntu. Os sistemas desktop possuem, no entanto, algumas desvantagens significativas. O principal é que as versões de sistemas operacionais projetados para máquinas desktop provavelmente exigirão rebootspatching (e muitas vezes no pior dos casos). Eles também usam mais recursos computacionais pela virtude de exigir uma interface gráfica com o usuário (GUI). A utilização de hardware em um ambiente doméstico (ou local) pode levar a conectividade com a internet e problemas de tempo de atividade. O principal benefício de um sistema desktop é que a potência computacional significativa pode ser comprada para a fração do custo de um servidor dedicado remoto (ou sistema baseado em nuvem) de velocidade comparável. Um servidor dedicado ou uma máquina baseada em nuvem, embora muitas vezes mais cara do que uma opção de desktop, permite uma infra-estrutura de redundância mais significativa, como backups de dados automatizados, a capacidade de garantir mais facilmente o tempo de atividade e o monitoramento remoto. Eles são mais difíceis de administrar, pois requerem a capacidade de usar recursos de login remoto do sistema operacional. No Windows isso geralmente é via o GUI Remote Desktop Protocol (RDP). Em sistemas baseados em Unix, a linha de comando Secure SHell (SSH) é usada. A infraestrutura de servidor baseada em Unix é quase sempre baseada em linha de comando, o que imediatamente torna inutilizáveis ferramentas de programação baseadas em GUI (como MatLab ou Excel). Um servidor co-localizado, como a frase é usada nos mercados de capital, é simplesmente um servidor dedicado que reside dentro de uma troca, a fim de reduzir a latência do algoritmo de negociação. Isso é absolutamente necessário para certas estratégias de negociação de alta freqüência, que dependem de baixa latência para gerar alfa. O aspecto final para a escolha de hardware ea escolha da linguagem de programação é independência de plataforma. Existe uma necessidade para o código para executar em vários sistemas operacionais diferentes É o código projetado para ser executado em um determinado tipo de arquitetura de processador, como o Intel x86x64 ou será possível executar em processadores RISC, como aqueles fabricados pela ARM Estas questões serão altamente dependentes da frequência e do tipo de estratégia a ser implementada. Resilience and Testing One of the best ways to lose a lot of money on algorithmic trading is to create a system with no resiliency . This refers to the durability of the sytem when subject to rare events, such as brokerage bankruptcies, sudden excess volatility, region-wide downtime for a cloud server provider or the accidental deletion of an entire trading database. Years of profits can be eliminated within seconds with a poorly-designed architecture. It is absolutely essential to consider issues such as debuggng, testing, logging, backups, high-availability and monitoring as core components of your system. It is likely that in any reasonably complicated custom quantitative trading application at least 50 of development time will be spent on debugging, testing and maintenance. Nearly all programming languages either ship with an associated debugger or possess well-respected third-party alternatives. In essence, a debugger allows execution of a program with insertion of arbitrary break points in the code path, which temporarily halt execution in order to investigate the state of the system. The main benefit of debugging is that it is possible to investigate the behaviour of code prior to a known crash point . Debugging is an essential component in the toolbox for analysing programming errors. However, they are more widely used in compiled languages such as C or Java, as interpreted languages such as Python are often easier to debug due to fewer LOC and less verbose statements. Despite this tendency Python does ship with the pdb. which is a sophisticated debugging tool. The Microsoft Visual C IDE possesses extensive GUI debugging utilities, while for the command line Linux C programmer, the gdb debugger exists. Testing in software development refers to the process of applying known parameters and results to specific functions, methods and objects within a codebase, in order to simulate behaviour and evaluate multiple code-paths, helping to ensure that a system behaves as it should. A more recent paradigm is known as Test Driven Development (TDD), where test code is developed against a specified interface with no implementation. Prior to the completion of the actual codebase all tests will fail. As code is written to fill in the blanks, the tests will eventually all pass, at which point development should cease. TDD requires extensive upfront specification design as well as a healthy degree of discipline in order to carry out successfully. In C, Boost provides a unit testing framework. In Java, the JUnit library exists to fulfill the same purpose. Python also has the unittest module as part of the standard library. Many other languages possess unit testing frameworks and often there are multiple options. In a production environment, sophisticated logging is absolutely essential. Logging refers to the process of outputting messages, with various degrees of severity, regarding execution behaviour of a system to a flat file or database. Logs are a first line of attack when hunting for unexpected program runtime behaviour. Unfortunately the shortcomings of a logging system tend only to be discovered after the fact As with backups discussed below, a logging system should be given due consideration BEFORE a system is designed. Both Microsoft Windows and Linux come with extensive system logging capability and programming languages tend to ship with standard logging libraries that cover most use cases. It is often wise to centralise logging information in order to analyse it at a later date, since it can often lead to ideas about improving performance or error reduction, which will almost certainly have a positive impact on your trading returns. While logging of a system will provide information about what has transpired in the past, monitoring of an application will provide insight into what is happening right now . All aspects of the system should be considered for monitoring. System level metrics such as disk usage, available memory, network bandwidth and CPU usage provide basic load information. Trading metrics such as abnormal pricesvolume, sudden rapid drawdowns and account exposure for different sectorsmarkets should also be continuously monitored. Further, a threshold system should be instigated that provides notification when certain metrics are breached, elevating the notification method (email, SMS, automated phone call) depending upon the severity of the metric. System monitoring is often the domain of the system administrator or operations manager. However, as a sole trading developer, these metrics must be established as part of the larger design. Many solutions for monitoring exist: proprietary, hosted and open source, which allow extensive customisation of metrics for a particular use case. Backups and high availability should be prime concerns of a trading system. Consider the following two questions: 1) If an entire production database of market data and trading history was deleted (without backups) how would the research and execution algorithm be affected 2) If the trading system suffers an outage for an extended period (with open positions) how would account equity and ongoing profitability be affected The answers to both of these questions are often sobering It is imperative to put in place a system for backing up data and also for testing the restoration of such data. Many individuals do not test a restore strategy. If recovery from a crash has not been tested in a safe environment, what guarantees exist that restoration will be available at the worst possible moment Similarly, high availability needs to be baked in from the start. Redundant infrastructure (even at additional expense) must always be considered, as the cost of downtime is likely to far outweigh the ongoing maintenance cost of such systems. I wont delve too deeply into this topic as it is a large area, but make sure it is one of the first considerations given to your trading system. Choosing a Language Considerable detail has now been provided on the various factors that arise when developing a custom high-performance algorithmic trading system. The next stage is to discuss how programming languages are generally categorised. Type Systems When choosing a language for a trading stack it is necessary to consider the type system . The languages which are of interest for algorithmic trading are either statically - or dynamically-typed . A statically-typed language performs checks of the types (e. g. integers, floats, custom classes etc) during the compilation process. Such languages include C and Java. A dynamically-typed language performs the majority of its type-checking at runtime. Such languages include Python, Perl and JavaScript. For a highly numerical system such as an algorithmic trading engine, type-checking at compile time can be extremely beneficial, as it can eliminate many bugs that would otherwise lead to numerical errors. However, type-checking doesnt catch everything, and this is where exception handling comes in due to the necessity of having to handle unexpected operations. Dynamic languages (i. e. those that are dynamically-typed) can often lead to run-time errors that would otherwise be caught with a compilation-time type-check. For this reason, the concept of TDD (see above) and unit testing arose which, when carried out correctly, often provides more safety than compile-time checking alone. Another benefit of statically-typed languages is that the compiler is able to make many optimisations that are otherwise unavailable to the dynamically - typed language, simply because the type (and thus memory requirements) are known at compile-time. In fact, part of the inefficiency of many dynamically-typed languages stems from the fact that certain objects must be type-inspected at run-time and this carries a performance hit. Libraries for dynamic languages, such as NumPySciPy alleviate this issue due to enforcing a type within arrays. Open Source or Proprietary One of the biggest choices available to an algorithmic trading developer is whether to use proprietary (commercial) or open source technologies. There are advantages and disadvantages to both approaches. It is necessary to consider how well a language is supported, the activity of the community surrounding a language, ease of installation and maintenance, quality of the documentation and any licensingmaintenance costs. The Microsoft stack (including Visual C, Visual C) and MathWorks MatLab are two of the larger proprietary choices for developing custom algorithmic trading software. Both tools have had significant battle testing in the financial space, with the former making up the predominant software stack for investment banking trading infrastructure and the latter being heavily used for quantitative trading research within investment funds. Microsoft and MathWorks both provide extensive high quality documentation for their products. Further, the communities surrounding each tool are very large with active web forums for both. The software allows cohesive integration with multiple languages such as C, C and VB, as well as easy linkage to other Microsoft products such as the SQL Server database via LINQ. MatLab also has many pluginslibraries (some free, some commercial) for nearly any quantitative research domain. There are also drawbacks. With either piece of software the costs are not insignificant for a lone trader (although Microsoft does provide entry-level version of Visual Studio for free). Microsoft tools play well with each other, but integrate less well with external code. Visual Studio must also be executed on Microsoft Windows, which is arguably far less performant than an equivalent Linux server which is optimally tuned. MatLab also lacks a few key plugins such as a good wrapper around the Interactive Brokers API, one of the few brokers amenable to high-performance algorithmic trading. The main issue with proprietary products is the lack of availability of the source code. This means that if ultra performance is truly required, both of these tools will be far less attractive. Open source tools have been industry grade for sometime. Much of the alternative asset space makes extensive use of open-source Linux, MySQLPostgreSQL, Python, R, C and Java in high-performance production roles. However, they are far from restricted to this domain. Python and R, in particular, contain a wealth of extensive numerical libraries for performing nearly any type of data analysis imaginable, often at execution speeds comparable to compiled languages, with certain caveats. The main benefit of using interpreted languages is the speed of development time. Python and R require far fewer lines of code (LOC) to achieve similar functionality, principally due to the extensive libraries. Further, they often allow interactive console based development, rapidly reducing the iterative development process. Given that time as a developer is extremely valuable, and execution speed often less so (unless in the HFT space), it is worth giving extensive consideration to an open source technology stack. Python and R possess significant development communities and are extremely well supported, due to their popularity. Documentation is excellent and bugs (at least for core libraries) remain scarce. Open source tools often suffer from a lack of a dedicated commercial support contract and run optimally on systems with less-forgiving user interfaces. A typical Linux server (such as Ubuntu) will often be fully command-line oriented. In addition, Python and R can be slow for certain execution tasks. There are mechanisms for integrating with C in order to improve execution speeds, but it requires some experience in multi-language programming. While proprietary software is not immune from dependencyversioning issues it is far less common to have to deal with incorrect library versions in such environments. Open source operating systems such as Linux can be trickier to administer. I will venture my personal opinion here and state that I build all of my trading tools with open source technologies. In particular I use: Ubuntu, MySQL, Python, C and R. The maturity, community size, ability to dig deep if problems occur and lower total cost ownership (TCO) far outweigh the simplicity of proprietary GUIs and easier installations. Having said that, Microsoft Visual Studio (especially for C) is a fantastic Integrated Development Environment (IDE) which I would also highly recommend. Batteries Included The header of this section refers to the out of the box capabilities of the language - what libraries does it contain and how good are they This is where mature languages have an advantage over newer variants. C, Java and Python all now possess extensive libraries for network programming, HTTP, operating system interaction, GUIs, regular expressions (regex), iteration and basic algorithms. C is famed for its Standard Template Library (STL) which contains a wealth of high performance data structures and algorithms for free. Python is known for being able to communicate with nearly any other type of systemprotocol (especially the web), mostly through its own standard library. R has a wealth of statistical and econometric tools built in, while MatLab is extremely optimised for any numerical linear algebra code (which can be found in portfolio optimisation and derivatives pricing, for instance). Outside of the standard libraries, C makes use of the Boost library, which fills in the missing parts of the standard library. In fact, many parts of Boost made it into the TR1 standard and subsequently are available in the C11 spec, including native support for lambda expressions and concurrency. Python has the high performance NumPySciPyPandas data analysis library combination, which has gained widespread acceptance for algorithmic trading research. Further, high-performance plugins exist for access to the main relational databases, such as MySQL (MySQLC), JDBC (JavaMatLab), MySQLdb (MySQLPython) and psychopg2 (PostgreSQLPython). Python can even communicate with R via the RPy plugin An often overlooked aspect of a trading system while in the initial research and design stage is the connectivity to a broker API. Most APIs natively support C and Java, but some also support C and Python, either directly or with community-provided wrapper code to the C APIs. In particular, Interactive Brokers can be connected to via the IBPy plugin. If high-performance is required, brokerages will support the FIX protocol . Conclusion As is now evident, the choice of programming language(s) for an algorithmic trading system is not straightforward and requires deep thought. The main considerations are performance, ease of development, resiliency and testing, separation of concerns, familiarity, maintenance, source code availability, licensing costs and maturity of libraries. The benefit of a separated architecture is that it allows languages to be plugged in for different aspects of a trading stack, as and when requirements change. A trading system is an evolving tool and it is likely that any language choices will evolve along with it. Just Getting Started with Quantitative Trading