Discussão do artigo "Trabalhando preços na biblioteca DoEasy (Parte 63): livro de ofertas, classe de ordem abstrata do livro de ofertas"
Não julgue com severidade. Epigrama.
Todos nós já escrevemos um pouco,
Sobre algo e alguma coisa.
Ele é o único que já foi para a estrada,
Com uma piscadela astuta.
Há muito código nessa estrada,
E as linhas são muitas para contar.
E se não fosse pela Mãe Natureza
Eu nunca as superaria!
Minha caneta estava pedindo por isso,
Para dizer algo mais
Mas ele está sozinho na estrada
Da qual todos nós não podemos voltar atrás.
Fevereiro, 2021
Olá Artyom,
Primeiramente parabéns pelo artigo, simplesmente fantástico!!! Uma pergunta, pelo que pude perceber você não aborda a posição de uma ordem específica (limit order) em um nível de preço específico... Por exemplo, se minha ordem está na frente da fila (primeira) naquele nível, na metade do caminho ou realmente atrás de todas as ordens.... Estou tentando automatizar uma estratégia para um instrumento muito líquido e com custo de negociação muito baixo, em que eu poderia entrar em uma posição e, potencialmente, sair pelo mesmo preço. Para isso, eu precisaria ter acesso à posição ou à minha ordem na fila de um nível de preço específico... Parece que não encontrei essa discussão em lugar algum.
Você sabe como eu poderia recuperar essas informações, desde que a bolsa ofereça suporte a essas informações?
Com os melhores cumprimentos
André Oliveira
Olá, Artyom,
Primeiramente parabéns pelo artigo, simplesmente fantástico!!! Uma pergunta, pelo que pude perceber você não aborda a posição de uma ordem específica (limit order) em um nível de preço específico... Por exemplo, se minha ordem está na frente da fila (primeira) naquele nível, na metade do caminho ou realmente atrás de todas as ordens.... Estou tentando automatizar uma estratégia para um instrumento muito líquido e com custo de negociação muito baixo, em que eu poderia entrar em uma posição e potencialmente sair pelo mesmo preço. Para isso, eu precisaria ter acesso à posição ou à minha ordem na fila de um nível de preço específico... Parece que não encontrei essa discussão em lugar algum.
Você sabe como eu poderia obter essas informações, desde que a bolsa ofereça suporte a essas informações?
Com os melhores cumprimentos
André Oliveira
Muito obrigado.
Não entendi um pouco a pergunta - provavelmente a barreira do idioma...
Aqui, a biblioteca lê todos os dados disponíveis que ela pode ler do Depth of Market usando os recursos fornecidos pela MQL.
Tente explicar sua pergunta com exemplos, por favor.
Obrigado.
Eu não entendi um pouco a pergunta - provavelmente a barreira do idioma ...
Aqui, a biblioteca lê todos os dados disponíveis que pode ler do Depth of Market usando os recursos fornecidos pela MQL.
Tente explicar sua pergunta com exemplos, por favor.
Obrigado pela resposta, Artyom, claro, vou tentar explicar melhor.... Para simplificar e facilitar a compreensão, vamos imaginar um "Order Book" hipotético e muito simples com apenas um nível de profundidade de preço, ou seja, ordens de limite no lado da oferta e ordens de limite no lado da oferta... Para o exemplo, vamos imaginar um alto volume de ordens em ambos os lados (digamos, preço de compra 1,34 e preço de venda 1,35). Para este exemplo, vamos imaginar que esse "Order Book" tenha ordens somente nesses dois preços... Nada mais.
Então, eu coloco uma única ordem em ambos os lados (compra e venda) e minhas ordens serão colocadas no final da fila em cada lado (última ordem de compra no lado 1,34 e última ordem de venda no lado 1,35)
À medida que as ordens à frente das minhas forem consumidas ou canceladas, minhas ordens progredirão na fila, e outras ordens limitadas PODERÃO ser colocadas atrás das minhas ordens no mesmo nível de preço....Eu queria saber se existe uma maneira de recuperar a posição das minhas ordens na fila, a qualquer momento. Veja a imagem que anexei.
Agradeço imensamente sua atenção e seu esforço para entender minha pergunta, Artyom. Diga-me se ficou claro. Posso tentar pensar em outros exemplos, caso este não seja bom.
Atenciosamente e, mais uma vez, agradeço seus comentários sobre o assunto.
André Oliveira
André Oliveira
Obrigado pela resposta, Artyom, claro, vou tentar explicar melhor.... Para simplificar e facilitar a compreensão, vamos imaginar um "Order Book" hipotético e muito simples com apenas uma profundidade de nível de preço, ou seja, ordens de limite no lado da oferta e ordens de limite no lado da oferta... Para o exemplo, vamos imaginar um alto volume de ordens em ambos os lados (digamos, preço de compra 1,34 e preço de venda 1,35). Para esse exemplo, vamos imaginar que esse "Order Book" tenha ordens somente nesses dois preços... Nada mais.
Então, eu coloco uma única ordem em ambos os lados (compra e venda) e minhas ordens serão colocadas no final da fila em cada lado (última ordem de compra no lado 1,34 e última ordem de venda no lado 1,35)
À medida que as ordens à frente das minhas forem consumidas ou canceladas, minhas ordens progredirão na fila, e outras ordens limitadas PODERÃO ser colocadas atrás das minhas ordens no mesmo nível de preço....Eu queria saber se existe uma maneira de recuperar a posição das minhas ordens na fila, a qualquer momento. Veja a imagem que anexei.
Agradeço imensamente sua atenção e esforço para entender minha pergunta, Artyom. Diga-me se ficou claro. Posso tentar pensar em outros exemplos, caso este não seja bom.
Meus melhores cumprimentos e, mais uma vez, agradeço seus comentários sobre esta questão.
André Oliveira
André Oliveira
Receio que não possamos ver a fila de ordens no Depth of Market. Corrija-me se eu estiver errado.
Receio que não seja possível ver a fila de ordens no Depth of Market. Corrija-me se eu estiver errado.
Mais uma vez, obrigado por examinar a pergunta, Artyom.... Veja, sou muito novo em programação mql5, mas, pelo menos em nossa bolsa brasileira, aparentemente isso é possível, pois foi implementado no "Order Book" e na "List of Orders" de uma plataforma de negociação chamada Profit e de outra chamada Tryd. Essas duas plataformas de negociação são voltadas para operadores manuais e não enfatizam a negociação automatizada.
Veja a captura de tela em anexo: elas expõem "minha ordem" em amarelo e também mostram todas as outras ordens na frente e atrás... na verdade, elas expõem todos os corretores e tamanhos de ordens... é um processo muito transparente.
Isso provavelmente não é muito comum em outras bolsas (estou supondo, pois não tenho muita experiência em outras bolsas) e, por esse motivo, talvez não seja explorado na linguagem mql5... Tentarei descobrir como isso é exportado para essas plataformas de negociação (deve haver algum tipo de API), apenas pensei que talvez isso já tenha sido explorado no mql5 também.
Artyom, muito obrigado pelos comentários que você fez, muito apreciados. Parabéns por seus artigos, eles têm conteúdo e informações de altíssima qualidade.
Abraço
André Oliveira
Mais uma vez, obrigado por examinar a pergunta, Artyom.... Veja, sou muito novo em programação mql5, mas, pelo menos em nossa Bolsa de Valores brasileira, aparentemente isso é possível, pois foi implementado no "Order Book" e na "List of Orders" de uma plataforma de negociação chamada Profit e de outra chamada Tryd. Essas duas plataformas de negociação são voltadas para operadores manuais e não enfatizam a negociação automatizada.
Veja a captura de tela em anexo, eles expõem "minha ordem" em amarelo e também mostram todas as outras ordens na frente e atrás... na verdade, eles expõem todos os corretores e tamanhos de ordens... é um processo muito transparente.
Isso provavelmente não é muito comum em outras bolsas (estou supondo, pois não tenho muita experiência em outras bolsas) e, por esse motivo, talvez não seja explorado na linguagem mql5... Tentarei descobrir como isso é exportado para essas plataformas de negociação (deve haver algum tipo de API), mas pensei que talvez isso também já tenha sido explorado no mql5.
Artyom, muito obrigado pelos comentários que você fez, muito apreciados. Parabéns por seus artigos, eles têm conteúdo e informações de altíssima qualidade.
Cordiais cumprimentos
André Oliveira
Vou tentar analisar essa questão com mais detalhes. Mas assim que tiver tempo. Infelizmente, não tenho muito tempo.
- Aplicativos de negociação gratuitos
- 8 000+ sinais para cópia
- Notícias econômicas para análise dos mercados financeiros
Você concorda com a política do site e com os termos de uso
Novo artigo Trabalhando preços na biblioteca DoEasy (Parte 63): livro de ofertas, classe de ordem abstrata do livro de ofertas foi publicado:
Neste artigo, começaremos a desenvolver funcionalidades para trabalhar com o livro de ofertas. Criaremos uma classe de objeto para uma ordem abstrata do livro de ofertas e dos seus herdeiros.
Com este artigo, começaremos a criar funcionalidades para trabalhar com o livro de ofertas. Conceitualmente, as classes para trabalhar com o livro de ofertas não serão diferentes de todas as classes da biblioteca previamente escritas. Paralelamente, teremos um “instantâneo” do livro de ofertas que conterá os dados das ordens do livro de ofertas obtidas pela função MarketBookGet() quando o manipulador OnBookEvent() é acionado, além disso, cada um dos seus símbolos, cuja assinatura de eventos é habilitada, desencadeia um evento quando o livro de ofertas muda.
Assim, a estrutura das classes do livro de ofertas será a seguinte:
Hoje vamos criar a classe do objeto-ordem (1) e testar o recebimento dos dados do livro de ofertas quando OnBookEvent() for acionado para o símbolo atual.
Autor: Artyom Trishkin