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
Tenho que trabalhar agora.
Esta linha while(!IsAllClosed) {CloseAllTrades(); return;}
no início principal fechará todas as posições abertas se a MT cair
e eu o inicio novamente. Existe uma maneira de colocar esta linha
na função de fechamento de negócios para não fechar todas as posições abertas
após o reinício do MT4?
obrigado.Sim, desculpe, você pode definir o bool na hora de início assim:
Then it becomes even better to define a extern variable, so you can keep the control :[PHP]extern bool CloseAll = false ; //Global variable
void CloseAllTrades()
{
int cnt;
CloseAll = false;
for(cnt=OrdersTotal()-1;cnt>=0;cnt--)
{
OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES);
if (OrderMagicNumber()==GetMagicNumber())
CloseAll = CloseAll || !OrderClose(OrderTicket(), OrderLots(), OrderClosePrice(), MarketInfo(OrderSymbol(), MODE_SPREAD), Yellow);
}
}
void start()
{
while(CloseAll) {CloseAllTrades(); return;}
...
A principal vantagem deste método é que a EA tenta fechar cada posição a cada tick até que todos sejam fechados.
ajuda necessária com minha primeira EA semi-profissional
Olá a todos...
Fiz um EA pelo site do grande consultor especialista bulder e o testei e achei lucrativo para o último ano, mas acho que isso pode ser melhorado ...
Então, se alguém pode ajudar a melhorar essa EA ?
detalhou sobre a EA...
a EA passou em dois indecadores, um deles é meu e o outro pode ser encontrado em "zero lag macd" público quatroms
agora o especialista está trabalhando o tempo todo para entrar comprar e depois fechar e inverter para vender e assim por diante ...
preciso fazer com que funcione apenas nos tempos de spesfic, adicionar uma gestão de dinheiro e a última coisa que preciso para atrasar a excução de compra ou venda com a próxima vela de "1 minuto", mas o trabalho da EA na vela de 1H de fato ...
então espero encontrar como posso ajudar nisso
Obrigado a todos vocês
Com os melhores cumprimentos
Tamer
como se referir ao nome do arquivo que estou executando?
Hi,
Eu quero saber como posso me referir a um nome de arquivo que estou executando.
Por exemplo, se eu executar um script chamado supertrader.mq4 e eu quero abrir um arquivo de log chamado supertrader_logfile do script supertrader.
Existe alguma variável que contenha o nome do arquivo que estou executando?
Obrigado.
Hi,
Eu quero saber como posso me referir a um nome de arquivo que estou executando.
Por exemplo, se eu executar um script chamado supertrader.mq4 e eu quero abrir um arquivo de log chamado supertrader_logfile do script supertrader.
Existe alguma variável que contenha o nome do arquivo que estou executando?
Obrigado.Talvez adicionando void Print( ...) ao script.
void Print( ...) Imprime uma mensagem para o log dos especialistas.
Para a adria
Você viu o meu PM?
Big Be
Onda de Lobo. Eu preciso de sua ajuda
Prezado Codersguru,
Eu não sou um programador e em meu estilo de tentativa e erro, a onda lobo que tentei melhorar está dando o sinal "o segundo parâmetro, ObjectTextSetFunction deve ser uma corda".
Por favor, ajude-me a retificar.
Obrigado por antecipação.
Oi pessoal, eu preciso de uma função de bool que retorne verdadeiro se 5 minutos já passaram, ou 10 minutos ou o que for. Já sei como verificar se há uma nova barra, mas não é frequente o suficiente.
Oi pessoal, eu preciso de uma função de bool que retorne verdadeiro se 5 minutos já passaram, ou 10 minutos ou o que for. Já sei como verificar se há uma nova barra, mas não é frequente o suficiente.
Talvez
double LastRedraw = 0;
if(TimeLocal() - LastRedraw > 300)
{
Print();
ObjectsRedraw();
Print("ObjectsRedraw Done");
LastRedraw = TimeLocal();
}
Talvez
double LastRedraw = 0;
if(TimeLocal() - LastRedraw > 300)
{
Print();
ObjectsRedraw();
Print("ObjectsRedraw Done");
LastRedraw = TimeLocal();
}
[/code]Ou isto:
[CÓDIGO]
bool ElapsedTimeCheck(int MyMinutes)
{
data/hora estática OldTime;
se (OldTime == 0)
OldTime = TimeCurrent() + MyMinutes * 60; // rubricado uma vez...
se (TimeCurrent() >= OldTime)
{
OldTime = TimeCurrent() + MyMinutes * 60;
bool cond = true;
}
senão cond = falso;
return(cond);
}