Discussão do artigo "Como Proteger Seu Expert Advisor Investindo na Bolsa de Moscou" - página 6

 
Andrey Miguzov #:

SZY:

Para realizar a negociação correta em uma conta por diferentes especialistas nos mesmos instrumentos (você escreveu sobre esse tópico em outros tópicos), foi necessário mais tempo do que para escrever e testar a estratégia principal :). E ainda não tenho certeza de que tudo funciona corretamente.

Huh... Eu sei. Do necro-desenvolvimento: https: //www.mql5.com/ru/market/product/5011?source=Site+Market+Product+Page#description 2013, a propósito. Agora ele está no github e ninguém precisa dele. Em geral, a ideia era interessante, embora errada. Agora, criei uma unidade com base no sistema de contagem de votos na forma de lotes. Ele funciona de forma mais fácil e mais confiável. Em geral, ele oferece mais vantagens. O lado negativo é que não é possível visualizar as estatísticas de cada estratégia separadamente no real.

Скачайте Торговую утилиту 'HedgeTerminalUltimate' для MetaTrader 5 в магазине MetaTrader Market
Скачайте Торговую утилиту 'HedgeTerminalUltimate' для MetaTrader 5 в магазине MetaTrader Market
  • www.mql5.com
Торгуйте разнонаправленно вместе с HedgeTerminal HedgeTerminal - это полноценный торговый терминал внутри самого торгового терминала MetaTrader 5. Это
 
Pavel Malyshko #:

O que há de errado com isso? A própria tecnologia das ordens com limite obriga o corretor a executar o melhor preço se ele tiver uma licença do banco central.

É óbvio que você é do mundo forex. A ordem de limite de um corretor não o obriga a executá-la. Uma contraparte, especificamente um tomador de preços, que entra no mercado, e não necessariamente com uma ordem de mercado, executa a ordem de limite. Nesse caso, os tomadores de preço devem querer comprar quando você vende e vender quando você compra. Se você perseguir o preço, querendo acompanhá-lo em uma direção, seu limitador não será útil para ninguém e ficará para trás muito rapidamente.

 
tapo #:

Muito interessante, como, na presença de um spread, um limite pode ser pior do que uma entrada no mercado? E se a entrada no mercado satisfaz o limite de lucro (-comissão), então por que a necessidade de um limite?

No momento, você está certo. Mas o exemplo é simples: você precisa comprar a 1000. Há um limite - o mercado foi em sua direção e você foi vendido a 1000. E o preço se tornou em 50 ms - 900 :) Comprar a 900 é melhor do que comprar a 1.000?

O preço limite está no spread e, do ponto de vista do TC, 1000 é um ótimo preço. Mas 900 é ainda melhor...

tapo #:

Como você implementou isso? Não por meio de variáveis globais do terminal?

De acordo com os preceitos de meus colegas (muito obrigado a eles), eu gravo dados sobre a última posição no arquivo :) Ao iniciar o Expert Advisor, se houver discrepâncias com o arquivo, eu procuro o histórico da posição (por meio de negociações com o identificador e magik). Se não houver nenhuma posição no momento, eu examino o histórico de negociações (por magik).

Pelo que entendi, essa não é a única maneira, mas é a mais clara para mim.

Vasiliy Sokolov #:

O lado negativo é que é impossível visualizar as estatísticas de cada estratégia separadamente no real.

Cara, eu ainda não tinha pensado nisso....

 
Andrey Miguzov #:

De acordo com os preceitos de meus colegas (muito obrigado a eles), eu escrevo dados sobre a última posição no arquivo :) Ao iniciar o Expert Advisor, se houver discrepâncias com o arquivo, eu examino o histórico da posição (por meio de negociações com o identificador e magik). Se não houver nenhuma posição no momento, eu examino o histórico de transações (por magik).

Pelo que sei, essa não é a única maneira, mas é a que faz mais sentido para mim.

Cara, eu ainda não tinha pensado nisso....

Você está errado sobre o arquivo. Tente usar uma base em vez de um arquivo. Nós realmente usamos arquivos ativamente na última década, quando não havia capacidade nativa de trabalhar com um banco de dados. Agora todos esses casos estão obsoletos.

 
Vasiliy Sokolov #:

Você está errado sobre o arquivo. Tente usar um banco de dados em vez de um arquivo. Nós realmente usamos arquivos ativamente na última década, quando não havia capacidade nativa de trabalhar com um banco de dados. Agora, todos esses casos estão obsoletos.

