[ARQUIVO]Qualquer pergunta de novato, para não desorganizar o fórum. Profissionais, não passem por ela. Não posso ir a lugar nenhum sem você - 5. - página 69

 
Notter:

Boa tarde,

Também em uma conta real, há muitos erros na execução de ordens comerciais. Por exemplo, hoje:

2013.01.10 13:46:09 '15082': compre 0,15 EURUSD a 1,30844 sl: 1,30758 tp: 0,00000
2013.01.10 13:46:10 '15082': o pedido foi aceito pelo servidor
2013.01.10 13:46:10 '15082': pedido de compra imediata 1.30843 / 1.30858 a 1.30844 sl: 1.30758 tp: 0.00000
2013.01.10 13:46:11 '15082': pedido de compra imediata 0.15 EURUSD a 1.30869 sl: 1.30785 tp: 0.00000
2013.01.10 13:46:11 '15082': o pedido foi aceito pelo servidor
2013.01.10 13:46:11 '15082': pedido em processo
2013.01.10 13:46:13 '15082': pedido foi aberto : #12941470 comprar 0.15 EURUSD a 1.30869 sl: 1.30785 tp: 0.00000

Ou seja, do sinal para abrir a posição, levou 4 segundos para ser executado. E como eu suspeito - este não é o limite.

A razão deste atraso é que o pedido foi requalificado em 15 pontos.

Como lidar com isso? Para o inferno com 15 pips. Quero abrir uma ordem por mercado e não importa o quanto o preço muda em um segundo. Como resultado, eu abri mais alto em1.30869, enquanto eu deveria tê-lo aberto em 1.30858. Esta questão pode se tornar crítica para a rentabilidade/perdas do Expert Advisor se ele não puder abrir no sinal e esperar que a correção comece.

Obrigado.



Recomendo vivamente a mudança de sua corretora. Você pode me enviar o nome desta empresa de corretagem como uma mensagem pessoal?
 
tara:

O tamanho do "fuck off" é definido por um parâmetro de ordem chamado "slippage". No seu caso era 0, então uma partida de 1 pt na cotação resultou em um requote.


Como se não houvesse 1 pt ali... não invente.
 

Heroix

Não sei muito sobre corretoras, tenho contrato com a Finam, negocio via modem e não sei para qual corretora minhas ordens vão... Não sei para qual corretora minhas ordens vão... Ainda não tenho a menor idéia sobre isso.

Não sei quais são as minhas propagandas. Não tenho idéia do tipo de propagandas com que estou lidando. Como o spread está flutuando na UE, ele pode ser inferior a 15 pips, embora improvável. Estou pensando em 30 pips.

Assim que consegui condições para fechar o pedido, meu terminal congelou com uma mensagem

2013.01.10 14:47:45 TradeContext: ping error
2013.01.10 14:48:50 '15082': o ping falhou

Após algumas tentativas de re-logar a ordem foi encerrada :)

Em geral, eu diria que negociar é divertido, é automatizado, tenho que corrigir erros o tempo todo :)

 

Boa tarde a todos!

Pessoal, favor aconselhar como resolver o problema no seguinte código:

       double sSup=Sup-(Udal*Point);                           // Sup - это уровень поддержки, Udal - расстояние от него
       zapS=0;
       for(int iS=0; iS<=OrdersTotal(); iS++)                  // перебор открытых ордеров
         {
          if(OrderSelect(iS,SELECT_BY_POS,MODE_TRADES)==true)  // выбор рыночного ордера
            {
             if(OrderSymbol()!=Symb) continue;                 // только нужный инструмент
             if(OrderType()>1) continue;                       // только рыночные
             sPO=OrderOpenPrice();                             // его цена
             sellTip=OrderType();                              // его тип
             if(sPO==sSup && sellTip==1) zapS=1;               // если цена открытого ордера совпадает с sSup и уровень является Sell, то поднять флаг
            }
         }
O problema está na linha se(sPO==sup && sellTip===1) zapS=1; (ou para ser mais preciso, no fragmento sPO==sup ) . O seguinte problema: por exemplo, se sPO=1,3100 e sSup=1,3100 a bandeira ainda é igual a 0 (o valor 1,3100 é impresso nos dois valores via Print ) . Onde estou cometendo um erro? Por que o zapS não se torna 1?
 
WindSW:

Boa tarde a todos!

