Desenvolveu uma biblioteca de funções API para o MetaTrader 4 - página 6

 
<br / translate="no"> Note também que Omega "não sabe" as definições do arquivo Mforex.h. Isto é, por exemplo, ao chamar a função de abertura de posição, você deve especificar o código de operação para, digamos, Sell - 1, não OP_SELL, etc. Para mais detalhes, consulte a documentação DevKit, que descreve a forma como o ômega funciona com bibliotecas externas.
Boa sorte!


Eu tenho a documentação para DevKit, mas não encontrei nada lá, o inglês é uma floresta escura.
Mas há um extrato do documento mforex.n,
Encomendas
enum { OP_BUY=0,
OP_SELL,
OP_BUY_LIMIT,
OP_SELL_LIMIT,
OP_BUY_STOP,
OP_SELL_STOP,
OP_BALANÇA,
OP_CREDIT
};

isso significa que se
OP_BUY=0 então
OP_SELL=1 e
OP_BUY_LIMIT=2 etc.?

Se assim for, não é difícil.

E o nome da ferramenta?
 
<br / translate="no"> E quanto ao nome da Ferramenta?

Você mesmo já percebeu tudo isso. O nome da ferramenta deve estar entre aspas, pois é passado para MT4 inalterado. Quando criei a biblioteca MFOREX, inicialmente quis numerar todos os pares disponíveis da mesma forma, mas depois descobri que as formas padrão não podem fornecer uma lista de instrumentos negociados! Portanto, escrevemos apenas "USDCHF" ou "GBPUSD".
Você também pode passar o nome do par em uma variável de corda.
Boa sorte!
 
Muito obrigado, menos problemas com o Ômega até agora.
Eu encontrei um problema maior:
O Expert Advisor em MT4 está quebrado, ou seja, não funciona sozinho, está cinza na lista, o que fazer?
Fiz o download novamente e ele não mudou.

Fiz o download na HELP:

Uma vez concluído o desenvolvimento, você precisa compilar a EA. Para fazer isso, execute o comando do menu "Arquivo - Compilar" no editor EA, pressione F9 ou clique no botão da barra de ferramentas. Como resultado da compilação bem sucedida, um arquivo executável do programa com a extensão *.EX4 será criado e será automaticamente colocado na pasta /EXPERTS. A lista de Expert Advisors compilada pode ser visualizada na janela "Navigator - Expert Advisors" do terminal do cliente. Se a compilação não for bem sucedida, o ícone do Consultor Especialista ficará cinzento. Isso significa que não pode ser usado.
 
Como resultado da compilação bem sucedida, um arquivo de programa executável com extensão *.EX4 é criado, que é automaticamente colocado na pasta /EXPERTS. A lista de EAs compilados pode ser visualizada na janela Navigator-Advisors do terminal do cliente. Se a compilação não for bem sucedida, o ícone do Consultor Especialista ficará cinzento. Isso significa que não pode ser usado. <br / translate="no">

Você está errado aqui. O Expert Advisor é totalmente viável. A cor cinza também significa que não existe um arquivo fonte *.MQ4. A maioria dos EAs comerciais são distribuídos desta forma em forma compilada. Tente remover a fonte de qualquer Expert Advisor e reinicie o terminal - o Expert Advisor se tornará cinzento.
Além disso, aconselho a substituição do arquivo Mem.dll por um novo. Converti este último para a nova construção do terminal comercial 197. A Mem.dll já foi alterada para a nova versão nos arquivos do meu site:
http://www.min2006.ru
Boa sorte!
 
Boa tarde, eu tenho esta pergunta:
se eu quiser entrar no mercado por mercado, ainda tenho que especificar um preço?
 
Boa tarde, então eu tenho esta pergunta:<br/ translate="no"> se eu quiser entrar no mercado por mercado, ainda preciso especificar um preço?

Olá, este é um procedimento padrão. Todos os Expert Advisors trabalham desta forma: primeiro, você obtém o preço atual (a função TikKot) e depois forma um novo pedido a este preço (NewPos). Se você abrir uma ordem de compra, você aceitará o preço Ask, e se você vender uma ordem, você aceitará o preço Bid.
Veja o exemplo em meu site em C++ ou Delphi. Aí você pode encontrar variantes de abertura de posição.
Boa sorte!
 
Então, ontem eu estava rodando DLL em Omega o dia todo com diferentes funções e descobri que Omega está constantemente pendurado de DLL. A janela de número do computador aparece e mesmo alguns, eu não sei se isso é um problema apenas na demonstração ou o quê? Portanto, não me incomoda muito a janela numérica, mas o Ômega pendurado torna impossível o trabalho...
 
Então, ontem eu estava rodando DLL em Omega o dia todo com diferentes funções e descobri que Omega está constantemente pendurado de DLL. A janela de número do computador aparece e mesmo alguns, eu não sei se isso é um problema apenas na demonstração ou o quê? Portanto, a janela com o número não me incomoda muito, mas o ômega pendurado torna impossível o trabalho... <br/ translate="no">

Não posso responder nada específico. Ainda não testei a biblioteca com Omega. Aparentemente, o problema é uma chamada de função incorreta da biblioteca. Você já reservou a memória para as matrizes de dados devolvidos? Também posso recomendar que você investigue cuidadosamente os registros do MT4 e a própria biblioteca (ela cria o arquivo Protokol.dat quando ele funciona).
A janela com número de computador aparece apenas na versão demo. Boa sorte!
 
Você já reservou memória para os conjuntos de dados devolvidos? <br / translate="no">


Como isso é feito?
 
<br/ translate="no">Como você faz isso?

É um procedimento padrão para qualquer linguagem de programação. Veja na documentação da Omega. Você precisa declarar uma matriz para seu uso posterior. Por exemplo, para obter o histórico de citações, você precisa de 2000-5000 elementos de matriz. Para a matriz, antes da operação, precisamos usar Omega para alocar o espaço necessário na memória.
Você já viu o que está nos troncos?