Perguntas de Iniciantes MQL5 MT5 MetaTrader 5 - página 100
Você está perdendo oportunidades de negociação:
- Aplicativos de negociação gratuitos
- 8 000+ sinais para cópia
- Notícias econômicas para análise dos mercados financeiros
Registro
Login
Você concorda com a política do site e com os termos de uso
Se você não tem uma conta, por favor registre-se
int index // номер сделки
);
O que é um número de transacção?
Como selecciono a última profissão? Índice 0?
Tenho uma conta com uma posição aberta e uma história de negócios. Quero seleccionar a última profissão:
#include <Trade\DealInfo.mqh>
CDealInfo deal;
for(int n=20;n>=0;n--)
{
deal.SelectByIndex(n);
Print("Тикет сделки=",deal.Ticket()," n=",n);
}
Todos os carrapatos 0...
int index // номер сделки
);
O que é um número de transacção?
Ver descrição da função HistoryDealGetTicket(). Há também um exemplo de como trabalhar com a lista de acordos.
Tentei sugerir uma resposta à sua pergunta "O que é um número de transacção? Podemos presumir que já tratou desta questão?
1. Infelizmente, tento não utilizar a Biblioteca Standard, pelo que não posso dar conselhos adequados sobre como trabalhar com o método SelectByIndex(). Posso apenas notar que a própria classe CDealInfo está posicionada como uma classe para trabalhar com propriedades de transacção, ou seja, as questões de obter a lista de transacções parecem ser deixadas de fora.
2. Como sabe, o método SelectByIndex() utiliza simplesmente a função HistoryDealGetTicket(). Da descrição destafunção decorre que antes de aceder ao negócio é necessário obter a lista de todos os negócios . Em particular,
Há cerca de um ano, perguntei no fórum, se é possível considerar que o último acordo da lista tem sempre um índice de HistoryDealsTotal()-1, mas não recebi resposta (ou não reparei, o que é improvável). Usando o método da prova científica, não encontrei uma refutação desta tese. Assim, logicamente, cada novo negócio, cuja informação é recebida no terminal de base, deveria simplesmente aumentar a lista de negócios em um e, respectivamente, os índices da lista de negócios seriam atribuídos a cada novo negócio em ordem ascendente. Como é na realidade - não sei.
3. Sugiro também a leitura do artigoEncomendas, Posições e Ofícios no MetaTrader 5 e (não o li eu próprio) - Como utilizar as classes de comércio da Biblioteca Standard ao escrever um Consultor Especialista.
É tudo :)
Peritos, ajuda, por favor. Construí dois EAs para, por assim dizer, efeito sinérgico, os mais simples parecem ligar-se, mas este não se compila, embora tenha feito tudo correctamente como com o anterior. Aqui está o que ele dá
'Supervisor' - função só pode ser declarada no âmbito global 20_200_pips_MQL5_v1.mq5 360 18
'Perceptron' - função só pode ser declarada no âmbito global 20_200_pips_MQL5_v1.mq5 418 8
'basicTradingSystem' - função só pode ser declarada no âmbito global 20_200_pips_MQL5_v1.mq5 434 6
A função só pode ser declarada no âmbito global
Estou realmente confuso onde está o alcance global
'Supervisor' - função só pode ser declarada no âmbito global 20_200_pips_MQL5_v1.mq5 360 18
'Perceptron' - função só pode ser declarada no âmbito global 20_200_pips_MQL5_v1.mq5 418 8
'basicTradingSystem' - função só pode ser declarada no âmbito global 20_200_pips_MQL5_v1.mq5 434 6
A função só pode ser declarada no âmbito global
Estou realmente confuso onde está o alcance global
Tais mensagens aparecem, por exemplo, quando uma função é declarada dentro de outra. Veja se há algo parecido com isto no código: