O Indicador Técnico da média móvel média adaptável (AMA) é usado para construir uma média móvel com baixa sensibilidade aos ruídos das séries de preços e é caracterizada pelo atraso mínimo para detecção de tendências. Este indicador foi desenvolvido e descrito por Perry Kaufman em seu livro quotSmarter Tradingquot. Uma das desvantagens de diferentes algoritmos de alisamento para séries de preços é que os saltos de preços acidentais podem resultar na aparência de sinais de tendências falsas. Por outro lado, o alisamento leva ao atraso inevitável de um sinal sobre parada ou mudança de tendência. Este indicador foi desenvolvido para eliminar essas duas desvantagens. Você pode testar os sinais comerciais deste indicador, criando um Expert Advisor no MQL5 Wizard. Cálculo Para definir o estado de mercado atual, Kaufman introduziu a noção de Razão de Eficiência (ER), que é calculada pela fórmula abaixo: ER (i) valor atual do Sinal de Razão de Eficiência (i) ABS (Preço (i) - Preço (i - N)) valor do sinal atual, valor absoluto da diferença entre o preço atual e o preço N período atrasado Ruído (i) Soma (ABS (Preço (i) - Preço (i-1)), N) valor atual do ruído, soma de Valores absolutos da diferença entre o preço do período atual eo preço do período anterior para N períodos. Com uma tendência forte, a Razão de Eficiência (ER) tenderá a 1 se não houver movimento direcionado, será um pouco mais do que 0. O valor obtido de ER é usado na fórmula de suavização exponencial: EMA (i) Preço (i ) SC EMA (i-1) (1 - SC) SC 2 (n1) EMA constante de suavização, n período do valor anterior exponencial EMA (i-1) anterior de EMA. A relação de suavização para o mercado rápido deve ser igual à EMA com o período 2 (SC 2 rápido (21) 0.6667), e para o período de nenhum período EMA de tendência deve ser igual a 30 (SC2 lento (301) 0.06452). Assim, a nova constante de suavização em mudança é introduzida (constante de suavização escalonada) SSC: SSC (i) (ER (i) (SC rápido - SC lento) lento SC SSC (i) ER (i) 0.60215 0.06425 Para uma influência mais eficiente da Obteve uma constante de suavização no período de média Kaufman recomenda a quadratura. Fórmula de cálculo final: AMA (i) Preço (i) (SSC (i) 2) AMA (i-1) (1-SSC (i) 2) ou (após o rearranjo ): AMA (i) AMA (i-1) (SSC (i) 2) (Preço (i) - AMA (i-1)) AMA (i) valor atual de AMA AMA (i1) valor anterior de AMA SSC ( I) valor atual da constante de suavização escalonada. Média móvel adaptativa de Kaufman A média móvel de Kaufman foi criada, sem surpresa, por Perry Kaufman. O KAMA leva em consideração o ruído do mercado. Esta versão do KAMA usa constantes de suavização de 2 e 30 para os períodos das médias móveis mais curtas e mais longas, respectivamente. O usuário pode alterar a entrada (fechar), o comprimento do período e o número de deslocamento. Esta definição do indicador 8217 é ainda expressa na condensação Sed dado no cálculo abaixo. Como negociar usando a média móvel adaptável de Kaufman A média móvel adaptativa de Kaufman é um indicador de tendência de atraso e pode ser usada em conjunto com outros estudos. Nenhum sinal de negociação é calculado. Como acessar no MotiveWave Vá para o menu superior, escolha Estudar gtMoving AveragegtKaufman Adaptive Moving Average ou vá para o menu superior, escolha Adicionar Estudo. Comece a digitar o nome deste estudo até que apareça na lista, clique no nome do estudo, clique em OK. Disclaimer Importante: As informações fornecidas nesta página são estritamente para fins informativos e não devem ser interpretadas como conselhos ou solicitações para comprar ou vender qualquer segurança. Consulte a Divulgação de Riscos e a Declaração de Descargo de Desempenho. O preço de entrada de cálculo, definido pelo usuário, o padrão é o período fechado definido pelo usuário, o padrão é 20% definido pelo usuário definido, o padrão é 0 kama kaufman adaptativo índice de média móvel índice de barra atual desenvolvido por Perry Kaufman, Kaufman8217s Adaptive Moving Average foi projetado não apenas para agir como um movimento Média, mas também rastrear o grau de ruído na tendência e ajustar de acordo. Ele muda automaticamente sua velocidade com base na volatilidade do mercado. O AMA é usado como uma substituição das médias móveis normais e quando foi apresentado em 1995, foi superior às tentativas anteriores de criar uma média móvel inteligente porque oferecia maior controle de usuário. Basicamente, quando o mercado tende fortemente e há apenas pequenos movimentos de contra-tendência (pullbacks), há muito pouco ruído e você preferiria que o MA acompanhe de perto a ação de preço, então você gostaria que ele tivesse um período de retorno menor . Por outro lado, se o mercado estiver limitado e dominado por barras que estão se compensando, o que você deseja é uma média móvel com um período de lookback mais longo que o suavizará e, assim, evitará falsos sinais. O que o Kaufman fez foi ajustar a média móvel exponencial com um algoritmo que ajustaria a constante de suavização de EMA8217s em relação à razão de direção do mercado e volatilidade, portanto, agora responde a tendência e volatilidade. Aqui está a fórmula a partir da qual o AMA é derivado: AMA C close (t) 8211 AMA (t-1) AMA (t-1), onde C é o aspecto adaptativo da constante de suavização. No entanto, há uma série de cálculos antes de chegar ao C, mas nós não os listaremos aqui também manter as coisas mais simples. É mais importante perceber que a Média de Movimento Adaptativo de Kaufman8217s se destaca graças à sua capacidade de responder às condições de mercado8217 turnos dinâmicos, que é uma grande vantagem em relação às estratégias de negociação com base em médias móveis com períodos de retorno fixos. Além disso, além de usar o KAMA como um indicador autônomo, ele também pode servir para alisar outros indicadores. Assim como os outros membros da família de indicadores de média móvel, a AMA de Kaufman8217s atua como um forte nível de resistência de suporte que gera sinais de entrada com tendência no contato, bem como sinais de saída quando uma inversão de tendência é evidente. Confira a diferença entre uma média móvel simples, uma média móvel exponencial e a média móvel adaptativa de Kaufman8217s na captura de tela abaixo. Plotado em azul claro é uma média móvel simples de 14 períodos, enquanto o EMA de 14 períodos é colorido em amarelo. Como você pode ver, a média móvel adaptativa de Kaufman8217s (linha roxa) é relativamente plana durante a maior parte do tempo, já que o mercado mantém uma faixa de negociação apertada dentro da tendência de baixa tendência do tempo8217s, portanto produzirá menos sinais de entrada falsa dentro da área de consolidação . Fundada em 2013, o Binary Tribune visa fornecer aos seus leitores uma cobertura de notícias financeira precisa e real. Nosso site está focado em segmentos principais em ações, moedas e commodities dos mercados financeiros e explicação detalhada e interativa de eventos e indicadores econômicos chave. Divulgação de Risco Financeiro O BinaryTribune não será responsável pela perda de dinheiro ou por qualquer dano causado pela dependência das informações contidas neste site. Negociação de divisas, ações e commodities em margem traz um alto nível de risco e pode não ser adequado para todos os investidores. Antes de decidir negociar trocas estrangeiras, você deve considerar cuidadosamente seus objetivos de investimento, nível de experiência e apetite de risco. Política de Cookies Este site usa cookies para lhe proporcionar a melhor experiência e conhecê-lo melhor. Ao visitar o nosso site com o seu navegador configurado para permitir cookies, você aceita o uso de cookies conforme descrito em nossa Política de Privacidade. Copie Copyright 2017 mdash Binary Tribune. Todos os direitos reservados
пятница, 29 июня 2018 г.
Moving average ordersend error 131
EA atualizada, Backtesting, erros comuns e algum código de trabalho Inscrito em Jul 2008 Status: Membro 62 Posts Este tópico pode ser de interesse para aqueles de vocês que querem começar ou já começaram a desenvolver seu próprio Expert Advisor personalizado. Este não é um quotMetaTrader 4 MQL Expert Advisor Tutorialquot ou algo assim, mas pode ser de ajuda para iniciantes, impede de cometer alguns erros e fornecer código de trabalho para algumas das funções mais comuns. Há alguns meses, escrevi minha primeira EA, muito simples, apenas para fins de aprendizagem e postei-a neste tópico. Eu tentei mantê-lo o mais simples possível e forneci muitos comentários para tornar mais fácil para os iniciantes seguir a estratégia da minha EA e como a implementei. Durante as últimas semanas, leio muito sobre análises de gráficos, análise inter-mercado e previsão de preços com redes neurais. Além disso, desenvolvi algumas bibliotecas que contêm funcionalidades muitas vezes necessárias, como gerenciamento de dinheiro, gerenciamento de pedidos, gerenciamento de erros e registro de erros. E eu também aprendi muito sobre os testes de backtesting, validação e ajuste de curva. Erro de backtesting comum que eu fiz no começo E isso já é o ponto que não era realmente inteligente com minha última abordagem: otimizei a EA por um determinado período e, em seguida, testei a EA para o mesmo período. Não faça isso E se você fizer isso - não tome esses resultados e acredite que você encontrou o último Holy-Grail-EA Queremos desenvolver uma EA que não só crie curvas de equidade agradáveis para o nosso período otimizado (quot curve fitting quot) Mas também para o futuro. Imagem, queremos escrever uma EA que use o gráfico diário como período de tempo e temos os seguintes dados da série temporal disponíveis: agora fazemos backtesting e otimização da EA. Isso significa que determinamos as médias móveis, o risco, o tamanho da parada final (ou quaisquer variáveis que usamos em nossa EA) que resulte no saldo mais alto (redução menor, recompensa esperada). Se fizermos isso durante todo o período de 2003 a 2008, podemos obter uma curva muito boa, mas não temos idéia de como a EA realizaria em 2009. Uma boa solução, seja o que devemos aos dados da série temporal em duas partes: Um para otimização e uma parte para o teste de validação: agora seria uma otimização para 2003-2005 e usamos esses valores para testar em 2006. Se ainda obtivermos bons resultados, nossa EA teria sido bem sucedida no futuro, embora nós o testássemos para o passado. Como a EA não foi otimizada para o ano de 2006. Podemos repetir isso nos próximos anos e tentar encontrar essas configurações, que produziram bons resultados para todos ou a maioria dos períodos. Não sei qual período você deve escolher para otimizar e para testar. Este é um teste e erro e também depende do prazo em que você escolhe para permitir que seu EA funcione. Obtendo melhor qualidade de modelagem Quanto mais dados você tiver, melhor (significa mais exatamente) os resultados de backtesting serão. Esta é uma maneira de melhorar a qualidade de modelagem: no menu de opções do MetaTrader 4 (pressione CtrlO) selecione a guia quotChartsquot e defina esses valores para quotMax barras no historyquot e quotMax barras em chartquot: 2147483647 - clique em OK. Em seguida, abra o Centro de História em MT4 (pressione F2), selecione o par de moedas na lista de símbolos à esquerda e selecione o prazo mais baixo, 1 minuto (clique duas vezes). Pressione quotDownloadquot e responda quotOKquot quando você receber o aviso. Pode levar alguns minutos até que todo o valor histórico tenha sido baixado. Eu tenho velas de 3,5 minutos de Mio de 1 minuto, ou seja, os últimos 10 anos em minutos devem ser suficientes. Você pode fazer isso com cada período de tempo e moeda, ou usar o script quotperiodconverterquot incluído, que vem com o MT4. Em seguida, fornecerei algumas bibliotecas que escrevi e que me ajudem a não reescrever cada pouco que eu costumo precisar. Eu salve todos os pedidos abertos em uma matriz (apenas aqueles pedidos que a EA abriu de cortesia) para que eu pudesse ver quantos pedidos foram abertos no total. E escrevi uma pequena função que simplifica a abertura de uma posição. Definir MAGICNUMBER 29031985 Máximo de deslizamento permitido para execução de ordem definir SLIPAGE 5 Salvar todas as ordens abertas nesta matriz int Ticket 9193 Contar posições abertas para uma determinada moeda e salvar nossos pedidos na matriz de tickets. Não podemos simplesmente retornar ArraySize (Ticket), porque algumas ordens já poderiam ter sido interrompidas. Int countOpenOrders () return (updateOrderManager ()) Abre uma nova posição e retorna o par de par de par de parâmetros do código de erro, use o comando param de EURUSD ou Symbol () VENDER ou VENDER - não use OPBUY ou OPSELL param lot tamanho de ordem em lot param stoploss Stoploss param takeprofit takeprofit int newMarketOrder (par de cordas, comando de seqüência, duplo, duplo, stoploss, duplo takeprofit) Comando de compra, envie se (comando COMPRAR comando comprar) retornar (OrderSend (par. OPBUY. Lot. Ask. SLIPAGE. Stoploss. Takeprofit. . MAGICNUMBER. 0. Green)) Vender comando enviar else if (comando VENDER comando vender) return (OrderSend (par. OPSELL. Lot. Bid. SLIPAGE. Stoploss. Takeprofit ... MAGICNUMBER. 0. Red)) else return (- 2 ) Atualiza todas as informações sobre os pedidos abertos no momento. Especialmente olha através de todos os pedidos se eles ainda estão ativos ou talvez tenham sido impedidos por parar de perdas e salve seu número de ticket na matriz do Ticket. Int updateOrderManager () int count 0 Redimensionar matriz de tickets para zero ArrayResize (Ticket. 0) Ir para todas as ordens de (int i 0 i lt OrdersTotal () i) Foram apenas interessados em negócios que estão no pool comercial As ordens fechadas ou canceladas são Não é interessante para nós se (OrderSelect (i. SELECTBYPOS. MODETRADES) false) break Contagem de posições que foram abertas pela nossa EA se ((OrderMagicNumber () MAGICNUMBER)) Redimensionar matriz de tickets e salvar ticket ArrayResize (Contagem de Bilhete 1) Contagem de Bilhete 91 93 OrderTicket () Retornar retorno de posições abertas (contagem) Bilhete - armazena todos os números de ticket das ordens de abertura atualizadas do current. OrderManager () - deve ser chamado de todos os carrapatos ou antes de querer usar o Ticket, porque poderia ter sido que um pedido foi feito Clamaram. Isso atualiza as atualizações do conjunto de itens de TicketOpenOrders () - conta o número de ordens abertas, simplesmente um subproduto da função mencionada anteriormente newMarketOrder (par de strings, comando de string, lote duplo, duplo stoploss, takeprofit duplo) - torna mais fácil para mim abrir Uma nova ordem. Par pode ser quotEURUSD por exemplo ou use Symbol () para usar o símbolo atual do gráfico anexado. O comando é quotBUYquot ou quotSELLquot, lot, stoploss e takeprofit são auto-explicativos. O deslizamento é definido no início do código, apenas as ordens de mercado são possíveis. Mas não há problema em escrever uma função newPendingOrder. Esta é uma biblioteca muito simples que pode ser usada para calcular a margem, a equidade, o saldo e o lucro atuais e usados atuais. Mais importante é a função de calcular o tamanho ótimo do lote para um determinado risco e parar a perda. Variáveis Externas externo duplo Risco 0,02 duplo saldo 0,00 dobro equidade 0,00 margem duplaFree 0,00 margem duplaUsada 0,00 margem duplaMercado igual 0,00 margem duplaPessoal Usável 0,00 dupla lucroPasse de Perigo 0,00 Calcule o tamanho ótimo do lote Se o sl foi definido, calcule o tamanho do lote de acordo com a perda de parada, use o risco de margem Como tamanho do lote Parâmetro: sl, Stop Loss in Point-Value (por exemplo, 0.0050 50 pips) lotes duplosOptimizados (dupla folga) lotes duplos Coloque o risco nos limites corretos se (Risco lt 0.001) Risco 0.001 se (Risco gt 0.50) Risco 0.50 dupla alavancagem MarketInfo (Symbol (), MODELOTSIZE) MarketInfo (Symbol (), MODEMARGINREQUIRED) Calcule a margem usada de acordo com o risco se a perda de parada for muito pequena se ((stoploss lt MarketInfo (Symbol (), MODESTOPLEVEL)) ampamp (stoploss gt 0)) lotes AccountEquity () Alavancagem do risco MarketInfo (Symbol (), MODELOTSIZE) Calcule o lote, de modo que somente o risco de equidade pode ser perdido. S para valores de pips se o stoploss negativo, torná-lo positivo se (stoploss lt 0) stoploss - stoploss MarketInfo (Symbol (), MODEPOINT) else stoploss stoploss MarketInfo (Symbol (), MODEPOINT) Calcule o valor de um pip por lote duplo PipValuePerLot MarketInfo (Symbol (), MODELOTSIZE) MarketInfo (Symbol (), MODEPOINT) Calcule o valor necessário por pip para arriscar o valor correto do capital de acordo com o tamanho Sl Double NeededPipValue AccountEquity () Risk scplass Calcule o tamanho ótimo do lote lotes NeededPipValue PipValuePerLot Verifique se o tamanho do lote Está em limites corretos se (lotes lt MarketInfo (Symbol (), MODEMINLOT)) lotes MarketInfo (Symbol (), MODEMINLOT) else if (lotes gt MarketInfo (Symbol (), MODEMAXLOT)) lotes MarketInfo (Symbol (), MODEMAXLOT) Recalcula Livre livre, margem usada e outros valores de atualização duplaMoneyManager () saldo AccountBalance () equity AccountEquity () margemFree AccountFreeMargin () margemUsed equity - marginFree marg InUsedPercent marginUsed equity 100 marginUsablePercent marginFree equity 100 profitLossPercentage AccountProfit () saldo 100 updateMoneyManager () - recalcula a atual margem gratuita e usada, economiza patrimônio, saldo e lucro nas variáveis. LotsOptimized (double stoploss) - calcula o tamanho ótimo do lote para uma ordem sob o risco dado e perda de stop. O risco é definido no início do arquivo: 0,02 significa: não arrisca mais de 2 do valor total do patrimônio líquido. Equidade da conta 10.000 Risco 0.02 2 Parar a perda em EURUSD é fixado para 0.0100 100 Pips Nós arrisamos apenas 2 de 10.000 200 Valor de pip por lote: 100.000 x 0.0001 10 Perda de parada 100 Pips, significa que queremos um valor de pip por lote de 200 100 2 Isso significa muito tamanho de 2 10 0,2 Se nós ficarmos parado agora com uma perda de 100 pip, nós só perdemos 200 ou 2. Simples. Se não for dada parada, o tamanho da posição será calculado de acordo com a quantidade de capital, risco e alavancagem. Esta não é, de longe, uma biblioteca de gerenciamento de dinheiro finalizada. É apenas uma base que pode e deve ser expandida. Algumas idéias: Defina um limite do capital máximo investido em porcentagem, como 2 por posição E não mais do que (por exemplo) 10 a 20 investidos em conjunto. Salve o saldo, patrimônio e curva de lucro em uma matriz. Em seguida, use esses dados para ver se os últimos negócios foram lucrativos ou não. Pode ser usado para o modo quotpanico ou para reduzir o risco quando os últimos negócios produziram perdas Se você tiver uma EA multi-moeda, então poderá ser útil também definir o quanto você deseja investir não apenas por posição e no total, mas também como Muito por market-currency. Como: 2 riscos por pedido, 10 por mercado e 20 no total. Esta é uma biblioteca de registro muito simples, útil para criar logs que podem ser gravados no terminal MT4 e salvos no disco em um arquivo. Log externo de log de string log. txt externo bool loggingActive false extern bool logToFile false Define a posição do arquivo de log arquivo de arquivo de arquivo e nome de arquivo do arquivo de log void setLogFile (arquivo de seqüência) logFile arquivo Permite o registro no arquivo em diskspace void enableFileLogging () LogToFile true Desabilita o registro no arquivo em diskspace void disableFileLogging () logToFile false Imprime o log para o diário e salva o log para o arquivo está selecionado void printLog (log de cordas) Apenas imprime ou salve logs, se o loging for ativado se (loggingActive) Se logar no arquivo É selecionado, salve log string no disco se (logToFile) int lidar com FileOpen (logFile. FILEBIN FILEREAD FILEWRITE.) If (lt. Lt 1) Imprimir (LOGGING: Erro ao abrir o arquivo) return (0) FileWriteString (handle. Log. StringLen (log )) FileClose (identificador) Imprima a cadeia log para journal Print (log) Eu acho que essa função deve ser auto-explicativa. Você pode ativar ou desativar a funcionalidade de log e ativar ou desativar o log para arquivar. As mensagens de registro só serão gravadas no Terminal e não no disco. PrintLog (log de string) - Imprime a string no diário quando o registro está ativado e também no arquivo se o login no arquivo estiver ativado. Eu sei que o stderror. mqh vem com o MetraTrader, mas escrevi minha própria versão. Isso porque eu posso incluir meus próprios códigos de erro em mensagens muito simples. Mas, por enquanto, apenas os erros de tempo de execução do Mower e os erros do servidor são implementados. ---- erros devolvidos do servidor comercial definir ERRNOERROR 0 definir ERRNORESULT 1 definir ERRCOMMONERROR 2 definir ERRINVALIDTRADEPARAMETERS 3 definir ERREERVERBUSY 4 definir ERROLDVERSION 5 definir ERRNOCONNECTION 6 definir ERRNOTENOUGHRIGHTS 7 definir ERRTOOFREQUENTREQUESTS 8 definir ERRMALFUNCTIONALTRADE 9 definir ERRACCOUNTDISABLED 64 definir ERRINVALIDACCOUNT 65 definir ERRTRADETIMEOUT 128 definir ERRINVALIDPRICE 129 definem ERRINVALIDSTOPS 130 definem ERRINVALIDTRADEVOLUME 131 definem ERRMARKETCLOSED 132 definem ERRTRADEDISABLED 133 definem ERRNOTENOUGHMONEY 134 definem ERRPRICECHANGED 135 definem ERROFFQUOTES 136 definem ERRBROKERBUSY 137 definem ERRREQUOTE 138 definem ERRORDERLOCKED 139 definem ERRLONGPOSITIONSONLYALLOWED 140 definem ERRTOOMANYREQUESTS 141 definem ERRTRADEMODIFYDENIED 145 definem ERRTRADECONTEXTBUSY 146 definem ERRTRADEEXPIRATIONDENIED 147 definem ERRTRADETOOMANYORDERS 148 - --- mql4 run time errors define ERRNOMQLERROR 4000 define ERRWRONGFUNCTIONPOINTER 4001 define ERRARRAYINDEXOUTOFRANGE 4002 definir ERRNOMEMORYFORCALLSTACK 4003 definir ERRRECURSIVESTACKOVERFLOW 4004 definir ERRNOTENOUGHSTACKFORPARAM 4005 definir ERRNOMEMORYFORPARAMSTRING 4006 definir ERRNOMEMORYFORTEMPSTRING 4007 definir ERRNOTINITIALIZEDSTRING 4008 definir ERRNOTINITIALIZEDARRAYSTRING 4009 definir ERRNOMEMORYFORARRAYSTRING 4010 definir ERRTOOLONGSTRING 4011 definir ERRREMAINDERFROMZERODIVIDE 4012 definir ERRZERODIVIDE 4013 definir ERRUNKNOWNCOMMAND 4014 definir ERRWRONGJUMP 4015 definir ERRNOTINITIALIZEDARRAY 4016 definir ERRDLLCALLSNOTALLOWED 4017 definir ERRCANNOTLOADLIBRARY 4018 definir ERRCANNOTCALLFUNCTION 4019 definir ERREXTERNALCALLSNOTALLOWED 4020 definir ERRNOMEMORYFORRETURNEDSTR 4021 definir ERRSYSTEMBUSY 4022 definir ERRINVALIDFUNCTIONPARAMSCNT 4050 definir ERRINVALIDFUNCTIONPARAMVALUE 4051 definir ERRSTRINGFUNCTIONINTERNAL 4052 definir ERRSOMEARRAYERROR 4053 definir ERRINCORRECTSERIESARRAYUSING 4054 definir ERRCUSTOMINDICATORERROR 4055 definir ERRINCOMPATIBLEARRAYS 4056 definir ERRGLOBALVARIABLESPROCESSING 4057 defi ne ERRGLOBALVARIABLENOTFOUND 4058 definir ERRFUNCNOTALLOWEDINTESTING 4059 definir ERRFUNCTIONNOTCONFIRMED 4060 definir ERRSENDMAILERROR 4061 definir ERRSTRINGPARAMETEREXPECTED 4062 definir ERRINTEGERPARAMETEREXPECTED 4063 definir ERRDOUBLEPARAMETEREXPECTED 4064 definir ERRARRAYASPARAMETEREXPECTED 4065 definir ERRHISTORYWILLUPDATED 4066 definir ERRTRADEERROR 4067 definir ERRENDOFFILE 4099 definir ERRSOMEFILEERROR 4100 definir ERRWRONGFILENAME 4101 definir ERRTOOMANYOPENEDFILES 4102 definir ERRCANNOTOPENFILE 4103 definir ERRINCOMPATIBLEFILEACCESS 4104 definir ERRNOORDERSELECTED 4105 definir ERRUNKNOWNSYMBOL 4106 definir ERRINVALIDPRICEPARAM 4107 definir ERRINVALIDTICKET 4108 definir ERRTRADENOTALLOWED 4109 definir ERRLONGSNOTALLOWED 4110 definir ERRSHORTSNOTALLOWED 4111 definir ERROBJECTALREADYEXISTS 4200 definir ERRUNKNOWNOBJECTPROPERTY 4201 definir ERROBJECTDOESNOTEXIST 4202 definir ERRUNKNOWNOBJECTTYPE 4203 definir ERRNOOBJECTNAME 4204 definir ERROBJECTCOORDINATESERROR 4205 definir ERRNOSPECIFIEDSUBWINDOW 4206 de OK ERRSOMEOBJECTERROR 4207 string ErrorDescription (código int) switch (código) caso ERRNOERROR. Imprimir (sem erro retornado) break case ERRNORESULT. Imprimir (Nenhum erro retornado, mas o resultado é desconhecido) break case ERRCOMMONERROR. Imprimir (erro comum) caso de ruptura ERRINVALIDTRADEPARAMETERS. Imprimir (Parâmetros de comércio inválidos) break case ERRSERVERBUSY. Print (O servidor de comércio está ocupado) break case ERROLDVERSION. Imprimir (versão antiga do terminal do cliente) break case ERRNOCONNECTION. Imprimir (sem conexão com o servidor de comércio) quebra o caso ERRNOTENOUGHRIGHTS. Imprimir (Não há direitos suficientes) break case ERRTOOFREQUENTREQUESTS. Impressão (Solicitações muito frequentes) caso de ruptura ERRMALFUNCTIONALTRADE. Impressão (operação comercial incorreta) caso de falha ERRACCOUNTDISABLED. Print (Conta desativada) break case ERRINVALIDACCOUNT. Imprimir (conta inválida) break case ERRTRADETIMEOUT. Impressão (tempo de espera comercial) caso de ruptura ERRINVALIDPRICE. Imprimir (preço inválido) break case ERRINVALIDSTOPS. Impressão (paradas inválidas) caso de ruptura ERRINVALIDTRADEVOLUME. Caixa de gravação de impressão (volume de comércio inválido) ERRMARKETCLOSED. Impressão (Mercado fechado) caso de falha ERRADIZADO. Imprimir (Comércio is disabled) break case ERRNOTENOUGHMONEY. Imprimir (Não dinheiro suficiente) break case ERRPRICECHANGED. Imprimir (Preço alterado) caso de ruptura ERROFFQUOTES. Imprimir (Off quo)) break case ERRBROKERBUSY. Imprimir (Broker está ocupado) break case ERRREQUOTE. Caixa de gravação Print (Requote) ERRORDERLOCKED. O bloco de gravação Print (Order is locked) ERRLONGPOSITIONSONLYALLOWED. Impressão (posições longas somente permitidas) caso de ruptura ERRTOOMANYREQUESTS. Imprimir (Demasiados pedidos) caso de ruptura ERRADADEMODIFYDENIED. Imprimir (Modificação negada por ordem muito próxima ao mercado) break case ERRTRADECONTEXTBUSY. O contexto Print (Contexto comercial está ocupado) ERRTRADEEXPIRATIONDENIED. Imprimir (Expirações são negadas pelo corretor) break case ERRTRADETOOMANYORDERS. Imprimir (A quantidade de pedidos pendentes e pendentes atingiu o limite definido pelo corretor.) Caso de interrupção ERRNOMQLERROR. Imprimir (sem erro) break case ERRWRONGFUNCTIONPOINTER. Imprimir (ponteiro de função incorreta) caso de ruptura ERRARRAYINDEXOUTOFRANGE. Imprimir (Índice de matriz está fora do intervalo) caso de ruptura ERRNOMEMORYFORCALLSTACK. Imprimir (sem memória para pilha de chamadas de função) caso de ruptura ERRRECURSIVESTACKOVERFLOW. Impressão (estouro de pilha recursiva) quebra case ERRNOTENOUGHSTACKFORPARAM. Imprimir (Não há pilha suficiente para o parâmetro) caso de ruptura ERRNOMEMORYFORPARAMSTRING. Imprimir (sem memória para string de parâmetro) break case ERRNOMEMORYFORTEMPSTRING. Imprimir (sem memória para string temporária) break case ERRNOTINITIEDSTRING. Imprimir (cadeia não inicializada) caso de ruptura ERRNOTINITIALIZEDARRAYSTRING. Imprimir (cadeia não inicializada na matriz) caso de ruptura ERRNOMEMORYFORARRAYSTRING. Imprimir (sem memória para matriz de matriz) caso de ruptura ERRTOOLONGSTRING. Caixa de impressão (muito longa) caso de ruptura ERRREMAINDERFROMZERODIVIDE. Imprimir (Restante de zero divisão) break case ERRZERODIVIDE. Print (Zero dividir) break case ERRUNKNOWNCOMMAND. Imprimir (comando desconhecido) break case ERRWRONGJUMP. Imprimir (salto errado (erro nunca gerado)) break case ERRNOTINITIALIZEDARRAY. Impressão (matriz não inicializada) caso de ruptura ERRDLLCALLSNOTALLOWED. Imprimir (chamadas DLL não são permitidas) caso de ruptura ERRCANNOTLOADLIBRARY. Imprimir (Não é possível carregar a biblioteca) caso de ruptura ERRCANNOTCALLFUNCTION. Imprimir (Não é possível chamar função) caso de falha ERREXTERNALCALLSNOTALLOWED. Imprimir (as chamadas de função especializadas não são permitidas) break case ERRNOMEMORYFORRETURNEDSTR. Imprimir (Memória insuficiente para string temporária retornada da função) break case ERRSYSTEMBUSY. Imprimir (O sistema está ocupado (erro nunca gerado)) caso de falha ERRINVALIDFUNCTIONPARAMSCNT. Imprimir (contagem de parâmetros de função inválidos) caso de falha ERRINVALIDFUNCTIONPARAMVALUE. Imprimir (valor do parâmetro da função inválida) caso de ruptura ERRORTRINGFUNCTIONINTERNAL. Imprimir (erro de função de seqüência de caracteres) caso de ruptura ERREOMEARRAYERROR. Imprimir (Algum erro de array) break case ERRINCORRECTSERIESARRAYUSING. Imprimir (usar matriz de série incorreta) caso de ruptura ERRECINTAINADOR. Imprimir (erro do indicador personalizado) break case ERRINCOMPATIBLEARRAYS. Imprimir (Arrays is incompatible) break case ERRGLOBALVARIABLESPROCESSING. Imprimir (erro de processamento de variáveis globais) break case ERRGLOBALVARIABLENOTFOUND. Imprimir (variável global não encontrada) break case ERRFUNCNOTALLOWEDINTESTING. Imprimir (A função não é permitida no modo de teste) caso de ruptura ERRFUNCTIONNOTCONFIRMED. Imprimir (função não confirmada) caso de ruptura ERRSENDMAILERROR. Imprimir (Enviar erro de email) caso de ruptura ERRORTRINGPARAMETEREXPECTED. Parâmetro print (String parameter expected) ERRINTEGERPARAMETEREXPECTED. Imprimir (parâmetro Inteiro esperado) caso de ruptura ERRDOUBLEPARAMETEREXPECTED. Print (Parámetro duplo esperado) break case ERRARRAYASPARAMETEREXPECTED. Imprimir (Array como parâmetro esperado) break case ERRHISTORYWILLUPDATED. Imprimir (dados do histórico solicitado no estado de atualização) break case ERRTRADEERROR. Imprimir (algum erro na função de negociação) break case ERRENDOFFILE. Imprimir (Fim do arquivo) caso de ruptura ERRSOMEFILEERROR. Erro de impressão (algum erro de arquivo) ERRWRONGFILENAME. Imprimir (nome de arquivo errado) break case ERRTOOMANYOPENEDFILES. Imprimir (Muitos arquivos abertos) quebra o caso ERRCANNOTOPENFILE. Imprimir (Não é possível abrir o arquivo) break case ERRINCOMPATIBLEFILEACCESS. Imprimir (acesso incompatível a um arquivo) break case ERRNOORDERSELECTED. Imprimir (sem ordem selecionada) break case ERRUNKNOWNSYMBOL. Imprimir (símbolo desconhecido) break case ERRINVALIDPRICEPARAM. Imprimir (preço inválido) break case ERRINVALIDTICKET. Caixa de gravação de impressão (cartão inválido) ERRADADADOTORIZADA. Imprimir (O comércio não é permitido - Ative a caixa de seleção - Ajando a negociação ao vivo - nas propriedades experientes) caso de falha ERRLONGNOTALLOWED. Imprimir (Longs não são permitidos - Verifique as propriedades do especialista) break case ERRSHORTSNOTALLOWED. Imprimir (Shorts não são permitidos - Verifique as propriedades experientes) break case ERROBJECTALREADYEXISTS. Imprimir (Objeto já existe) break case ERRUNKNOWNOBJECTPROPERTY. Imprimir (objeto do objeto desconhecido) break case ERROBJECTDOESNOTEXIST. Imprimir (Objeto não existe) caso de falha ERRUNKNOWNOBJECTTYPE. Tipo de gravação de impressão (tipo de objeto desconhecido) ERRNOOBJECTNAME. Imprimir (sem nome do objeto) caso de falha ERROBJECTCOORDINATESERROR. Imprimir (erro de coordenadas do objeto) caso de ruptura ERRNOSPECIFIEDSUBWINDOW. Cópia de impressão (sem sub-janela especificada) ERRSOMEOBJECTERROR. Imprimir (algum erro na função do objeto) quebra ErrorDescription (código int) - retorna a descrição do erro para o código especificado e heres outra EA simples que usa algumas das funções que foram fornecidas nas postagens anteriores. Heres como funciona. Ele usa 3 médias móveis exponenciais - rápido, médio e lento em gráficos diários. E apenas algumas regras simples: Compre quando estamos em tendência de alta Vender quando estamos em tendência de baixa tendência de alta. MA rápido é maior do que MA médio, MA médio é maior do que o MA lento para a atual tendência Bearish da barra semanal. MA rápido é menor do que MA médio, MA médio é menor do que o MA lento para a barra semanal atual. Isso deve impedir que vendamos, quando estamos em um mercado de alta e de comprar enquanto estamos no mercado de baixa. Os sinais de compra e venda também são gerados com as mesmas 3 médias móveis: sinal de compra. MA médio cruza MA lento de baixo para cima e MA rápido está acima de MA médio no gráfico diário Vender sinal. MA médio cruza o MA lento de cima para baixo e MA rápido está abaixo do MA médio no gráfico diário Se estamos em uma tendência de alta, procurando sinais de compra. E se estamos em tendência de baixa, apenas observe sinais de venda. Além disso, essa EA usa paradas para manter os lucros uma vez que foram feitas. E também é possível abrir mais de uma posição ao mesmo tempo (veja definir MAXORDERS). Definir MAXORDERS 5 Indicador Técnico Variáveis extern int FastMA 8 extern int MediumMA 21 extern int SlowMA 55 extern int TrailStop 200 extern int InitialSL 200 Verificar para condições de mercado otimizadas bool isBullishMarket () iMA duplo rápido (Symbol (), PERIODW1. FastMA. 0. MODEEMA PRICECLOSE 0) iMA duplo médio (Symbol (), PERIODW1. MediumMA. 0. MODEEMA. PRICECLOSE. 0) iMA duplo lento (Symbol (), PERIODW1. SlowMA. 0. MODEEMA. PRICECLOSE. 0) Bullish: fast gt medium Gt lento no gráfico semanal se ((fast gt medium) ampamp (médio gt lento)) return (true) else return (false) Verifique se há condições de mercado baixas bool isBearishMarket () iGA duplo rápido (Symbol (), PERIODW1. FastMA. 0 MODEEMA PRICECLOSE 0) iMA duplo médio (Symbol (), PERIODW1. MediumMA. 0. MODEEMA. PRICECLOSE. 0) iMA duplo lento (Symbol (), PERIODW1. SlowMA. 0. MODEEMA. PRICECLOSE. 0) Bullish: rápido Lt lento e lento no gráfico semanal se ((fast lt medium) ampamp (médio lt slo W)) return (true) else return (false) Procure um sinal de compra bool buySignalOccured () double currentFast iMA (Symbol (), PERIODD1. FastMA. 0. MODEEMA. PRICECLOSE. 0) duplo anteriorMedium iMA (Symbol (), PERIODD1. MediumMA. 0. MODEEMA. PRICECLOSE. 1) double currentMedium iMA (Symbol (), PERIODD1. MediumMA. 0. MODEEMA. PRICECLOSE. 0) double previousSlow iMA (Symbol (), PERIODD1. SlowMA. 0. MODEEMA. PRICECLOSE. 1) dual currentSlow iMA (Symbol (), PERIODD1. SlowMA. 0. MODEEMA. PRICECLOSE. 0) se (currentFast gt currentMedium) se ((previousMedium lt previousSlow) ampamp (currentMedium gt currentSlow )) Retorno (verdadeiro) retorno (falso) Procure um sinal de venda bool sellSignalOccured () double currentFast iMA (Symbol (), PERIODD1. FastMA. 0. MODEEMA. PRICECLOSE. 0) double previousMedium iMA (Symbol (), PERIODD1. MediumMA 0. MODEEMA. PRICECLOSE. 1) double currentMedium iMA (Symbol (), PERIODD1. MediumMA. 0. MODEEMA. PRICECLOSE. 0) duplo anteriorSlow iMA (Symbol (), PERIODD1. SlowMA. 0. MODEEMA. PRICECLOSE. 1) Dual currentSlow iMA (Symbol (), PERIODD1. SlowMA. 0. MODEEMA. PRICECLOSE. 0) se (currentFast lt cu RrentMedium) se ((anteriorMedium gt previousSlow) ampamp (currentMedium lt currentSlow)) return (true) return (false) Verifique as condições para vender ou compre uma posição void checkForOpen () double lot Apenas troque no início de uma nova barra se (Volume 91 0 93 gt 1) return Verifique a condição de compra no par selecionado se (isBullishMarket ()) se (buySignalOccured ()) lot lotsOptimized (InitialSL Point) newMarketOrder (Symbol (), BUY. muito. Ask - InitialSL Point. 0) Verifique a condição de venda no par selecionado se (isBearishMarket ()) se (sellSignalOccured ()) lot lotsOptimized (InitialSL Point) newMarketOrder (Symbol (), VENDER. Lot. Bid InitialSL Point. 0) Update arrasar stop void updateTrailingStops () Double stploss Iterate através de cada ordem e escolha aqueles que pertencem à nossa EA para (int j 0 j lt OrdersTotal () j) se (OrderSelect (j. SELECTBYPOS. MODETRADES) false) romper se (OrderMagicNumber () MAGICNUMBER OrderSymbol () Symbol ()) Continue se (OrderType () OPBUY) É pedido já na zona de lucro se (Ask - TrailStop Point gt OrderOpenPrice ()) É nova perda acima das ordens atuais stoploss se (Ask - TrailStop Point gt OrderStopLoss ()) OrderModify (OrderTicket ( ), OrderOpenPrice (), Ask - TrailStop Point. 0. 0. Azul) continue se (OrderType () OPSELL) É ordem já na zona de lucro se (Bid TrailStop Point lt OrderOpenPrice ()) É nova perda abaixo das ordens atuais stoploss se ( Bid TrailStop Point lt Ord ErStopLoss ()) OrderModify (OrderTicket (), OrderOpenPrice (), Bid TrailStop Point. 0. 0. Azul) Continuar Ponto de partida do perito nulo de partida () se (MediumMA lt FastMA) retornar se (SlowMA lt MediumMA) retornar Atualizar nossos gerentes de pedidos e dinheiro updateMoneyManager () updateOrderManager () Atualização de arranque pára - não usamos uma venda Sinal para fechar uma posição, isso poderia ser implementado mais tarde. Mas paragens de arrastar devem dar bons resultados, quer atualizarTrailingStops () Verificar para abrir uma posição se (countOpenOrders () lt MAXORDERS) checkForOpen () Heres a parte que pode ser otimizada: extern int FastMA 8 extern int MediumMA 21 extern int SlowMA 55 extern int TrailStop 200 extern int InitialSL 200 FastMA, MediumMA e SlowMA são os períodos para as médias móveis exponenciais. InitialSL define a perda de parada inicial que será usada quando uma nova posição for aberta. TrailingStop define o tamanho da parada final em pips. Algumas melhorias possíveis Este sistema é para fins de aprendizagem e não deve ser usado em negociação ao vivo - você pode otimizá-lo e testá-lo em uma conta de demonstração, se desejar. É simples e há muitas coisas que devem ser melhoradas antes de usá-lo em uma conta ao vivo, como por exemplo: Melhor detecção da tendência geral do mercado - uma simples melhoria seria não usar os mesmos períodos de média móvel para o gráfico diário e semanal Aberto Mais posições quando o mercado se move na direção desejada. Não espere até que outro sinal de compra ocorra, mas abra uma nova posição se já estivermos em zona de lucro com a primeira ordem e as chances são de que não há mudança de tendência na visão Faça uso de melhor gerenciamento de dinheiro e risco. Backtesting e otimização Eu tomei 2007 como período de backtesting e usei esses valores: Entre todos os resultados obtidos, escolhi um com um bom resultado (gt 26.000 lucro) e um drawdown de Então eu usei esses valores para testá-lo para 2008: gt 40.000 lucro Mas isso foi um sortudo. Outras configurações com diferentes valores executados de ruim para realmente, muito ruim. Então, ainda há muito a fazer: melhorar o gerenciamento de risco e dinheiro melhorar a necessidade de gerenciamento de pedidos para uma melhor detecção de tendências gerais, desenvolver melhores sinais adicionar a posições lucrativas. Permitir abrir mais pedidos e não esperar por outro sinal, mas abrir quando já são feitos grandes lucros reduzidos perdem rapidamente. Não use parada inicial fixa, mas calcule-a (usando o ATR, por exemplo) melhor backtesting e otimização: otimize para 2002 e faça o backtest para 2003. selecione algumas configurações e faça backtest também para 2004. se livre das configurações que apresentaram desempenho fraco e posterior para 2005 com Configurações restantes e assim por diante. Até ter uma boa configuração que tenha funcionado bem durante um período mais longo Se você tiver alguma dúvida ou melhorias, avise-me. Qualquer comentário seja bem-vindo 3ma. mq4 6 KB 321 downloads Que muito trabalho você colocou aqui. Obrigado pelo seu esforço. Eu não tenho suas habilidades de programação. Alguns comentários: isso pode ser minha culpa devido à instalação incorreta. A EA está enviando um tamanho de lote incorreto. Eu estava recebendo 131 erros, então coloquei alguns comandos de impressão no código para ver qual era o tamanho do lote. Os comandos Imprimir estão na linha antes das novas linhas do Marcador. Em seguida, abra o Centro de História em MT4 (pressione F2), selecione o par de moedas na lista de símbolos à esquerda e selecione o prazo mais baixo, 1 minuto (clique duas vezes). Pressione quotDownloadquot e responda quotOKquot quando você receber o aviso. Pode levar alguns minutos até que todo o valor histórico tenha sido baixado. Eu tenho velas de 3,5 minutos de Mio de 1 minuto, ou seja, os últimos 10 anos em minutos devem ser suficientes. Você pode fazer isso com cada período de tempo e moeda, ou usar o script quotperiodconverterquot incluído, que vem com o MT4. Eu não acho que você precisa baixar para cada período de tempo ou usar o timeconverter se os dados do histórico forem baixados através do centro de histórico. Quando eu baixar 1 min para um par de moedas com o centro de histórico, todos os cronogramas de tempo padrão são preenchidos e disponíveis quando terminar. O período de conversor só seria usado para intervalos de tempo personalizados. Se você importar dados que foram baixados externamente (como Alpari), o conversor de período deve ser usado para qualquer período de tempo diferente de 1min. Estou simplesmente surpreso quando leio seu quotMy First EAquot thread. Leia a API ontem e publique o primeiro EA Today. Esta é a capacidade de um programador experiente e, como comerciante, você está indo na direção certa. You have noticed general mistakes soon and are trying to correct them soon. Your quotto doquot list is perfect also. You are so capable enough to do most anything you want, but never forget to be simple. This is a statement that is posted in other forex forum recently and I totally agree. quotI know many who are real PRO traders and they say K. I.S. S Keep it simple system. quot Most trading system that has too many parameters that can quotadjustquot to the market (its what HAPPEND in the past) doesnt work well. Keep your eye on risk management and how to exit the market, then you will be successfull. The reasons why most traders will fail are 1) overtrade (risk too much at a time) 2) predict the future too much (especially by indicators) and underestimate randomness of the market 3) take profit too early and stop loss too late (both are related to the exit) 4) too complicated minded and just cant be consistent Thank you for posting and Good luck. Ive got a small present for you. These are the codes to autodetect and correct a problem of the broker that has quotone more digitquot. For example, most brokers have 4 price digits for EURUSD. (example 1.2345) But Alpari (I dont know whether there are another brokers or not) has 5 digits (example 1.23456) For JPY cross, most brokers gives 123.45 and Alpari gives 123.456. This causes an error when you use pips based integer value (stoploss or takeprofit etc.). Worst of all, if you calculate lot size from pips based stoploss, It returns wrong lot size. It will cause fatal malfunction for risk management. It can be used like this. (Maybe you can do it more sophisticated and universal way) int DQADJ DeciQuoteAdjuster() SL by pips int SLpips StopLossDQADJ SL decision double SL Ask - StopLossDQADJPoint lot size decision double RiskAmount AccountFreeMargin() (RiskRate100) double lot RiskAmount (PipValueStopLossDQADJ) StopLoss is pips based integer. PipValue means PL value for 1lot and 1pip. return(DeciQuoteADJ) return 1 or 10 I wanted to test EA 2 but the file common. mqh is missing. where can I find it One more question. I am new to all this. I use IMA function in the code as below. It seems to me that the IMA call does not return current values I want it to buy or sell when after the gold cross but it seems to do it elsewhere. Am I missing something. Maybe someone wants to cooperate on the project Order details extern int Slippage 3 How much slip can we accept extern double Lots 0.01 extern int MagicNumber 0 Stops extern bool UseStopLoss False No stops for the Axitrader extern int StopLoss 30 extern bool UseTakeProfit False extern int TakeProfit 60 extern bool UseTrailingStop True extern int TrailingStop 30 extern bool EachTickMode True extern bool OrderNoLossProfit True for axitrader ------------------------------------------------------------------ expert initialization function ------------------------------------------------------------------ int init() ---- Ticks back int BuyBackTicks 2 back ticks to check if time low lt high to buy int CloseBuyBackTicks 0 int SellBackTicks 2 back ticks to check if time low lt high to buy int CloseSellBackTicks 0 MA int MALow 5 int MAHigh 8 int Current 0 Current Bar int Order 0 int Ticket 0 int BarCount double StopLossLevel, TakeProfitLevel double BuyBackLo w iMA(NULL, 0, MALow, 0, MODEEMA, PRICECLOSE, Current BuyBackTicks) double BuyBackHigh iMA(NULL, 0, MAHigh, 0, MODEEMA, PRICECLOSE, Current BuyBackTicks) double BuyNowLow iMA(NULL, 0, MALow, 0, MODEEMA, PRICECLOSE, Current 0) double BuyNowHigh iMA(NULL, 0, MAHigh, 0, MODEEMA, PRICECLOSE, Current 0) double SellBackLow iMA(NULL, 0, MALow, 0, MODEEMA, PRICECLOSE, Current SellBackTicks) double SellBackHigh iMA(NULL, 0, MAHigh, 0, MODEEMA, PRICECLOSE, Current SellBackTicks) double SellNowLow iMA(NULL, 0, MALow, 0, MODEEMA, PRICECLOSE, Current 0) double SellNowHigh iMA(NULL, 0, MAHigh, 0, MODEEMA, PRICECLOSE, Current 0) double CloseBuyBackLow iMA(NULL, 0, MALow, 0, MODEEMA, PRICECLOSE, Current CloseBuyBackTicks) double CloseBuyBackHigh iMA(NULL, 0, MAHigh, 0, MODEEMA, PRICECLOSE, Current CloseBuyBackTicks) double CloseBuyNowLow iMA(NULL, 0, MALow, 0, MODEEMA, PRICECLOSE, Current 0) double CloseBuyNowHigh iMA(NULL, 0, MAHigh, 0, MODEEMA, PRICECLOSE, Current 0) double C loseSellBackLow iMA(NULL, 0, MALow, 0, MODEEMA, PRICECLOSE, Current CloseSellBackTicks) double CloseSellBackHigh iMA(NULL, 0, MAHigh, 0, MODEEMA, PRICECLOSE, Current CloseSellBackTicks) double CloseSellNowLow iMA(NULL, 0, MALow, 0, MODEEMA, PRICECLOSE, Current 0) double CloseSellNowHigh iMA(NULL, 0, MAHigh, 0, MODEEMA, PRICECLOSE, Current 0) Alert(quotBuyBackLow, BuyBackHighquot, BuyBackLow, quot quot, BuyBackHigh) Alert(quotSellBackLow, SellBackHighquot, SellBackLow, quot quot, SellBackHigh) Check position bool IsTrade False for (int i 0 i lt OrdersTotal() i ) OrderSelect(i, SELECTBYPOS, MODETRADES) Select order by position in the trading pool bool OrderSelect( int index, int select, int poolMODETRADES) The function selects an order for further processing. It returns TRUE if the function succeeds. It returns FALSE if the function fails. To get the error information, one has to call the GetLastError() function. The pool parameter is ignored if the order is selected by the ticket number. The ticket number is a unique order identifier. To find out from what list the order has been selected, its close time must be analyzed. If the order close time equals to 0, the order is open or pending and taken from the terminal open positions list. One can distinguish an open position from a pending order by the order type. If the order close time does not equal to 0, the order is a closed order or a deleted pending order and was selected from the terminal history. They also differ from each other by their order types. Parameters: index - Order index or order ticket depending on the second parameter. select - Selecting flags. It can be any of the following values: SELECTBYPOS - index in the order pool, SELECTBYTICKET - index is order ticket. pool - Optional order pool index. Used when the selected parameter is SELECTBYPOS. It can be any of the following values: MODETRADES (default)- order selected from trading pool(opened and pending orders), MODEHISTORY - order selected from history pool (closed and canceled order). Closing existing orders if (OrderType() OPSELL ampamp OrderSymbol() Symbol()) Sell order found for currency pair same as chart close existing order if condition fulfilled(to be specified below) Closing Strategy here if (CloseSellBackLow lt CloseSellBackHigh ampamp CloseSellNowLow gt CloseSellNowHigh) Order SIGNALCLOSESELL if (CloseSellBackLow lt CloseSellBackHigh ampamp CloseSellNowLow gt CloseSellNowHigh)Order SIGNALCLOSEBUY if (Order SIGNALCLOSEBUY) OrderClose(OrderTicket(), OrderLots(), Ask, Slippage, DarkOrange) continue Trailing stop if(UseTrailingStop ampamp TrailingStop gt 0) if(Bid - OrderOpenPrice() gt Point TrailingStop) if(OrderStopLoss() lt Bid - Point TrailingStop) OrderModify(OrderTicket(), OrderOpenPrice(), Bid - Point TrailingStop, OrderTakeProfit(), 0, MediumSeaGreen) if (EachTickMode) BarCount Bars continue if (OrderType() OPBUY ampamp OrderSymbol() Symbol()) close existing order if condition fulfilled (to be specified below) Closing Strategy her e if (CloseSellBackLow lt CloseSellBackHigh ampamp CloseSellNowLow gt CloseSellNowHigh) Order SIGNALCLOSESELL if (Order SIGNALCLOSESELL) OrderClose(OrderTicket(), OrderLots(), Bid, Slippage, MediumSeaGreen) if (Order SIGNALBUY) if (AccountFreeMargin() lt (1000 Lots)) Alert(quotWe have no money. Free Margin quot, AccountFreeMargin()) return(0) StopLossLevel FuncStopLossLevel(UseStopLoss, StopLoss) TakeProfitLevel FuncTakeProfitLevel(UseTakeProfit, TakeProfit) Ticket OrderSend(Symbol(), OPBUY, Lots, Ask, Slippage, StopLossLevel, TakeProfitLevel, quotBuy(quot MagicNumber quot)quot, MagicNumber, 0, DodgerBlue) Alert(quotBuying ticket quot, Ticket, quotError code quot, GetLastError() ) if(Ticket gt 0) if (OrderSelect(Ticket, SELECTBYTICKET, MODETRADES)) Alert(quotBUY order opened. quot, OrderOpenPrice()) if (OrderNoLossProfit) if (StopLoss gt 0 TakeProfit gt0) xxx OrderModify(OrderTicket(), OrderOpenPrice(), Ask Point StopLoss, Ask TakeProfit Point, 0, DarkOrange) else Alert(quotError opening BUY order. quot, GetLastError()) SELL SELL SELL Found gold cross: Insert Selling Strategy if (SellBackLow gt SellBackHigh ampamp SellNowLow lt SellNowHigh) Order SIGNALSELL if (Order SIGNALSELL) Check free margin if (AccountFreeMargin() lt (1000 Lots)) Alert(quotWe have no money. Free Margin quot, AccountFreeMargin()) return(0) if (UseStopLoss) StopLossLevel Bid StopLoss Point else StopLossLevel 0.0 if (UseTakeProfit) TakeProfitLevel Bid - TakeProfit Point else TakeProfitLevel 0.0 Ticket OrderSend(Symbol(), OPSELL, Lots, Bid, Slippage, StopLossLevel, TakeProfitLevel, quotSell(quot MagicNumber quot)quot, MagicNumber, 0, DeepPink) if(Ticket gt 0) if (OrderSelect(Ticket, SELECTBYTICKET, MODETRADES)) Alert(quotSELL order opened. quot, OrderOpenPrice()) modify order with stoploss, take profit for axitrader xxx if (OrderNoLossProfit) if (StopLoss gt 0 TakeProfit gt0) OrderModify(OrderTicket(), OrderOpenPrice(), Ask Point StopLoss, Ask TakeProfit Point, 0, DarkOrange) else Alert(quotError opening SELL order. quot, GetLastError()) Alert(quotSelling Ticket quot, Ticket, quotError code quot, GetLastError()) double FuncStopLossLevel(bool UseStopLoss, double StopLoss) double StopLossLevel if (UseStopLoss) StopLossLevel Ask - StopLoss Point else StopL ossLevel 0.0 return (StopLossLevel) double FuncTakeProfitLevel(bool UseTakeProfit, double TakeProfit) double TakeProfitLevel if (UseTakeProfit) TakeProfitLevel Ask - TakeProfit Point else TakeProfitLevel 0.0Opening a Trade Using OrderSend In the last module, we went over the basic Expert Advisor and how to create input parameters. If you8217d like to review that module, click here: The Expert Advisor. Today we are going to do something more useful with an Expert Advisor: open a trade. The MetaTrader function used to open a trade is called 8220OrderSend8221. This table details each of the parameters required to set when using the function. The symbol of the currency. The type of order to open. See the table below. The number of lots to open. The preferred open price. The number of points the preferred open price may slip. The stoploss set in the order on the brokers server. This value must be calculated using the price and the currency point value. The takeprofit set in the order on the brokers server. This value must be calculated using the price and the currency point value. A text comment that can be seen from within the MetaTrader platform when viewing open orders. The color of the arrow that will appear on the price chart when the OrderSend function is successful. Most of these parameters are pretty straight forward, but a few require a bit of an explanation. The 8220 symbol 8221 parameter is the name of the currency pair. You can use the MT function 8220Symbol()8221 which will automatically use the currency of the chart that the EA is running on. Or you can even define any name in quotes, for example 8220EURUSD8221. (Note: Opening a currency different than the one that the EA is running requires some special techniques which I8217ll cover in a later module.) The 8220 cmd 8221 parameter is the command that tells the broker8217s server what you want to do. The choices for a market order are OPBUY or OPSELL 8211 open a Buy or Sell trade. The 8220 volume 8221 parameter is the number of lots you8217d like to open or close. The 8220 price 8221 parameter is the preferred price. On MT, I8217ve found this value should be set to the 8220Ask8221 price for opening Buy orders and the 8220Bid8221 price for opening Sell orders. Any other values seem to cause the function to fail. The 8220 slippage 8221 parameter is how many points you8217ll allow the trade to slip and still complete the order. For example, suppose you8217d like to buy the EURUSD at 1.3595 and the slippage is set to 3 8211 you might pay as much as 1.359531.3598. (This may look bad, but if you set your slippage too small you may not get the trade at all.) The 8220 stoploss 8221 parameter is the limit for how far the trade can go against you before the broker8217s server closes the position. (Note: Your EA does not need to be running for the stoploss to work. This is a value stored on the broker8217s system.) This value will be lower than your open price for Buy orders and greater than the open price for Sell orders. Both the stoploss and takeprofit parameters must be in exact terms of the price, so you need to do some math here. For example, if you8217d like a stoploss of 15 points, you need to subtract 15 from the open price (for an open price of 1.3595): stoploss 1.3595 8211 0.0015 1.3580 Fortunately, there is an easy way to get the 0.0015 number using the 8220Point8221 function: 15 Point 0.0015 This way, you can work with a number like 15 instead of 0.0015. (I personally think the OrderSend function could have been written to simply accept a relative value like 15 for the stoploss instead of requiring an absolute price value like 1.3580). The 8220 takeprofit 8221 parameter is the limit of how far a trade can go in your direction before it closes for a profit. This value will be higher than your open price for Buy orders and less than the open price for Sell orders. The rest of this parameter is just like the stoploss. The 8220 comment 8221 parameter can be any text. It is saved with the trade and appears in the comment window in the trading terminal. I usually put the name of the EA in this field so when I look at my open trades I can see what EA has opened each. The 8220 magic 8221 parameter is a number that you can assign to the trade so that you can identify it later. We8217ll see exactly how in a later module on the OrderSelect function. The 8220 expiration 8221 parameter holds an expiration time for pending orders. It has no meaning for market orders. (In my experience it does not work for pending orders either.) The 8220 arrowcolor 8221 parameter allows you to choose the color of the arrow that is drawn on the chart when the trade is opened. Now that we have described all of the input parameters, I8217ll make a quick note about the 8220return value8221. The OrderSend function will return a value back after it has finished running. In MQL, like most languages, a negative number is a bad thing and zero or a positive number is usually a good thing 8211 indicating the function executed successfully. We8217ll capture and check the value return from the OrderSend function so we8217ll know if it worked and actually opened a trade successfully. Note: All of the information about the OrderSend function is available from within the MetaEditor. The help file is very useful. Even as an experienced MQL programmer, I refer to the help often. (From within the MetaEditor, select View-gtNavigator and then use the search option to find your information.) So, let8217s see what the MQL code looks like. Here is the MQL code for the OrderSend function. extern int stoploss200 the takeprofit extern int takeprofit200 the number of lots extern double lots 1.0 this function will be called each time new price data arrives from the broker int start() int status OrderSend( Symbol(), the synbol for this chart OPBUY, a buy order lots, number of lots Ask, use the ask price for a BUY 3, allow the price up to move 3 points Ask 8211 (stoplossPoint), stop Bid (takeprofitPoint), limit 8220My Simple EA8221, comment to see in TerminalCompany 8675309, a unique to id this trade 0, expiration, doesn8217t work Blue a blue arrow ) if( status lt 0 ) Comment(8220OrderSend Failed. Error8221, GetLastError()) return(0) Here are some common error codes returned from the OrderSend function that you may come across as you develop your EA8217s: ERRINVALIDPRICE 8211 usually the wrong preferred price: For Buy, use Ask, for. use Bid. ERRINVALIDSTOPS 8211 usually bad math with the stoploss or takeprofit values, or they are zero and the broker will not accept zero. ERRINVALIDTRADEVOLUME 8211 the lot value is invalid, usually a problem with mini or micro lots. If you have trouble, try setting this to 1.0 to see if the error goes away. ERRNOTENOUGHMONEY 8211 self explanatory, if you are testing using a demo account this can happen often 8211 just open another demo account. This wraps up our lesson on opening a trade with an Expert Advisor. (To open a Sell trade, change the 8220cmd8221 parameter to OPSELL and reverse the math on the stoploss and takeprofit.) This limited amount of information is dangerous, so be careful with this code and please, only run this on a demo account Next module we8217ll learn how to use technical indicatorsMQL4 Reference MetaQuotes Language 4 (MQL4) is a built-in language for programming trading strategies. This language is developed by MetaQuotes Software Corp. based on their long experience in the creation of online trading platforms. Using this language, you can create your own Expert Advisors that make trading management automated and are perfectly suitable for implementing your own trading strategies. Besides, using MQL4 you can create your own technical indicators (custom indicators), scripts and libraries. MQL4 contains a large number of functions necessary for analyzing current and previously received quotes, and has built-in basic indicators and functions for managing trade orders and controlling them. The MetaEditor (text editor) that highlights different constructions of MQL4 language is used for writing the program code. It helps users to orientate themselves in the expert system text quite easily. The brief guide contains functions, operations, reserved words, and other language constructions divided into categories, and allows finding the description of every used element of the language. Programs written in MetaQuotes Language 4 have different features and purposes: Expert Advisor is a mechanical trading system linked up to a certain chart. An Expert Advisor starts to run when an event happens that can be handled by it: events of initialization and deinitialization, event of a new tick receipt, a timer event, depth of market changing event, chart event and custom events. An Expert Advisor can both inform you about a possibility to trade and automatically trade on an account sending orders directly to a trade server. Expert Advisors are stored in terminaldirectoryMQL4Experts. Custom Indicator is a technical indicator written independently in addition to those already integrated into the client terminal. Like built-in indicators, they cannot trade automatically and are intended for implementing of analytical functions only. Custom indicators are stored in terminaldirectory MQL4Indicators Script is a program intended for a single execution of some actions. Unlike Expert Advisors, scripts do not process any actions, except for the start event (this requires the OnStart handler function in a script). Scripts are stored in terminaldirectoryMQL4Scripts Library is a set of custom functions intended for storing and distributing frequently used blocks of custom programs. Libraries cannot start executing by themselves. Libraries are stored in terminaldirectoryMQL4Libraries Include File is a source text of the most frequently used blocks of custom programs. Such files can be included into the source texts of Expert Advisors, scripts, custom indicators, and libraries at the compiling stage. The use of included files is more preferable than the use of libraries because of additional burden occurring at calling library functions. Include files can be stored in the same directory as a source file - in this case the include directive with double quotes is used. Another place to store include files is terminaldirectoryMQL4Include, in this case the include directive is used with angle brackets.
Opção trading forex binária
Opções binárias Uma maneira rápida e simples de negociar Negociação de opções binárias é uma maneira emocionante e revolucionária de negociar. Ao contrário do comércio Forex ou CFDs, você simplesmente precisa decidir se o preço de um ativo aumentará ou diminuirá em um período de tempo fixo. Se a avaliação correta é feita, você recebe um retorno estabelecido, chegando às vezes até 86 do investimento inicial. As opções binárias oferecem inúmeros benefícios, incluindo um resultado de recompensa pré-estruturado. A eficiência do sistema de troca de opções binárias oferece oportunidades para comerciantes iniciantes e experientes, criando maiores oportunidades de sucesso. Receba seus lucros instantaneamente quando seu contrato expirar. Evite surpresas selecionando o valor exato que você investe. Troque uma variedade de opções binárias, como pares de moedas, commodities, ações e índices. Como comprar sua primeira opção binária: comece a se beneficiar da negociação binária registrando-se no formulário acima. Para obter uma visão geral completa das condições de negociação de nossas Opções Binárias, clique aqui. Forex usando Opções Binárias A negociação Forex é, de longe, a maior classe de ativos por volume no mundo. O trading forex envolve a compra e venda de moedas. O princípio por trás da negociação de moedas é que o valor de uma moeda para outra muda diariamente de acordo com a percepção de comerciantes, especuladores e usuários das moedas em grande escala. Uma série de fatores tornam a moeda mais barata ou mais cara do que outra moeda, e essa diferença é a base da negociação de moeda. Para entender isso melhor, visite o seu operador local de Mudança de Gabinete e tente alterar sua moeda local com o Dólar, então tente usar o Dólar que acabou de comprar para comprar sua moeda local. Você notaria duas coisas: a) Existe uma diferença entre o preço ao qual você comprou o USD com sua moeda local e o preço pelo qual você usa o dólar para comprar sua moeda local. B) Se você esperar algum tempo e repetir a transação, você também notará que os preços em que você realizou as transações em (a) mudaram ligeiramente. Na verdade, se você mora no Irã ou na Venezuela, você notaria uma mudança notável no valor da nossa moeda local em relação a outras moedas. Se você pode entender esses princípios, então você teria o conceito básico de troca de divisas. O mundo real do comércio forex vai além do que funciona no Bureau de Change. O Forex Trading é uma empresa global que reúne grandes bancos, bancos centrais, investidores institucionais, investidores de varejo e corporações multinacionais. Juntos, todos esses operadores do mercado produzem um volume de negócios diário de cerca de 4 trilhões, tornando-o o maior mercado financeiro do mundo. Os jogadores de mercado estão posicionados no lado da compra e venda do mercado. Se um comerciante A estiver no lado da compra do EURUSD e o jogador B estiver no lado da venda do EURUSD, o jogador B vencerá o comércio se o euro cair em valor em relação ao USD. Os lucros do jogador B serão pagos pelas perdas do comerciante A. Este é um processo simplificado de como o dinheiro é feito e perdido quando os comerciantes se envolvem na negociação de divisas. No mundo real da negociação forex, é tarefa do corretor combinar os compradores de uma moeda com os vendedores dessa moeda e quando os compradores iniciais querem retirar a transação (ou seja, vender a moeda que inicialmente compraram) , O corretor localiza novos compradores da moeda. Este processo é repetido várias vezes por dia em todos os cinco dias de negociação por semana tem para oferecer. Trading Forex no mercado de opções binárias Ao negociar moedas no mercado de opções binárias. Os mesmos princípios são adotados com algumas pequenas diferenças. Em vez de apenas negociar com base no movimento de uma moeda em relação a outra, o comerciante está negociando o comportamento dos pares de moedas no mercado. A) Um par de moedas será maior ou menor do que um preço específico (preço de mercado ou preço escolhido pelo comerciante) após um período de tempo específico b) O par de moedas violará um preço ou não atingirá o objetivo c) É o Par de moedas provavelmente comercializará dentro de uma faixa de preço ou breakout desse intervalo em qualquer direção dentro de um período de tempo específico. As respostas a essas perguntas formam a base de negociação de divisas no mercado de opções binárias. Procedimentos para negociação Forex O primeiro passo é obter uma conta de negociação forex com um corretor (você pode ver nossa lista dos principais corretores de opções binárias aqui). Isso envolverá o preenchimento de um formulário de abertura de conta, após o qual o comerciante enviará uma prova de endereço (conta de serviço público ou demonstração de conta bancária) e comprovante de identidade (cartão de identidade nacional ou passaporte internacional) para ativar a conta. Uma vez que a conta está ativa, o comerciante será então obrigado a financiar a conta usando qualquer um dos métodos de depósito oferecidos pelo corretor. Estes incluem fios bancários, cartões de crédito, Moneybookers (ou outras moedas digitais) e qualquer outro método aprovado, como o PayPal. Uma vez que a conta é financiada, o comerciante pode então começar a negociar qualquer um dos tipos de comércio disponíveis. O Forex é um mercado de 24 horas, portanto, os comerciantes poderão trocar moedas a qualquer hora do dia. O comerciante pode negociar tecnicamente ou fundamentalmente. No entanto, os comerciantes verão mais sucesso na negociação técnica, já que os requisitos de correspondência de volume em corretores para a negociação fundamental de moedas nos mercados de opções binárias significarão que muitos pares de moedas não estarão disponíveis para negociação de notícias. Negociação de Forex Opções binárias de negociação Forex As opções binárias são uma Forma inovadora de lucrar com os mercados financeiros, sem necessariamente ter uma base comercial ou financeira. Derivando sua estrutura do termo zero ou uma binária, uma opção binária é uma opção que é comprada cujo resultado é conhecido desde o início e cujo resultado é tudo ou nada. Um comércio de opções binárias é como dizer: eu prevejo que, no final do dia, meu bem escolhido será maior que atualmente. Se eu estiver certo, então recebo o pagamento determinado pela minha plataforma de negociação on-line. Se eu estiver errado, não recebo nada, mas nunca mais me pedirem mais dinheiro. Forex binário Os componentes de um comércio de opções binárias são simples, com uma variedade suficiente para permitir um comércio personalizado. O primeiro item a ser selecionado é o próprio activo, isto poderia ser uma moeda pairforex (por exemplo, USDEUR), estoque (por exemplo, Apple), commodity (por exemplo, Gold) ou índice (por exemplo, Nasdaq). Na plataforma anyoption existem mais de 60 ativos em oferta que cobrem os mercados americano, europeu, asiático e do Oriente Médio, para que todos escolham. A seguir, é hora de selecionar o tempo de expiração. Dependendo da plataforma escolhida, isso pode ser tão próximo quanto o final da próxima hora, ou o final do dia, ou semana, com a plataforma binária que oferece expiries mensais também. O terceiro passo é decidir sobre a direção em que o recurso está previsto para mover para cima ou para baixo, também conhecido como CALL ou PUT. Uma vez que a opção é comprada, o preço que o ativo é comprado é conhecido como o preço de exercício. CHAMAR uma opção de compra é comprada quando se prevê que, até o prazo de validade, o preço do ativo será superior ao preço de exercício. PONTA uma opção de compra é comprada quando se prevê que, até o prazo de validade, o preço do ativo será inferior ao preço de exercício. O que é um resultado de opções binárias Uma vez que a opção binária foi comprada, o investidor deve aguardar até o momento de expiração para descobrir se sua predição estava correta. Um comércio de opções binárias corretas é conhecido como estar no dinheiro e um comércio incorreto é conhecido como estar fora do dinheiro. Portanto, uma opção de chamada que expira acima do preço de exercício está no dinheiro e uma que expira abaixo do preço de exercício está fora do dinheiro. Por outro lado, uma opção de venda que expira abaixo do seu preço de exercício está no dinheiro e uma que expira acima do preço de exercício está fora do dinheiro. Agora, para os lucros, a taxa de retorno das opções binárias nas opções de dinheiro receberá o pagamento percentual oferecido ao comprar a opção. Isso mudará dependendo da plataforma. Em qualquer momento, isso é entre 65-71. De acordo com o nome, as opções binárias das negociações monetárias devem resultar em perda do investimento. No entanto, alguns sites oferecem reembolsos para esses negócios, com qualquer oferta que ofereça um reembolso de alta 15 da indústria. A simplicidade das opções binárias significa que um comerciante não precisa de um profundo conhecimento ou experiência nos mercados financeiros. Ler os papéis e estar ciente de seus arredores pode ser suficiente para obter informações sobre a direção provável dos ativos e para provocar um comércio de opções binárias bem sucedidas e altamente lucrativas. Quais recursos estão disponíveis O número de ativos subjacentes disponíveis ao escolher sua plataforma de negociação de opções binárias é uma grande atração para um site. Quanto maior a variedade: quanto mais capaz um investidor é criar um comércio pessoal, mais possível torna-se reagir e lucrar com as notícias financeiras e a experiência comercial mais agradável. Isso é visto na plataforma anyoptions que oferece mais de 60 ativos subjacentes, um registro da indústria. Existem quatro tipos de ativos subjacentes em que uma opção binária pode ser comprada: forex, índices, ações e commodities. Opções binárias de Forex opções binárias de moeda: estes também são conhecidos como pares de moedas, uma vez que são compostos por 2 moedas, por exemplo, USDEUR. Forex ou câmbio, reflete o quanto de uma moeda é necessária para comprar uma unidade da outra moeda. A primeira moeda (neste caso o USD) é conhecida como a moeda base e a segunda moeda da cotação. Quanto maior for a moeda base, maior será o número da moeda da cotação (isto é, levará mais Euros para comprar um USD). Isso é vital para o comércio e o investimento internacionais. Permite que dois países que normalmente trocam suas próprias moedas, trocam entre elas. Opções binárias de ações: estoque mostra o que uma empresa vale e está representado em ações. A beleza das opções binárias de ações é que um investidor não é obrigado a comprar as próprias ações para se beneficiar da atividade de uma empresa. Assim, a negociação de opções binárias em ações permite que um investidor troque, com menos recursos, no desempenho de uma empresa. O comércio binário possui uma grande variedade de ações disponíveis cobrindo os EUA e a Europa. Opções binárias de índice: um grupo de vários estoques é conhecido como índice. Ele permite que um investidor adquira exposição a uma seção mais ampla do mercado em um único comércio. Uma vez que é o desempenho de várias empresas que afeta o índice, as opções binárias do índice de negociação geralmente são um investimento mais confiável, no entanto, eles são interessantes, pois fatores externos podem influenciar seus movimentos. Na plataforma anyoption, um investidor possui uma ampla escolha de índices dos EUA, Europa, Américas, Ásia e Oriente Médio. Opções binárias de commodities: um bem que se enquadra na palavra commodity é aquele que é facilmente intercambiável com produtos de outro produtor. Na plataforma anyoption, isso inclui petróleo, ouro, prata e cobre. As vantagens de negociar opções binárias Compreender como negociar é sempre importante antes de um investidor começar a investir. Uma vez que ele descobre as vantagens que oferece a oferta de opções binárias, inevitavelmente aumentará a satisfação desse tipo de investimento. Aqui estão alguns dos benefícios associados à negociação de opções binárias: risco controlado quando uma opção binária é comprada, o pagamento percentual já é conhecido, tanto no dinheiro quanto fora dos resultados monetários. O risco é, portanto, controlado, uma vez que um investidor sabe exatamente quanto ele arrisca perder, ele nunca será solicitado mais dinheiro quando a opção binária expirar. Rentabilidade, uma vez que é a mudança de direção que é importante e não a mudança de magnitude, um lucro maior pode ser obtido a partir de um investimento menor. O pagamento, por exemplo, 70, é garantido independentemente do tamanho ou da pequena do investimento. Simplicidade, embora a pesquisa seja sempre necessária antes que um investimento seja feito, as opções binárias são muito mais simples do que suas contrapartes, uma vez que apenas uma mudança de direção correta é necessária, ao invés de uma grande mudança de magnitude. A acessibilidade de negociação de opções binárias abre mercados de forma dispendiosa para o público em geral. Não são mais restritas por altos preços das ações ou pelo aumento dos custos das commodities, todos podem investir em uma opção binária, com o nível de investimento que eles escolherem, com o mesmo valor de pagamento oferecido igualmente a cada investidor. Flexibilidade, a plataforma está disponível internacionalmente e em muitos idiomas diferentes. Com a introdução das opções One Touch que podem ser compradas nos finais de semana quando os mercados estão fechados, as opções binárias são um produto de 365 dias por ano. Além disso, a disponibilidade de mais de 60 opções forex, ações, índice e commodities com a escolha de 4 tempos de caducidade, torna a plataforma de negociação de opções binárias flexível e agradável. Copyright copy 2009 -2010 Forextrading. org. Todos os direitos reservados. Junte-se ao mundo do forex hoje e se torne um especialista em moeda
O que é o modelo de média móvel móvel
Médias móveis ponderadas: o básico Ao longo dos anos, os técnicos encontraram dois problemas com a média móvel simples. O primeiro problema reside no período de tempo da média móvel (MA). A maioria dos analistas técnicos acredita que a ação de preço. O preço das ações de abertura ou fechamento, não é suficiente para depender para prever adequadamente comprar ou vender sinais da ação de cruzamento de MAs. Para resolver este problema, os analistas agora atribuem mais peso aos dados de preços mais recentes usando a média móvel suavemente exponencial (EMA). (Saiba mais em Explorando a média móvel ponderada exponencialmente.) Um exemplo Por exemplo, usando um MA de 10 dias, um analista tomaria o preço de fechamento do 10º dia e multiplicaria esse número por 10, o nono dia por nove, o oitavo Dia por oito e assim por diante para o primeiro do MA. Uma vez que o total foi determinado, o analista dividiria o número pela adição dos multiplicadores. Se você adicionar os multiplicadores do exemplo MA de 10 dias, o número é 55. Este indicador é conhecido como a média móvel linearmente ponderada. (Para leitura relacionada, verifique as Médias móveis simples, faça as tendências se destacarem.) Muitos técnicos são crentes firmes na média móvel suavemente exponencial (EMA). Este indicador foi explicado de muitas maneiras diferentes que confunde estudantes e investidores. Talvez a melhor explicação venha de John J. Murphys Análise Técnica dos Mercados Financeiros (publicado pelo New York Institute of Finance, 1999): a média móvel suavemente exponencial aborda os dois problemas associados à média móvel simples. Primeiro, a média exponencialmente suavizada atribui um peso maior aos dados mais recentes. Portanto, é uma média móvel ponderada. Mas, enquanto atribui menor importância aos dados de preços passados, ele inclui no cálculo de todos os dados da vida útil do instrumento. Além disso, o usuário pode ajustar a ponderação para dar maior ou menor peso ao preço dos dias mais recentes, que é adicionado a uma porcentagem do valor dos dias anteriores. A soma de ambos os valores percentuais é de 100. Por exemplo, o preço dos últimos dias pode ser atribuído a um peso de 10 (.10), que é adicionado aos dias anteriores de peso de 90 (.90). Isso dá o último dia 10 da ponderação total. Este seria o equivalente a uma média de 20 dias, ao dar ao preço dos últimos dias um valor menor de 5 (0,05). Figura 1: Média em Movimento Suavizado Exponencialmente O gráfico acima mostra o Índice Composto Nasdaq desde a primeira semana de agosto de 2000 até 1º de junho de 2001. Como você pode ver claramente, o EMA, que neste caso está usando os dados de preço de fechamento ao longo de um Período de nove dias, tem sinais de venda definitivos no 8 de setembro (marcado por uma seta para baixo preta). Este foi o dia em que o índice caiu abaixo do nível de 4.000. A segunda seta preta mostra outra perna para baixo que os técnicos estavam realmente esperando. A Nasdaq não conseguiu gerar volume e interesse dos investidores de varejo para quebrar a marca de 3.000. Ele então mergulhou de novo para baixo em 1619.58 em 4 de abril. A tendência de alta de 12 de abril é marcada por uma seta. Aqui, o índice fechou em 1.961,46, e os técnicos começaram a ver os gerentes de fundos institucionais começar a retirar algumas pechinchas como a Cisco, a Microsoft e alguns dos problemas relacionados à energia. (Leia nossos artigos relacionados: Envelopes médios móveis: Refinando uma ferramenta de negociação popular e um salto médio em movimento). Definição do modelo médio médio ponderado No modelo de média móvel ponderada (estratégia de previsão 14), todo valor histórico é ponderado com um fator do grupo de ponderação No perfil de previsão univariada. Fórmula para a média móvel ponderada O modelo de média móvel ponderada permite que você pesa mais os dados históricos recentes do que dados mais antigos ao determinar a média. Você faz isso se os dados mais recentes forem mais representativos do que a demanda futura será do que dados mais antigos. Portanto, o sistema pode reagir mais rapidamente a uma mudança de nível. A precisão deste modelo depende em grande parte da sua escolha de fatores de ponderação. Se o padrão das séries temporais mudar, você também deve adaptar os fatores de ponderação. Ao criar um grupo de ponderação, você insere os fatores de ponderação como porcentagens. A soma dos fatores de ponderação não precisa ser 100. Nenhuma previsão ex-post é calculada com esta estratégia de previsão. Métodos de previsão média móvel: Prós e contras Oi, AME sua postagem. Estava pensando se você poderia elaborar mais. Usamos o SAP. Nela há uma seleção que você pode escolher antes de executar sua previsão chamada inicialização. Se você verificar esta opção, você obterá um resultado de previsão, se você executar a previsão novamente, no mesmo período e não verificar a inicialização, o resultado muda. Não consigo descobrir o que esta inicialização está fazendo. Quero dizer, matemática. Qual resultado de previsão é o melhor para salvar e usar, por exemplo. As mudanças entre os dois não estão na quantidade prevista, mas nas quantidades MAD e Error, stock de segurança e ROP. Não tenho certeza se você usa o SAP. Oi, obrigado por explicar com tanta eficiência, é também gd. Obrigado novamente Jaspreet Deixe uma resposta Cancelar resposta Postagens mais populares Sobre Shmula Pete Abilla é o fundador da Shmula e do personagem, Kanban Cody. Ele ajudou empresas como Amazon, Zappos, eBay, Backcountry e outros a reduzir custos e melhorar a experiência do cliente. Ele faz isso através de um método sistemático para identificar os pontos de dor que afetam o cliente e o negócio, e incentiva a ampla participação dos associados da empresa para melhorar seus próprios processos. Este site é uma coleção de suas experiências que ele quer compartilhar com você. Comece com downloads gratuitos
Pending order types forex trading
Guia intermediário para o MetaTrader 4 - Tipos de pedidos Os comerciantes têm a opção de colocar diferentes tipos de pedidos usando a plataforma MT4. Ordem de mercado Um pedido de mercado é o tipo de ordem comercial mais básico e é usado para comprar ou vender uma garantia ao preço atual. Os valores mobiliários são comprados ao preço ASK e vendidos ao preço BID. A vantagem de usar pedidos de mercado é que um comerciante é garantido para obter o comércio preenchido. Se o comerciante precisa absolutamente entrar ou sair de um comércio, uma ordem de mercado é o método mais confiável para conseguir isso. A desvantagem de usar uma ordem de mercado é que o emboscamento ocorreu (sendo preenchido a um preço menos favorável). As ordens de mercado só devem ser usadas para entrar em negociações quando há uma boa liquidez no mercado caso contrário, pode ocorrer uma derrapagem significativa. Ordens pendentes Um pedido pendente permite aos comerciantes comprar e vender valores mobiliários a um preço pré-definido no futuro. Este tipo de pedido é usado para executar uma negociação se o preço atingir o nível predefinido, a ordem não será preenchida se o preço não chegar a esse nível. Existem quatro tipos de pedidos pendentes disponíveis no MT4 (veja a Figura 20): Limite de compra - uma ordem para comprar uma garantia igual ou inferior a um preço específico. Os pedidos de limite devem ser colocados no lado correto do mercado para garantir que eles vão realizar a tarefa de melhorar o preço. Para uma ordem de limite de compra, isso significa colocar a ordem em ou abaixo da oferta de mercado atual. Limite de venda - uma ordem para vender uma garantia igual ou superior a um preço específico. Para garantir melhores preços, a ordem deve ser colocada em ou acima do mercado atual ask. Buy Stop - uma ordem para comprar uma garantia a um preço acima do lance de mercado atual. Uma ordem de parada para comprar torna-se ativa somente depois que um nível de preço especificado foi atingido (conhecido como o nível de parada). As ordens de parada funcionam na direção oposta de uma ordem de limite, com ordens de compra parar pedidos acima do mercado e vender ordens de parada colocadas abaixo do mercado. Uma vez atingido o nível de parada, a ordem será imediatamente convertida em uma ordem de mercado ou limite. Parar - uma ordem para vender uma garantia a um preço abaixo do mercado atual. Uma ordem de parada para vender se torna ativa somente depois que um nível de preço especificado foi alcançado. 13 13SEE: os conceitos básicos de negociação A Stock13 Figura 20 - As ordens de parar, vender parar, comprar limite e vender limite devem ser colocadas no lado correto do mercado para garantir que eles alcançarão o objetivo de melhorar o preço. Stop Loss Uma ordem stop-loss é usada para minimizar perdas se o preço se mover em uma direção não lucrativa. Se o preço atingir esse nível, a posição será fechada automaticamente. Uma ordem stop-loss sempre está conectada a uma posição aberta ou a uma ordem pendente. Os comerciantes podem usar uma parada final para automatizar uma ordem de stop-loss para seguir o preço. Take profit A take profit order (às vezes chamado de lucro alvo) destina-se a fechar o comércio com lucro uma vez que atingiu um determinado nível. A execução de uma ordem Take Profit encerra a posição. Esse tipo de ordem está sempre conectado a uma posição aberta de uma ordem pendente. Guia Intermediário para o MetaTrader 4 - Colocação de PedidosOANDA usa cookies para tornar nossos sites fáceis de usar e personalizados para nossos visitantes. Os cookies não podem ser usados para identificá-lo pessoalmente. Ao visitar o nosso site, você aceita o uso de cookies da OANDA8217 de acordo com nossa Política de Privacidade. Para bloquear, excluir ou gerenciar cookies, visite aboutcookies. org. A restrição dos cookies impedirá que você se beneficie de algumas das funcionalidades do nosso site. Faça o download da nossa Conta de aplicativos para dispositivos móveis: Lição 4: Fazendo o primeiro comércio Tipos de pedidos de Forex A maioria dos corretores oferece os seguintes tipos de pedidos: Ordens de mercado Ordens de limite Pegue ordens de lucro Ordem de perda de pedidos Trailing Stop Orders160 Seu estilo de negociação ditará o tipo de ordem que melhor se adequa ao seu Necessidades. Pedidos de mercado Uma ordem de mercado é executada imediatamente quando colocada. É fixado o preço usando o ponto atual, ou preço de mercado. Um pedido de mercado torna-se imediatamente uma posição aberta e sujeita a flutuações no mercado. Isso significa que se a taxa se mover contra você, o valor de sua posição deteriora-se 8211, esta é uma perda não realizada. Se você fechasse a posição neste momento, você perceberia que a perda e o saldo da sua conta seriam atualizados para incluir os totais revisados. Para evitar que a taxa executada escorregue muito longe do seu preço pretendido, o OANDA fxTrade permite que você inclua limites superiores e inferiores com sua ordem de mercado. Se o preço executado estiver fora desses limites, o fxTrade proíbe a execução da ordem. Devido à natureza em rápida mudança do mercado cambial, o preço executado pode diferir do último preço que você viu na plataforma de negociação. Isso é referido como derrapagem. Às vezes o deslizamento funciona a seu favor, e às vezes a sua desvantagem. Ordens Limitadas Uma ordem limite é uma ordem para comprar ou vender um par de moedas, mas somente quando certas condições incluídas nas instruções comerciais originais são cumpridas. Até que estas condições sejam atendidas, a ordem é considerada uma ordem pendente e não afeta os cálculos de totais ou margens da sua conta. O uso mais comum de uma ordem pendente é criar uma ordem executada automaticamente se a taxa de câmbio atingir um determinado nível. Por exemplo, se você acredita que o EURGBP está prestes a começar um aumento, você pode inserir um limite de ordem de compra a um preço ligeiramente acima da taxa de mercado. Se a taxa se mover para cima como você previu e atinge seu preço limite, um pedido de compra é executado sem mais entrada de sua parte. Um pedido de limite pendente não tem impacto nos totais da sua conta e pode ser cancelado a qualquer momento sem consequências. Se as condições de uma ordem limite forem atendidas, no entanto, a ordem pendente é executada e se torna uma ordem de mercado ativa. Pedidos de lucro obtido Uma ordem de lucro obtém automaticamente uma ordem aberta quando a taxa de câmbio atinge o limite especificado. As ordens de lucro obtidas são usadas para registrar lucros quando você não está disponível para monitorar suas posições abertas. Por exemplo, se você é USDJPY longo em 109.58 e deseja aproveitar seu lucro quando a taxa atingir 110.00, você pode definir essa taxa como seu limite de lucro. 160 Se o preço da oferta tocar 110.00, a posição aberta é fechada pelo Sistema e seu lucro é garantido. Seu comércio está fechado com a taxa de mercado atual.160 Em um mercado em rápida mudança, pode haver uma lacuna entre essa taxa e a taxa que você definiu para seu lucro. Ordens Stop-Loss Similar a um lucro obtido, uma ordem stop-loss é um mecanismo defensivo que você pode usar para ajudar a proteger contra novas perdas, incluindo evitar margens de margem. Uma parada-perda automaticamente fecha uma posição aberta quando a taxa de câmbio se move contra você E atinge o nível que você especifica. Por exemplo, se você estiver USDJPY longo em 109.58, você pode definir uma parada-perda em 107.00 8211, então, se o preço da oferta cair para este nível, o comércio é fechado automaticamente, limitando assim suas perdas. É importante entender que as ordens de stop-loss só podem restringir perdas, não podem evitar perdas. Seu comércio está fechado à taxa de mercado atual.160 Em um mercado em rápida mudança, pode haver uma lacuna entre essa taxa e a taxa que você definiu para a sua parada de perda. Se a sua parada-perda for desencadeada quando a negociação for retomada no domingo, sua negociação é executada com a taxa atual do mercado, que pode ser inferior à taxa de stop-loss - resultando em perdas adicionais. É do seu melhor interesse incluir instruções de stop-loss para suas posições abertas. Pense neles como uma forma muito básica de seguro de conta. Os comerciantes usam o termo parado para descrever a situação em que uma parada-perda fecha uma posição. Ordens de parada de trânsito Similar a uma perda de parada, uma parada de fim pode ser usada para restringir perdas e evitar liquidações de margem. Uma parada posterior parece uma perda de parada na medida em que fecha automaticamente o comércio se o mercado se mover em uma direção desfavorável por uma distância especificada. A característica-chave de uma parada final é que, enquanto o preço do mercado se move em uma direção favorável, o preço de disparo segue automaticamente o preço de mercado a uma distância especificada. Isso permite que seu comércio ganhe valor enquanto reduz a quantidade de perda em que você está em risco. Por exemplo, se você mantiver uma posição longa, o preço de disparo continuará subindo se o preço do mercado subir, mas permanecerá inalterado se o preço do mercado se mover para baixo. Se você tiver uma posição curta, o preço de disparo continuará a se mover para baixo se o preço do mercado cair, mas permanecerá inalterado se o preço do mercado subir. Lição 4 Tópicos 169 1996 - 2017 OANDA Corporation. Todos os direitos reservados. OANDA, fxTrade e OANDAs fx família de marcas registradas são de propriedade da OANDA Corporation. Todas as outras marcas registradas que aparecem neste site são de propriedade de seus respectivos proprietários. A negociação com alavancagem em contratos de moeda estrangeira ou outros produtos off-exchange na margem traz um alto nível de risco e pode não ser adequado para todos. Recomendamos que considere cuidadosamente se a negociação é apropriada para você à luz das suas circunstâncias pessoais. Você pode perder mais do que você investir. As informações sobre este site são de natureza geral. Recomendamos que você procure conselhos financeiros independentes e assegure-se de compreender plenamente os riscos envolvidos antes da negociação. Negociar através de uma plataforma online traz riscos adicionais. Consulte aqui nossa seção legal. As apostas de propagação financeira só estão disponíveis para os clientes da OANDA Europe Ltd que residem no Reino Unido ou na República da Irlanda. CFDs, capacidades de cobertura MT4 e rácios de alavancagem superiores a 50: 1 não estão disponíveis para residentes dos EUA. A informação neste site não é dirigida a residentes em países onde sua distribuição, ou uso por qualquer pessoa, seria contrária à lei ou regulamento local. A OANDA Corporation é uma negociante de câmbio mercantil e varejista registrada da Comissão de Futuros com a Commodity Futures Trading Commission e é membro da National Futures Association. Não: 0325821. Por favor, consulte o NFAs FOREX INVESTOR ALERT, onde apropriado. OANDA (Canadá) Corporation As contas ULC estão disponíveis para qualquer pessoa com uma conta bancária canadense. Corporação OANDA (Canadá) A ULC é regulada pela Organização Reguladora do Indústria do Investimento do Canadá (OCRCV), que inclui o banco de dados do conselheiro on-line da IIROC (Relatório do conselheiro da IIROC) e as contas dos clientes são protegidas pelo Fundo Canadense de Proteção ao Investidor dentro dos limites especificados. Uma brochura que descreve a natureza e os limites da cobertura está disponível mediante solicitação ou no cipf. ca. OANDA Europe Limited é uma empresa registrada na Inglaterra número 7110087, e tem sua sede no Floor 9a, Tower 42, 25 Old Broad St, Londres EC2N 1HQ. É autorizado e regulado pela Autoridade de Conduta Financeira160. Não: 542574. A OANDA Asia Pacific Pte Ltd (Co. Reg. No 200704926K) possui uma Licença de Serviços de Mercados de Capitais emitida pela Autoridade Monetária de Cingapura e também é licenciada pela International Enterprise Singapore. OANDA Australia Pty Ltd 160 é regulada pela Comissão de Valores Mobiliários e Investimentos da ASIC (ABN 26 152 088 349, AFSL nº 412981) e é o emissor dos produtos e / ou serviços neste site. É importante que você considere o atual Guia de Serviços Financeiros (FSG). Declaração de divulgação do produto (PDS). Termos de conta e outros documentos OANDA relevantes antes de tomar decisões de investimento financeiro. Estes documentos podem ser encontrados aqui. OANDA Japan Co. Ltd. Primeiro Diretor de Negócios de Instrumentos de Tipo I do Kanto Local Financial Bureau (Kin-sho) Número 2137 do Subscritor da Associação de Futuros Financeiros do Instituto 1571. Trading FX andor CFDs em margem é de alto risco e não é adequado para todos. As perdas podem exceder o investimento. A estratégia de pedidos pendentes A estratégia de pedidos pendentes ganhou grande popularidade entre os comerciantes de Forex. Esta situação foi causada pela alta eficiência dessa tática de trabalho, o que permite reduzir a pressão psicológica sobre o participante do mercado e abrir posições lucrativas na situação da forte mudança de preços. Com a ajuda desta estratégia, a rentabilidade da negociação Forex pode aumentar em várias vezes. Ele pode ser usado por novatos, bem como pelos profissionais, a fim de aumentar a eficiência comercial. Como usar a estratégia de pedidos pendentes de forma eficaz Para usar esta estratégia corretamente em seu trabalho, você deve determinar o preço, o que causaria a execução da ordem, as opções da perda de parada e as ordens de lucro e o período de existência da ordem. Assim, a estratégia de pedido pendente é baseada no cumprimento das seguintes ações: Determinação dos pontos de entrada. Existem várias formas de determinação. Uma maneira é determinar os pontos básicos de entrada. Para isso, o comerciante deve detectar mínimos e máximos de preços importantes, ao atingir o qual, a tendência provavelmente continuará seu movimento. Se o preço por algum tempo se move em um canal de preço, outra maneira pode ser usada. Trader pode definir os parâmetros da ordem com a expectativa da quebra do suporte ou linha de resistência terá lugar. Também é possível usar a maneira de colocar limites de compra e vender ordens limitadas. Eles estão sendo colocados com a expectativa de que o preço chegará ao certo ponto, em que, para o limite de compra, o preço será menor do que o atual, e para o limite de venda160 mais alto, e girará na direção da tendência atual. Para as ordens pendentes comprar parar, espera-se que o preço continue a se mover na tendência do touro, o que significa que o preço aumentará. Para vender tudo, é vice-versa, o preço tem de continuar movendo-se na tendência do urso e diminuir mais para o nível, no qual a ordem está sendo colocada. O próximo caminho é o uso das notícias. O comerciante deve saber antecipadamente o momento do importante comunicado de imprensa e colocar o pedido mais ou menos comparado com o preço atual. Após a confirmação das notícias, a tendência continuará o movimento, caso contrário a inversão ocorrerá. Em qualquer caso, as execuções da ordem terão lugar. Colocando a ordem de parada de perdas. Este pedido é colocado de acordo com a estratégia de negociação dos comerciantes e gerenciamento de dinheiro. Todas as vantagens e desvantagens podem ser lidas no artigo Stop Loss. Colocando a ordem de lucro. O parâmetro depende das ambições do comerciante e da situação atual do mercado no certo par de moedas. Você deve estimar o tamanho do lucro possível e a probabilidade de reversão da tendência. Ordem termo de existência. Este aspecto da estratégia descrita é muito importante. Você deve definir o prazo de expiração para que a ordem pendente seja executada nos parâmetros, definida pelo comerciante. Caso contrário, a ordem pode ser executada não na estratégia de negociação dos comerciantes. Considerando nuances semelhantes, é possível aprender a usar a estratégia de pedidos pendentes efetivamente e aumentar os resultados da negociação Forex. O JustForex é um corretor Forex de varejo que oferece aos comerciantes o acesso ao mercado de câmbio e oferece excelentes condições de negociação em contas como Classic, NDD, ECN, BitCoin, uma ampla escolha de instrumentos de negociação, uma alavancagem de até 1: 2000, apertado Spreads, notícias do mercado e calendário econômico. A IPCTrade Inc. é autorizada e regulada pela Comissão de Serviços Financeiros da Belize International (número de licença IFSC60241TS16). Por favor, note: nós não fornecemos serviços para residentes dos EUA e entidades de qualquer tipo. A negociação de margem no mercado Forex é especulativa e desempenha um alto nível de risco, incluindo a perda total de depósito. Você deve entender isso e decidir por si mesmo se esse tipo de negociação se encaixa, considerando o nível de conhecimento em uma área financeira, experiência comercial, recursos financeiros e outros fatores. 20122017 Todos os direitos reservados. Serviços financeiros fornecidos pelo IPCTrade Inc. Princípios básicos Antes de proceder ao estudo das funções comerciais da plataforma, você deve ter uma compreensão clara dos termos básicos: ordem, acordo e posição. Um pedido é uma instrução dada a um corretor para comprar ou vender um instrumento financeiro. Existem dois principais tipos de pedidos. Mercado e Pendente. Além disso, existem níveis especiais de Take Profit e Stop Loss. Um acordo é a troca comercial (compra ou venda) de uma garantia financeira. A compra é executada ao preço da demanda (Perguntar) e a Venda é realizada no preço de oferta (Licitação). Um negócio pode ser aberto como resultado da execução da ordem do mercado ou do desencadeamento da ordem pendente. Observe que, em alguns casos, a execução de um pedido pode resultar em vários negócios. Uma posição é uma obrigação comercial, ou seja, o número de contratos comprados ou vendidos de um instrumento financeiro. Uma posição longa é a segurança financeira comprada esperando que o preço de segurança vá mais alto. Uma posição curta é uma obrigação de fornecer uma garantia esperando que o preço caia no futuro. Um Esquema Geral de Operações de Negociação A partir da plataforma de negociação, um pedido é enviado a um corretor para executar um acordo com os parâmetros especificados. A correção de um pedido é verificada no servidor (correção dos preços, disponibilidade de fundos na conta, etc. ) Ordens que passaram a verificação aguardam para serem processadas no servidor de comércio. Em seguida, a ordem pode ser: executada (em um dos modos de execução automática ou por um revendedor) cancelada após o vencimento rejeitado (por exemplo, quando o dinheiro não é suficiente ou não há oferta de adequação no mercado ou rejeitado pelo revendedor) cancelado por um comerciante A O acordo é o resultado da execução de um pedido de mercado ou o desencadeamento de uma ordem pendente. Se não houver posições para um símbolo, a conclusão de um acordo resulta na abertura de um cargo. Se houver uma posição para o símbolo, o negócio pode aumentar ou reduzir o volume da posição, fechar a posição ou inverter. Sistema de Contabilidade de Posições Os sistemas de contabilidade de duas posições são suportados na plataforma de negociação: Netting and Hedging. O sistema utilizado depende da conta e é definido pelo corretor. Sistema de rede Com este sistema, você pode ter apenas uma posição comum para um símbolo ao mesmo tempo: se houver uma posição aberta para um símbolo, executar um negócio na mesma direção aumenta o volume dessa posição. Se um acordo for executado na direção oposta, o volume da posição existente pode ser diminuído, a posição pode ser fechada (quando o volume do negócio é igual ao volume da posição) ou invertida (se o volume do negócio oposto for maior que A posição atual). Não importa, o que causou o acordo oposto, uma ordem de mercado executada ou uma ordem pendente desencadeada. O exemplo abaixo mostra a execução de dois EURUSD Buy deal 0.5 lots each: Execução de ambos os negócios resultou em uma posição comum de 1 lote. Sistema de cobertura Com este sistema, você pode ter múltiplas posições abertas de um e o mesmo símbolo, incluindo posições opostas. Se você tem uma posição aberta para um símbolo e executa um novo acordo (ou uma ordem pendente dispara), uma nova posição é adicionalmente aberta. Sua posição atual não muda. O exemplo abaixo mostra a execução de dois EURUSD Buy deal 0.5 lots each: A execução desses negócios resultou na abertura de duas posições separadas. Impacto do sistema selecionado Dependendo do sistema de contabilidade de posição, algumas das funções da plataforma podem ter um comportamento diferente: Alterar a perda de perdas e tomar ganhos. Para fechar uma posição no sistema de rede, você deve executar uma operação de negociação oposta para o mesmo símbolo e o mesmo volume. Para fechar uma posição no sistema de cobertura, selecione explicitamente o comando quotClose Positionquot no menu de contexto da posição. Uma posição não pode ser revertida no sistema de hedge. Nesse caso, a posição atual é fechada e uma nova com o volume restante é aberta. No sistema de hedge, uma nova condição para o cálculo de margem está disponível Margem coberta. Tipos de Pedidos A plataforma de negociação permite preparar e emitir pedidos para que o corretor execute operações de negociação. Além disso, a plataforma permite controlar e gerenciar posições abertas. Vários tipos de ordens comerciais são utilizados para esses fins. Um pedido é uma instrução de comerciante para o corretor para executar uma operação comercial. Na plataforma, os pedidos são divididos em dois tipos principais: mercado e pendentes. Além disso, há pedidos especiais Stop Loss e Take Profit. Ordem de mercado Um pedido de mercado é uma instrução dada a uma corretora para comprar ou vender um instrumento financeiro. A execução deste pedido resulta na execução de um acordo. O preço ao qual o contrato é executado é determinado pelo tipo de execução que depende do tipo de símbolo. Geralmente, uma segurança é comprada ao preço Ask e vendida no preço da Oferta. Ordem pendente Um pedido pendente é a instrução do comerciante para uma empresa de corretagem para comprar ou vender uma garantia no futuro em condições pré-definidas. Os seguintes tipos de pedidos pendentes estão disponíveis: Compre Limite um pedido comercial para comprar no preço Ask igual ou inferior ao especificado na ordem. O nível de preço atual é maior que o valor especificado na ordem. Normalmente, esse pedido é colocado em antecipação a que o preço de segurança cairá para um determinado nível e, em seguida, aumentará a compra. Pare uma ordem comercial para comprar no preço quotAskquot igual ou superior ao especificado na ordem. O nível de preço atual é inferior ao valor especificado na ordem. Normalmente, este pedido é colocado na antecipação de que o preço atingirá um certo nível e continuará a crescer o Limite de venda de uma ordem comercial para vender no preço quotBidquot igual ou maior do que o especificado na ordem. O nível de preço atual é inferior ao valor especificado na ordem. Normalmente, este pedido é colocado em antecipação de que o preço de segurança aumentará para um determinado nível e cairá em seguida, Venda Pare uma ordem comercial para vender no preço quotBidquot igual ou inferior ao especificado na ordem. O nível de preço atual é maior do que o valor na ordem. Normalmente, esse pedido é colocado em antecipação a que o preço da segurança atingirá um certo nível e continuará caindo. Comprar Stop Limit, este tipo é a combinação dos dois primeiros tipos, sendo uma ordem de parada para colocar uma ordem Limite de Compra. Assim que o futuro preço Ask atinge o nível de parada indicado na ordem (o campo Preço), um pedido de Limite de Compra será colocado no nível, especificado no campo de preço Limite de Parada. Um nível de parada está definido acima do preço atual da Ask, enquanto o preço Stop Limit está definido abaixo do nível de parada. Sell Stop Limit this order é uma ordem de parada para colocar uma ordem Limite de Venda. Assim que o preço do lance futuro atingir o nível de parada indicado na ordem (o campo de preço), um pedido de limite de venda será colocado no nível, especificado no campo de limite de limite de limite. Um nível de parada é definido abaixo do preço atual do lance, enquanto o preço do limite de parada está definido acima do nível de parada. Para símbolos com os modos de cálculo Exchange Stocks, Futuros de Câmbio e Futuros Forts. Todos os tipos de pedidos pendentes são acionados de acordo com as regras da troca onde a negociação é realizada. Normalmente, o último preço (preço da última transação realizada) é aplicado. Em outras palavras, uma ordem dispara quando o último preço toca o preço especificado na ordem. Mas note que comprar ou vender como resultado do desencadeamento de um pedido é sempre realizado pelos preços Ask e Bid, respectivamente. No modo de execução de quotExchange, o preço especificado ao colocar ordens de limite não é verificado. Pode ser especificado acima do preço atual da Ask (para os Pedidos de Limites de Compra) e abaixo do preço atual da Oferta (para as ordens Limite de Venda). Ao fazer um pedido com esse preço, ele dispara quase que imediatamente e se transforma em um mercado. No entanto, ao contrário de ordens de mercado onde um comerciante concorda em realizar um acordo por um preço de mercado atual não especificado, um pedido pendente será executado a um preço não pior do que o especificado. Tire proveito A ordem Take Profit destina-se a obter o lucro quando o preço de segurança atingir um determinado nível. A execução deste pedido resulta no fechamento completo de toda a posição. Está sempre conectado a uma posição aberta ou a uma ordem pendente. O pedido pode ser solicitado apenas junto com um mercado ou um pedido pendente. Esta condição de pedido para posições longas é verificada usando o preço de lance (a ordem sempre é definida acima do preço atual da compra) e o preço de Ask é usado para posições curtas (a ordem sempre está definida abaixo do preço atual). Este pedido é usado para minimizar perdas se o preço de segurança mover a direção errada. Se o preço de segurança atingir esse nível, a posição inteira é fechada automaticamente. Essas ordens estão sempre associadas a uma posição aberta ou a uma ordem pendente. Eles só podem ser solicitados com um mercado ou um pedido pendente. Esta condição de pedido para posições longas é verificada usando o preço de lance (a ordem sempre está definida abaixo do preço atual da Oferta) e o preço de Ask é usado para posições curtas (a ordem sempre está definida acima do preço atual da Ask). Regras de perda de parada e herança de lucro (compensação): quando um volume de posição é aumentado ou a posição é invertida, Take Lucro e Stop Loss são colocados de acordo com sua última ordem (mercado ou ordem pendente desencadeada). Em outras palavras, os níveis de parada em cada ordem subseqüente da mesma posição substituem os anteriores. Se os valores de zero forem especificados na ordem, Stop Loss e Take Profit de uma posição serão excluídos. Se uma posição estiver parcialmente fechada, Stop Loss e Take Profit não são alterados pela nova ordem. Se uma posição estiver totalmente fechada, os níveis Stop Loss e Take Profit são excluídos, porque estão associados a uma posição aberta e não podem existir sem ela. Quando uma operação de comércio é executada para um símbolo, para o qual há uma posição, a parada atual e o lucro da vantagem da posição aberta são inseridos automaticamente na janela de colocação de pedidos. Isso visa evitar a exclusão acidental das ordens de parada atuais. Durante uma operação de troca de um clique (de um painel no gráfico ou do Market Watch) para o símbolo, para o qual há uma posição, os valores atuais de Stop Loss e Take Profit não são alterados. Nos mercados OTC (Forex, CFD, Futuros), quando uma posição é movida para o próximo dia de negociação (o swap), incluindo o swap através da reabertura, os níveis de Stop Loss e Take Profit permanecem inalterados. No mercado de câmbio, quando uma posição é movida para o próximo dia de negociação (o swap), bem como quando é transferida para outra conta ou durante a entrega, os níveis de Stop Loss e Take Profit são reiniciados. Stop Loss and Take Profit herança rule (hedging): Se uma posição é parcialmente fechada, Stop Loss e Take Profit não são alterados pela nova ordem. Se uma posição estiver totalmente fechada, os níveis Stop Loss e Take Profit são excluídos, porque estão associados a uma posição aberta e não podem existir sem ela. Durante uma operação de troca de um clique (de um painel no gráfico ou Profundidade do Mercado), os níveis Stop Loss e Take Profit não estão configurados. Essas regras aplicam tanto ao negociar manualmente quanto ao fazer pedidos de Expert Advisors (programas MQL5). Trailing Stop pode ser usado para fazer Stop Loss seguir o preço automaticamente. A ativação dos resultados da Take Profit ou Stop Loss no fechamento completo de toda a posição. Para símbolos com os modos de cálculo Exchange Stocks, Futuros de Câmbio e Futuros Forts. As ordens Stop Loss e Take Profit são acionadas de acordo com as regras da troca em que a negociação é realizada. Normalmente, o último preço (preço da última transação realizada) é aplicado. Em outras palavras, um stop-order dispara quando o último preço toca o preço especificado. No entanto, note que comprar ou vender como resultado da ativação de um pedido de parada sempre é executado pelos preços Bid e Ask. Trailing Stop Stop Loss é usado para minimizar perdas se o preço de segurança mover a direção errada. Uma vez que uma posição se torna rentável, a Stop Loss pode ser movida manualmente para um nível de equilíbrio. O Trailing Stop automatiza esse processo. Esta ferramenta é especialmente útil durante um forte movimento de preços unidirecional ou quando é impossível monitorar o mercado continuamente por algum motivo. Trailing Stop está sempre associado a uma posição aberta ou a uma ordem pendente. É executado na plataforma de negociação e não no servidor como Stop Loss. Para definir um Trailing Stop, selecione quotTrailing Stopquot no menu de contexto de uma posição ou uma ordem na guia quotTradingquot: Selecione um valor necessário de uma distância entre o nível Stop Loss e o preço atual. Para cada posição aberta ou ordem pendente, apenas um Trailing Stop pode ser configurado. Esquema de Trailing Stop Operation Quando chegam novas cotações, a plataforma verifica se uma posição aberta é lucrativa. Assim que o lucro em pontos se tornar igual ou maior do que o nível indicado, um comando automático é gerado para colocar uma Perda de Parada à distância indicada do preço atual. Se o preço se move aumentando o lucro da posição, quotStop Lossquot se move automaticamente junto com o preço. Caso contrário, a ordem não é modificada. Assim, o lucro de uma posição de negociação é corrigido automaticamente. Se uma Perda de Parada foi definida para a posição, ela também segue o preço quando o lucro do cargo aumenta e permanece inalterado se ele diminui. Quando uma ordem pendente desencadeia, a parada final da posição atual para o mesmo símbolo é substituída pela parada posterior especificada para a ordem. Se um acordo feito como resultado do desencadeamento de uma ordem pendente tiver a direção oposta à posição atual para o símbolo e tiver um volume menor ou igual, então a parada final não será substituída. Com cada modificação automática de Stop Loss, uma entrada é adicionada ao jornal. O Trailing Stop é executado na plataforma de negociação e não no servidor (como Stop Loss ou Take Profit). É por isso que não funcionará, ao contrário dos pedidos acima, se a plataforma estiver desligada. Nesse caso, somente o nível Stop Loss definido pelo Trailing Stop será ativado. Para uma posição, Trailing Stop não pode ocorrer mais de uma vez a cada 10 segundos. Estado das encomendas Depois que um pedido foi formado e enviado para um servidor de comércio, ele pode passar pelas seguintes etapas: Iniciou-se a verificação do pedido, mas ainda não foi aceito pelo corretor Colocado um revendedor aceitou o pedido Encheu parcialmente o O pedido é preenchido parcialmente Preenchido o pedido completo é preenchido Cancelado o pedido é cancelado pelo cliente Rejeitado o pedido é rejeitado por um revendedor Expirou o pedido foi cancelado devido à sua expiração. Você pode ver o estado dos pedidos na guia quotHistoryquot no campo quotStatequot. O estado das ordens pendentes que ainda não foram ativadas pode ser visualizado na guia quotTradequot. Tipos de Execução Quatro modos de execução de pedidos estão disponíveis na plataforma de negociação: Execução Instantânea Neste modo, uma ordem é executada ao preço oferecido a um corretor. Ao enviar uma ordem para ser executada, a plataforma adiciona automaticamente os preços atuais à ordem. Se o corretor aceita os preços, a ordem será executada. Se o corretor não aceitar o preço solicitado, um quotRequotequot é enviado o corretor retorna os preços, nos quais essa ordem pode ser executada. Execução de Solicitação Neste modo, uma ordem de mercado é executada ao preço recebido anteriormente de um corretor. Os preços de uma determinada ordem de mercado são solicitados ao corretor antes do envio do pedido. Depois que os preços foram recebidos, a execução da ordem ao preço determinado pode ser confirmada ou rejeitada. Execução do mercado Neste modo de execução da ordem, um corretor toma uma decisão sobre o preço de execução da ordem sem qualquer discussão adicional com um comerciante. Enviar um pedido nesse modo significa consentimento antecipado para sua execução a esse preço. Execução do Exchange Neste modo, as operações comerciais realizadas na plataforma de negociação são enviadas para um sistema de troca externa (troca). As operações comerciais são executadas aos preços das ofertas atuais do mercado. O modo de execução para cada segurança é definido pela empresa de corretagem. Política de preenchimento Além das regras comuns de execução de ordem definidas por um corretor, um comerciante pode indicar condições adicionais no campo quotFill Policyquot da janela de colocação de pedidos: Fill or Kill (FOK) Esta política de preenchimento significa que uma ordem pode ser preenchida somente em O volume especificado. Se o montante necessário de um instrumento financeiro não estiver disponível no mercado, o pedido não será executado. O volume necessário pode ser preenchido por várias ofertas disponíveis no mercado no momento. Imediato ou Cancelar (COI) Neste caso, um comerciante concorda em executar um acordo com o volume máximo disponível no mercado dentro do indicado na ordem. Caso o pedido não possa ser preenchido completamente, o volume disponível da encomenda será preenchido e o volume restante será cancelado. A possibilidade de usar ordens do COI é determinada no servidor de comércio. Retornar Esta política é usada apenas para pedidos de mercado (Compra e Vender), limite e pedidos de limite de parada e apenas para os símbolos com a execução do Mercado ou do Exchange. Se preenchido parcialmente, uma ordem de mercado ou limite com o volume restante não é cancelada e é processada posteriormente. O uso de políticas de preenchimento dependendo do tipo de execução pode ser mostrado como a tabela a seguir: Tipo de ExecutionFill Policy