Sobre o banco de dados - em princípio, é interessante. Mas não o SQLite, e sim o PostgreSQL ou o MySQL.

 
A base incorporada tem suas vantagens: suporte nativo, é mais fácil implementar um complexo de compras em um vps. O local também é uma vantagem para pequenas tarefas. De fato, basta trabalhar com um arquivo local. Facilidade de uso. As grandes bases completas certamente também têm seu lugar, mas provavelmente para algo mais complexo. Além disso, você precisa escrever seu próprio driver para o mql. Isso é outro prazer.
 
Vasiliy Sokolov em um vps. O local também é uma vantagem para pequenas tarefas. De fato, basta trabalhar com um arquivo local. Facilidade de uso. Grandes bases completas certamente também têm seu lugar, mas provavelmente para algo mais complexo. Além disso, você precisa escrever seu próprio driver para o mql. Isso é outro prazer.

Integrado - se for pequeno.

E se houver 10.000 robôs (incluindo robôs de teste) e cada um deles armazenar posições, ordens, estatísticas, nível de parada atual etc., dificilmente conseguirá lidar com isso. - ele dificilmente conseguirá lidar com isso.

 
Vasiliy Sokolov #:

Você está errado sobre o arquivo. Tente usar um banco de dados em vez de um arquivo. Nós realmente usamos arquivos ativamente na última década, quando não havia capacidade nativa de trabalhar com um banco de dados. Agora, todos esses casos estão obsoletos.

Não gosto muito do arquivo, mas, na verdade, ele é necessário apenas para memorizar o ponto extremo a partir do qual o banco de dados de transações no histórico da conta é pesquisado (para não ter que vasculhar todo o histórico). Assim que eu tiver em mãos o arquivo, vou refazê-lo, só que ainda não trabalhei com bases por meio do MQL - preciso entendê-lo.

 

Fórum sobre negociação, sistemas de negociação automatizados e teste de estratégias de negociação

Discussão do artigo "Como proteger você e seu Expert Advisor ao negociar na Bolsa de Valores de Moscou"

Andrey Miguzov, 2022.06.29 12:24 AM

No momento - você está certo. Portanto, o exemplo é simples: você precisa comprar por 1000. Há um limite - o mercado foi em sua direção e você foi vendido a 1000. E o preço se tornou em 50 ms - 900 :) Comprar a 900 é melhor do que comprar a 1.000?

O preço limite está no spread e, do ponto de vista do TC, 1000 é um ótimo preço. Mas 900 é ainda melhor...

Tudo de acordo com os preceitos de meus colegas (muito obrigado) - eu escrevo os dados na última posição do arquivo:) Ao iniciar o Expert Advisor, se houver discrepâncias com o arquivo, eu procuro o histórico da posição (por meio de negócios com o identificador e magik). Se não houver nenhuma posição no momento, eu procuro no histórico de negociações (por magik).

Pelo que entendi, essa não é a única maneira, mas é a mais clara para mim.

Cara, eu ainda não tinha pensado nisso....

Seu exemplo tem cabimento, é claro, mas nesse caso representamos duas coisas diferentes. Estou falando de spread amplo e liquidez extremamente baixa. Onde muitos segundos ou até minutos precisam se passar para que a situação que você descreveu ocorra. Em sua situação, acho que as marcas são a melhor solução.


IMHO, não é a melhor solução. Se for o Finam (varia de corretora para corretora), então, na minha opinião, ele fornece tudo o que é necessário para o cálculo em tempo real (análise do histórico de negociações). Mas, dessa forma, você precisa verificar o arquivo adicionalmente, e não está claro por que isso é necessário. GlobalVariableSetOnCondition() para evitar que vários Expert Advisors entrem ao mesmo tempo.

 
JRandomTrader #:

Embutido - se for pequeno.

Mas se houver 10.000 robôs (incluindo os robôs de teste) e cada um deles armazenar posições, ordens, estatísticas, nível de parada atual etc., dificilmente ele conseguirá lidar com isso. - ele dificilmente conseguirá lidar com isso.

Se você tiver um número tão grande de robôs, e não for um exemplo hipotético, recomendo mudar para um sistema de consenso/votação. Com um número tão grande de sistemas, será uma ordem de magnitude mais fácil de trabalhar.