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
Algumas ajudas, por favor, com um EA
Estou tentando fechar uma ordem de venda e abrir uma nova ordem de compra. A compra abre mas a venda dá erro 4051
Eu estou usando
bilhete = OrderClose(OrderTicket(), OrderLots(), Bid, Slippage, Gold);// posição fechada
e
bilhete = OrderSend(Symbol(), OP_BUY, Lots, Ask, Slippage, StopLossLevel, TakeProfitLevel, "Buy(#" + MagicNumber + ")", MagicNumber, 0, DodgerBlue);
Como mudar o número mágico ?
Olá a todos,
Eu uso a diferença EA (cópia de uma EA de origem) para trocar pares de diferenças na janela do gráfico de diferenças e gostaria de mudar o número mágico, mas não sei como funciona o número mágico ? Poderia me dizer, por favor?
1. Como funciona o número mágico ?
2. Como mudar o número mágico ?
3. Posso pegar qualquer número para mudar o número mágico ou devo usar algum número em algumas regras ?
4. Você poderia me dar um exemplo para mudar o número mágico do meu EA: 16763 ?
Muito obrigado por sua ajuda!
O número mágico nada mais é do que um identificador único. Ele distingue cada instância da mesma EA enquanto também o distingue de qualquer outra EA que você possa ter em execução.
Se o número mágico for uma variável externa, basta mudá-lo para qualquer número que você desejar. Basta ter certeza de que não é o mesmo número que qualquer outra EA que você tenha em execução.
Se não for uma variável externa, procure no código a variável e mude-a para qualquer número que você queira.
Espero que isso ajude.
Lux
O número mágico nada mais é do que um identificador único. Ele distingue cada instância da mesma EA enquanto também o distingue de qualquer outra EA que você possa ter em execução.
Se o número mágico for uma variável externa, basta mudá-lo para o número que você quiser. Basta ter certeza de que não é o mesmo número que qualquer outro EA que você tenha em execução.
Se não for uma variável externa, então procure no código a variável e mude-a para qualquer número que você queira.
Espero que isso ajude.
LuxOlá Lux,
Você quer dizer que posso mudar o número mágico da minha EA:16763 para 16764 ; 16765 ect... ?
Obrigado por sua resposta rápida.
Luu
Olá Lux,
Você quer dizer que posso mudar o número mágico da minha EA:16763 para 16764 ; 16765 ect... ?
Obrigado por sua resposta rápida.
LuuExatamente! Desde que o número seja único, não importa o número que você escolher.
Você não precisa realmente mudá-lo, a menos que tenha uma razão específica para isso.
Lux
Exatamente! Desde que o número seja único, não importa o número que você escolher.
Você não precisa realmente mudá-lo, a menos que tenha uma razão específica para isso.
LuxMuito obrigado por sua ajuda Lux!
Luu
Problemas de ordem de fechamento da EA
Amigos ı tem um EA com indicador de resistência de suporte.EA deve completar os pedidos de lucro alvo.Mas falta algum dia.Como ı pode se livrar deste problema.Por favor me ajude
Por favor, ajude com um roteiro genérico simples.
Hi
Alguns1 podem me ajudar com um roteiro simples.
Aqui está o que eu preciso.
Script muito genérico que pode ser usado em qualquer símbolo que faça 3-4 pedidos de SELL_STOP e BUY_STOP.
Digamos que eu quero colocar um buy_stop 20 pontos acima do preço atual, segundo pedido 40 pontos acima do preço atual, 3d 80 pontos e assim por diante.
A mesma coisa para Sell_Stop
Eu estava tentando montar o roteiro com base em alguns exemplos, mas como não estou familiarizado com a linguagem C, estou tendo alguns problemas.
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""// improved.mq4
int start()
{
int ticket,i;
int cnt=1;
int Dist_SL =10; // Predefinição SL (pt)
int Dist_TP =100; // Pré-definido TP (pt)
string Symb=Símbolo(); // Símbolo
RefreshRates();
double bid =MarketInfo(Symb,MODE_BID);
double ask =MarketInfo(Symb,MODE_ASK);
double point =MarketInfo(Symb,MODE_POINT);
int Min_Dist=MarketInfo(Symb,MODE_STOPLEVEL);
if (Dist_TP < Min_Dist) // Se for inferior ao permitido
{
Dist_TP=Min_Dist; // Defina o permitido
Alerta(" Aumento da distância do TakeP = ",Dist_TP," pt");
}
//-------------------------------------------------------------------- 6 --
Alerta("O pedido foi enviado ao servidor. Aguardando resposta...");
for(i=100;i<400;i=i+100)
{
duplo TP=(ask+i*Point) + Dist_TP*Point; // Preço solicitado do TP
ticket=OrderSend(Symb,OP_BUYSTOP,0.1,ask+i*Point,1,(ask+i*Point)-Dist_SL*Point,TP);
Sleep(500);
int Error=GetLastError(); // Falha
switch(Error) // Erros excessivos
{
caso 130:Alerta("O SL está errado. Tentando novamente...");
RefreshRates(); // Atualizar dados
se (Dist_SL < Min_Dist) // Se for inferior ao permitido
{
Dist_SL=Min_Dist; // Defina o permitido
Alerta(" Aumento da distância de SL = ",Dist_SL," pt");
}
i=i-i-50;
Alerta (i);
Alerta (Dist_SL);
cnt=cnt+1;
Alerta (cnt);
if (cnt===3)break;
continuar; // Na próxima iteração
caso 135:Alerta("O preço mudou. Tentando novamente...");
RefreshRates(); // Atualizar dados
continuar; // Na próxima iteração
caso 136:Alerta ("Sem preços. À espera de um novo tick...");
while(RefreshRates()==falso) // Até um novo tick
Dormir(1); // Atraso do ciclo
continuar; // Na próxima iteração
caso 146:Alerta("O subsistema de comércio está ocupado. Tentando novamente...");
Sleep(500); // Solução simples
RefreshRates(); // Atualizar dados
continuar; // Na próxima iteração
}
switch(Error) // Erros críticos
{
caso 2 : Alerta ("Erro comum");
pausa; // Saída 'interruptor'.
caso 5 : Alerta ("Versão desatualizada do terminal do cliente");
break; // Saída 'switch' (interruptor)
caso 64: Alerta ("A conta está bloqueada");
pausa; // Saída 'switch'; // Saída 'switch
caso 133:Alerta ("Comércio proibido");
pausa; // Sair "interruptor"; // Sair "interruptor".
padrão: Alerta("Erro ocorrido",Erro);// Outras alternativas
}
// quebrar;
}
//-------------------------------------------------------------------------- 9 --
Alerta ("O roteiro completou suas operações ---------------------------");
retorno; // Início de saída()
}
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
Funciona um pouco, mas muitas vezes estou tendo problemas com o fim da perda.
Eis minha idéia se pudermos trocar a cobra com a taxa de sr gaussiano dentro do
ssrc pode pagar dividendos o que você acha... em vez de ser
a ssrc seria a correlação de um lado da taxa de sr de lanceiros gaussianos
"osgsrspc" lol .(tentei codificá-lo, mas ele passou por cima da minha cabeça)
ssrc_bar.mq4
ssrc.mq4
os_gaussian_sr_rate.mq4
Nova pergunta: 5ª Decimal e Gestão de Dinheiro
Em outro fórum que freqüento que é para clientes de uma EA em particular, um cliente reclamava do fato de que o desenvolvedor da EA ainda não havia consertado a questão da 5ª casa decimal / fracionária de preços para sua EA.
O desenvolvedor alegou há vários meses que esta questão exigia um roteiro especial para ser resolvida. Agora, 4 meses depois, eu basicamente disse que era ridículo que ainda não tinha sido corrigido - e alegou que só precisava de algumas linhas de código para redefinir o "Ponto" semelhante ao método descrito aqui.
Portanto, aqui vem a pergunta. O desenvolvedor ainda insiste que este problema é super complicado e requer uma programação de script especial para corrigi-lo. Aqui está a explicação do desenvolvedor:
Portanto, minha pergunta é a seguinte: Algum de vocês, programadores experientes, encontrou esta complicada exigência de script ou problemas com o valor de "Ponto" da plataforma MT4?
Mesmo que você assuma que "Ponto" é limitado a 4 decimais, então isso significaria que você só precisa se preocupar com pares com Ponto = 0,001 ----, o que ainda leva apenas uma linha ou duas de código.
Ou, você poderia usar "Dígitos" ao invés de "Ponto" - que ainda usa apenas algumas linhas de código.
Ou você poderia usar apenas uma variável booleana como "UseFractionalPips = true;" para redefinir "Ponto".
Eu realmente sinto que o desenvolvedor está tornando o problema mais complicado do que ele é (ou talvez outros motivos). Eu simplesmente nunca li ou ouvi falar desta questão com "Ponto" limitado a apenas 4 decimais - e mesmo que fosse possível usar "Dígitos" ou outros métodos para redefinir o ponto sem algum script especial.
Só estou programando no MT4 há 18 meses, então pensei em adiar para alguns programadores mais experientes o quão complicado o "conserto" é para lidar com o preço de tubulações fracionárias no MT4.
Alguma idéia?
Obrigado antecipadamente por sua ajuda,
-B