MetaTrader vs TradeStation: Uma comparação de linguagem por Michael R. Bryant Qualquer pessoa que negocia ativamente forex provavelmente já ouviu falar de MetaTrader. Eles afirmam ter mais de meio milhão de usuários para as versões móveis de suas plataformas de negociação MT4 e MT5. Em resposta a pedidos dos usuários do MetaTrader, eu tenho trabalhado na adição de MetaTrader 4 (MT4) saída para Adaptrade Builder. Ao concluir a documentação para o novo recurso de saída de código MT4 no Builder, pensei que seria um bom momento para discutir algumas das maneiras pelas quais a linguagem de programação MT4, chamada MQL4, difere da linguagem de programação TradeStations, chamada EasyLanguage. Se você é um comerciante sistemático interessado em negociação forex e havent ainda escolhido uma plataforma de negociação, ou você está pensando em mudar de uma plataforma para a outra, há algumas coisas que você deve saber sobre as duas linguagens de script. Se você está apenas aprendendo sobre MetaTrader, você pode perguntar por que sua plataforma tão popular. Na minha opinião, é um resultado de vários fatores. Primeiro, a plataforma é livre. Você pode baixar o software e obter gratuitamente dados forex como parte da plataforma, sem nenhum custo. A plataforma inclui todos os principais símbolos de forex e, depois de se inscrever para uma conta de demonstração gratuita, os dados são atualizados em tempo real. Além disso, a linguagem de script MetaTrader 4, MQL4, é parte integrante da plataforma. Você pode usar MQL4 para escrever indicadores, quotscriptsquot (código para executar funções específicas mediante solicitação) e quotexpert advisors (EAs) quot (estratégias de negociação). A linguagem MQL4, como discutido abaixo, é muito versátil e faz MT4, como TradeStation, uma plataforma extensível. Há uma comunidade ativa de usuários MT4 que contribuem com indicadores e EAs para o fórum MT4. A plataforma MT4, como a linguagem MQL4, é projetada especificamente para forex. Eu discutirei mais sobre como isso afeta a linguagem MQL4 abaixo, mas o ponto aqui é que o forex é um grande, crescente mercado global, e MetaTrader especificamente orientado esse mercado. Por fim, ao contrário do TradeStation, que limita principalmente os usuários ao uso de seus próprios serviços de corretagem, o MetaTrader é compatível com uma ampla variedade de corretores de forex. Como um usuário de longa data TradeStation, eu posso lembrar quando TradeStation foi apenas para a negociação dos mercados futuros. A linguagem de programação EasyLanguage foi projetada por futuros comerciantes para futuros comerciantes. Ao longo dos anos, a linguagem foi ampliada e adaptada para funcionar bem em outros mercados, principalmente ações, opções e forex. No entanto, algumas das suas características ainda refletem suas origens nos mercados de futuros. MQL4 (abreviação de MetaQuotes Language 4) foi projetado especificamente para os mercados de forex. Muitas vezes, o material instrucional para negociação forex centra-se em idéias e conceitos comerciais genéricos, tais como indicadores técnicos e tipos de lógica de negociação, e ignora os detalhes de como os mercados de forex funcionam e como isso faz forex diferente de outros mercados, como ações e futuros . O fato é que a negociação forex funciona de forma um pouco diferente de outros mercados, como qualquer pessoa de transição de um mercado diferente sabe. MQL4 tende a refletir essas diferenças. Principais diferenças Aqui estão algumas das principais diferenças entre EasyLanguage e MQL4. Salvo indicação em contrário, a discussão refere-se a escrever estratégias de negociação e back-testing-los em dados históricos. A premissa da execução de código EasyLanguage é que todo o código é executado no fechamento de cada barra do gráfico ao qual a estratégia é aplicada. Se o gráfico consiste em barras diárias, por exemplo, o código será executado no fechamento de cada barra diária. Se você desejar que o código seja executado com mais freqüência, o gráfico deve ser alterado para ter um tamanho de barra menor. No entanto, você pode forçar o código a executar determinados elementos com mais freqüência usando o recurso quotLook-inside-bar back-testingquot. Isso usa os dados de preço com uma resolução maior do que a apresentada no gráfico, a fim de produzir resultados mais precisos. O código MQL4 usa uma função chamada start () que é executada em cada tick. Normalmente, o código de estratégia principal ocorre dentro da função start (). Se você não quer que o código para executar em cada tick, você tem que programar esta lógica em start (). Por exemplo, para que o código seja executado na abertura de cada barra, você pode usar o volume da barra para detectar a abertura usando quotVolume0 lt 1quot. Não há nenhuma maneira prática de detectar o fim da barra, assim que as estratégias em MT4 executam tipicamente em cada tiquetaque ou nas barras abertas. Como o código EasyLanguage é executado no fechamento da barra, as declarações de ordem comercial são sempre executadas na próxima barra, por exemplo. QuotBuy próximo bar no marketquot. A declaração equivalente mais próxima em MQL4 seria colocar a ordem para a barra atual nas barras atuais abertas. Neste caso, a lógica de negociação é sempre avaliada na barra anterior em MQL4, enquanto que em EasyLanguage, a lógica é avaliada na barra atual. Ao contrário do EasyLanguage, o MQL4 não restringe as estratégias aos dados para o gráfico no qual a estratégia foi aplicada. É possível fazer referência a qualquer série de dados disponível em uma estratégia MT4 consultando o símbolo eo tamanho da barra. Bar tamanhos são limitados a 1, 5, 15, 30, 60 e 240 minutos, bem como diária, semanal e mensal. TradeStation tem uma maior variedade de tamanhos de barras disponíveis, incluindo tamanhos de barra de qualquer número inteiro de minutos e barras de carrapato de qualquer número de carrapatos. Execução de Ordem EasyLanguage faz um trabalho louvável de ocultar as complexidades de colocar e executar ordens de negociação. Por exemplo, se você tiver uma posição curta, e você colocar uma ordem de entrada longa, se você não especificar o tamanho, a entrada longa será automaticamente fechar o comércio de curto, ao mesmo tempo que coloca o comércio de longo. Da mesma forma, se você tem várias ordens pendentes para sair, digamos, um longo comércio no mercado dependendo de diferentes condições, se várias condições forem verdadeiras ao mesmo tempo, apenas uma ordem de saída será colocada os outros serão cancelados automaticamente. Além disso, as ordens de negociação no EasyLanguage persistem por apenas uma barra e são automaticamente canceladas se não estiverem preenchidas no final da próxima barra. MQL4 deixa o manuseamento de pedidos em grande parte até o programador. Se você tem várias ordens concorrentes, você precisa gerenciá-las você mesmo, cancelando as que não são executadas e certificando-se de que várias ordens não sejam executadas involuntariamente. Por exemplo, no MQL4, se você quiser que uma entrada reverta uma posição aberta, você precisa especificar o número de lotes para dar o resultado líquido desejado (por exemplo, venda de 2 lotes curtos com 1 lote aberto muito para acabar 1 lote curto) Ou rastrear a posição aberta e fechá-la assim que a nova entrada for detectada. Ações vs. Lotes Em EasyLanguage, o tamanho de uma posição de negociação é especificado em contratos (por exemplo, futuros) ou em ações. Para o forex, um tamanho de posição padrão no TradeStation seria 10.000 ou 100.000 ações, correspondendo a um lote pequeno ou grande. De acordo com sua orientação forex, no MetaTrader o tamanho do comércio é especificado em lotes, que podem ser fracionários. Um lote de tamanho grande seria um tamanho de lote de 1. Um lote mini seria um tamanho de lote de 0,1. Custos de Negociação e Preços de Preenchimento Porque TradeStation e EasyLanguage foram originalmente orientados para negociação de futuros, eles seguem a convenção de usar derrapagem para explicar o fato de que os comércios não são normalmente preenchidos ao preço de mercado. Deslizamento é o custo do dólar adicionado ao comércio para explicar isso. Normalmente, você também insira os custos de comissão por contrato / ação ou por comércio para contabilizar as taxas que a corretora cobra para executar o negócio. Todos esses custos são tratados da mesma maneira: eles deduzem um valor em dólares de um comércio rentável ou adicionam o mesmo valor a um comércio perdedor. Os mesmos custos são deduzidos de todos os comércios, longos e curtos. Ao mesmo tempo, o comércio é assumido como tendo sido preenchido ao preço especificado, seja o preço atual de uma ordem de mercado ou o preço de parada ou limite especificado. MQL4 usa uma abordagem um pouco mais sofisticada para os custos de negociação e os preços de enchimento. Em MetaTrader, é importante entender que cada preço é na verdade dois preços, a oferta e pedir. A oferta é o preço mais baixo, enquanto o pedir é o preço mais elevado. A diferença entre o lance e o pedido é chamada de oferta / oferta. As ordens de compra são sempre preenchidas no pedido e as ordens de venda são sempre preenchidas na oferta. Um gráfico de preços exibe apenas o preço da oferta. Isso significa que as ordens de compra de mercado serão preenchidas acima do preço de mercado aparente (com base no gráfico), enquanto as ordens de venda no mercado serão preenchidas pelo preço visto no gráfico. O spread bid / ask é parte do custo do comércio. Isso é consistente com a prática comum na negociação forex de pagar pelo comércio através da propagação, em vez de pagar o corretor de uma comissão fixa. O MQL4 também usa o spread bid / ask para determinar se uma ordem pendente é preenchida. Por exemplo, uma ordem de parada de compra só é preenchida se o preço de venda, que está acima do preço de gráfico (lance), toca o preço de parada. Se, por exemplo, a barra de preços no gráfico apenas toca o preço de parada, pode parecer que a ordem deve ser preenchida, mas MT4 não mostrará o comércio histórico como preenchido a menos que o preço de venda atingiu o preço de compra parar. Da mesma forma, uma ordem de limite de compra não será registrada como preenchida a menos que o preço de venda chegue até o preço limite de compra. As paradas de venda e os limites são preenchidos na oferta, pelo que, ao contrário das ordens de compra, os seus preços de enchimento correspondem directamente aos preços dos gráficos. O spread bid / ask não é o único spread de preços que afeta as ordens de negociação em MT4 / MQL4. Se uma ordem pendente (parada ou limite) estiver muito próxima do mercado no momento em que ela for colocada, a ordem será rejeitada. Isso é baseado na idéia de que não haverá tempo suficiente para colocar a ordem antes que o mercado se move através do preço da ordem. Essa distância mínima pode ser recuperada usando a função MarketInfo (..) em MQL4. Da mesma forma, uma ordem pendente não pode ser modificada em MQL4 se o preço atual para a ordem está dentro do chamado quotfreezequot nível. Em outras palavras, se a ordem está tão perto do mercado que pode ser preenchido a qualquer momento, você não está autorizado a modificá-lo. Devido à abordagem mais sofisticada que o MT4 / MQL4 usa para representar o preenchimento de pedidos, os preços de preenchimento em MT4 para simulações históricas (ou seja, back-testing) provavelmente serão mais precisos do que no TradeStation. Sintaxe da linguagem Tanto o EasyLanguage como o MQL4 são linguagens de tipo C. Ou seja, ambos têm semelhanças com a linguagem de programação C, que é uma linguagem de programação processual de propósito geral desenvolvida no final da década de 1970. MQL4 é muito mais próximo em sintaxe para C do que EasyLanguage. No entanto, enquanto MQL4 parece quase idêntico a C, há algumas diferenças, e MQL4 não implementa todos os recursos de linguagem Cs. Os arquivos de ajuda no MT4 observam as diferenças. Diferenças de Indicador Para quem está pensando em converter uma estratégia EasyLanguage em MQL4 ou vice-versa, lembre-se de que nem todos os indicadores disponíveis em ambas as plataformas são calculados da mesma forma em cada plataforma. Em particular, os seguintes indicadores dão valores substancialmente diferentes em cada plataforma para os mesmos dados de preços: Momentum, FastD estocástico (modo principal do indicador estocástico em MT4), SlowD estocástico (linha de sinal do indicador estocástico em MT4), DI - / DI (movimento direcional), ADX, e acumulação / distribuição. Também deve ser observado que TradeStation inclui mais indicadores internos do que MT4. Através do fórum on-line para MT4, no entanto, é possível encontrar uma grande variedade de indicadores que foram fornecidos por outros membros de graça. Conclusões Tanto o EasyLanguage quanto o MQL4 são linguagens de script de propósito geral projetadas para a negociação dos mercados. Com qualquer linguagem é possível desenvolver estratégias de negociação altamente complexas e sofisticadas. Em geral, minha experiência, que parece ser apoiada por outros, é que MQL4 é uma linguagem mais desafiadora para dominar que EasyLanguage, embora a maioria dos usuários TradeStation provavelmente concordaria que o nome EasyLanguage é um pouco de um misnomer. Grande parte da complexidade do MQL4 vem dos requisitos que ele coloca no programador para gerenciar ordens de negociação, algo que o EasyLanguage manipula nos bastidores na maioria das vezes. No entanto, o fardo extra vem com maior controle e maior precisão na estimativa de preços de enchimento em testes históricos. Em geral, não é surpreendente que MT4 é uma plataforma de negociação popular para forex e que MQL4 tem sido alto na minha lista de pedidos de clientes do meu Adaptrade Builder software para a construção de estratégia. Existem duas versões atuais do MetaTrader: MetaTrader 4 e MetaTrader 5. Ambas as plataformas são ativamente suportadas, mas usam diferentes linguagens de script. MT4 é de longe a plataforma mais popular. Como resultado, este artigo focalizará exclusivamente MT4 e sua linguagem de script associada, MQL4. Este artigo apareceu na edição de dezembro de 2012 do boletim informativo Adaptrade Software. Tradestation Resumo Tradestation é um corretor forex regulamentado. Para abrir uma conta, você deve cumprir um mínimo primeiro depósito de 2.000, que é maior do que a média. Além disso, Tradestation oferece uma alavancagem máxima de 100: 1, que está abaixo da média, o que significa que um comerciante não pode abrir grandes posições com uma pequena quantidade de capital. O nível de chamada de margem oferecido de 2 pode ser arriscado para operadores inexperientes e sugerimos que você o altere mais alto ao abrir sua conta. Um nível de margem abaixo de 100 indica que o trader pode continuar a abrir novas posições, mesmo quando seu patrimônio global caiu abaixo da margem aberta. Se você optar por investir na Tradestation, recomendamos que você monitore seu nível de margem e tenha cuidado com a abertura de posições quando seu patrimônio estiver abaixo da sua margem de lucro. Configuração da Conta Tamanho Mínimo da Conta Posição Mínima Tamanho Grande-Bretanha Libra Dólar dos Estados Unidos Informações Padrão de Comércio Margem Nível de Chamada Número de Pares de Moeda Serviços de Broker Plataformas Serviços de Suporte Disponíveis Considerações de Risco Credio revisou as opções e limitações oferecidas pela Tradestation a seus clientes, Pontuação de risco para o corretor. O escore de risco leva em consideração múltiplos fatores. Isto é o que se destacou no que diz respeito a Tradestation: Regulamento. Este corretor é regulado Posição. O corretor impõe um tamanho de posição mínima de 0,1 Lote, limitando o controle do comerciante Alavancagem. O corretor permite uma alavancagem máxima de 100: 1, que é grande e pode causar comércios fora de corrida, se não marcado Margem Call Level. O nível de chamada de margem é definido em 2, o que permite que o comerciante continue a abrir posições, mesmo quando sua margem se estendeu além de seu patrimônio. Em geral, a Tradestation obteve uma pontuação de risco de 4,45. Isso indica que a Tradestation tem a média da indústria com relação ao risco. Para saber mais sobre nossas avaliações, por favor veja também nossa detalhada desagregação no guia. (4 Técnicas de Análise em 1 pacote) O Proindicators Master Trading Tradestation System é um sistema de negociação baseado em regras visuais simples. Funciona em qualquer período de tempo e pode potencialmente identificar o início de uma tendência, a direção ea força da tendência, um período de lado / agitado, níveis de suporte e resistência, e muito mais. O Master Trading Systems Tradestation conjunto de indicadores devem ser utilizados em conjunto e trabalhar com qualquer estoque ou futuros, ou símbolo forex. ProIndicators Master Tradestation Trading System Antes de comprar uma estratégia de negociação automatizada e / ou Indicador (s), você deve ler e concordar com os seguintes termos e condições de uso. Termos e Condições referentes a governar o uso de sua (s) compra (s) e seu relacionamento com Proindicators e / ou seus proprietários. Se você não concordar com estes Termos e Condições, não faça uma compra. Ao efetuar uma compra, você concorda em respeitar quaisquer modificações a estes Termos e Condições e você concorda em ficar vinculado por quaisquer modificações aos Termos e Condições. Embora acreditemos que essas informações sejam precisas, nem Proindicators, seu proprietário, nem suas afiliadas garantem nem assumem qualquer responsabilidade. O desempenho passado não é uma garantia de resultados futuros. Como é verdadeiro com toda a informação obtida de toda a fonte dada, você é unicamente responsável para como você escolhe usar toda a estratégia negociando e ou indicador. Nós não estamos fazendo quaisquer recomendações para comprar e / ou vender quaisquer futuros ou ações ou forex questão. Ao comprar uma estratégia de negociação / Indicador, você concorda em não responsabilizar o Proindicator, seu proprietário e / ou afiliados por qualquer perda monetária e / ou danos emocionais. Commodity Futures Trading Commission Futures, opções de negociação, e Forex trading tem grandes potenciais recompensas, mas também grande risco potencial. Você deve estar ciente dos riscos e estar disposto a aceitá-los para investir nos mercados de futuros, forex e opções. Não comércio com dinheiro que você não pode perder. Esta não é nem uma solicitação nem uma oferta para comprar / vender futuros, ações, opções, moedas forex. Nenhuma representação está sendo feita que qualquer conta será ou é susceptível de atingir lucros ou perdas semelhantes aos discutidos neste site. O desempenho passado de qualquer sistema de negociação ou metodologia não é necessariamente indicativo de resultados futuros. CFTC REGRA 4.41 - RESULTADOS DE DESEMPENHO HIPOTÉTICOS OU SIMULADOS TÊM CERTAS LIMITAÇÕES. DESCONHECIDO UM REGISTO DE DESEMPENHO REAL, OS RESULTADOS SIMULADOS NÃO REPRESENTAM A NEGOCIAÇÃO REAL. TAMBÉM, DESDE QUE OS COMÉRCIOS NÃO FORAM EXECUTADOS, OS RESULTADOS PODERÃO TER OUTROS COMPENSADOS PELO IMPACTO, SE HOUVER, DE CERTOS FATORES DE MERCADO, COMO A FALTA DE LIQUIDEZ. OS PROGRAMAS DE NEGOCIAÇÃO SIMULADOS EM GERAL SÃO TAMBÉM SUJEITOS AO FATO QUE SÃO PROJETADOS COM O BENEFÍCIO DE HINDSIGHT. NENHUMA REPRESENTAÇÃO ESTÁ SENDO SENDO QUE QUALQUER CONTA PODERÁ OU É POSSÍVEL CONSEGUIR LUCROS OU PERDAS SEMELHANTES AOS MOSTRADOS. POLÍTICA DE REEMBOLSO / INTERCÂMBIO. Você entende que está comprando software para download que é impossível retornar. Nós não oferecemos reembolsos por esse motivo no entanto, se você está insatisfeito, vamos oferecer uma troca de igual quantidade de sua escolha a partir do nosso site (dependendo da disponibilidade). Todas as vendas, quaisquer taxas não são reembolsáveis independentemente do desempenho. TODAS AS VENDAS SÃO FINAIS. Aviso de isenção de responsabilidade da TradeStation Technologies, Inc., exigido por todos os fornecedores terceirizados: Nem a TradeStation Technologies nem qualquer de suas afiliadas revisou, certificou, endossou, aprovou, reprovou ou recomendou e nem faz ou revisará, certificará, endossa, aprovará, desaprovará Ou recomendar, qualquer ferramenta de software de negociação que seja projetada para ser compatível com a TradeStation Open Platform.
No comments:
Post a Comment