Pessoal, favor aconselhar como resolver o problema no seguinte código:

O problema está na linhase(sPO==sup && sellTip===1) zapS=1; (ou para ser mais preciso, no fragmento sPO==sup ) . O seguinte problema: por exemplo, se sPO=1,3100 e sSup=1,3100 a bandeira ainda é igual a 0 (o valor 1,3100 é impresso nos dois valores via Print) . Onde estou cometendo um erro? Por que o zapS não se torna 1?


https://www.mql5.com/ru/articles/1561
 
ilunga:

https://www.mql5.com/ru/articles/1561
Obrigado! Vou tentar consertá-lo
 
WindSW:

Boa tarde a todos!

Pessoal, favor aconselhar como resolver o problema no seguinte código:

O problema está na linhase(sPO==sup && sellTip===1) zapS=1; (ou para ser mais preciso, no fragmento sPO==sup ) . O seguinte problema: por exemplo, se sPO=1,3100 e sSup=1,3100 a bandeira ainda é igual a 0 (o valor 1,3100 é impresso nos dois valores via Print) . Onde estou cometendo um erro? Por que o zapS não se torna 1?

Confira aqui...
 

Olá a todos, não consigo entender o que há de errado com vários EAs trabalhando ao mesmo tempo, apenas uma ordem abre, o resto deles ignoram os sinais, por favor avise o que há de errado...Ordens - função que determina o número de ordens no mágico

total=OrdensTotal();

if(total >=-1 && total == Encomendas(símbolo,operação,magia))

 
dimarik0000:

Olá a todos, não consigo entender o que há de errado com vários EAs trabalhando ao mesmo tempo, apenas uma ordem abre, o resto deles ignoram os sinais, por favor avise o que há de errado...Ordens - função que determina o número de ordens no mágico

total=OrdensTotal();

if(total >=-1 && total == Encomendas(símbolo,operação,magia))


qual é esta condição louca?! :)

Escreva este operador em russo e eu tentarei corrigir a corda.

 
hoz:
Tive uma idéia de usar padrões de ação de preços bem conhecidos chamadosDBLHC eDBHLC.




Condições para sua formação:

DBLHC (Bull Setup)- barras com fechos idênticos para baixo e para cima.
Duas (podem ser três ou mais) barras consecutivas com os mesmos mínimos, sendo o preço de fechamento da última maior do que o máximo da anterior. A diferença nas baixas das barras adjacentes não pode exceder 3 pips. Quanto mais barras compõem a configuração, mais forte é o sinal que ela gera.

DBHLC (Bearish Setup)- barras com fechos altos e baixos iguais.
Duas (três ou mais) barras consecutivas com os mesmos máximos com o preço de fechamento da última menor que o mínimo da anterior. A diferença nos máximos das barras adjacentes não deve exceder 3 pontos. Quanto mais barras compõem a configuração, mais forte é o sinal que ela gera.

Veja, por exemplo, oDBLHC (Bullish Setup)

O preço aberto da barra atual deve estar próximo do mínimo da barra anterior. É fácil de escrever. Mas estamos interessados no caso quando há mais de uma barra com o mesmo mínimo ou quase o mesmo mínimo, por exemplo, 5. Como devemos trabalhar em um caso desses? Como especificar esta condição de modo a considerar não apenas a barra anterior, mas também as barras localizadas anteriormente na história?

Suponho que devemos atravessar as barras desde o passado até o presente:

Então devemos de alguma forma estabelecer a condição de que se o mínimo da próxima barra também for igual ao mínimo da(s) barra(s) anterior(es), então... então comparamos... Como implementar isto?

Aqui está uma dica:

NormalizeDuplo(Baixo[i]-Baixo[i+1],Dígitos)<=3*Ponto --- diferença entre barras adjacentes. Se a condição não for cumprida -> Retorno (Falso); (Retorno falso)

Retorno (Falso) após o loop ter sido passado

Podemos fazer isso de uma maneira diferente:

Se a condição NormalizeDouble(Low[i]-Low[i+1],Digits)<=3*Point for verdadeira, aumente o contador de barras adjacentes (inicialmente igual a zero) em 1,

se a condição for falsa, devolvemos o valor do contador de barras adjacente.

Quanto maior for o número retornado pela função, mais forte será o conjunto. Se zero for devolvido - a configuração não está presente.