Quaisquer perguntas de recém-chegados sobre MQL4 e MQL5, ajuda e discussão sobre algoritmos e códigos - página 58

 
Vitaly Muzichenko:

Aqui está

void OnTick()
{
  Comment( cLot(100)," | ",AccountFreeMarginCheck(_Symbol,OP_BUY,cLot(100)) );
}
Boa sorte para você. Estou recebendo um erro.
 
Movlat Baghiyev:
Boa sorte para você. Estou recebendo um erro.
Então vamos voltar para trás. Mostre-me seu código. Eu uso a mesma fórmula para calcular o lote, tudo funciona.
 

E assim, uma versão mais ou menos funcional da EA anterior está pronta

Aqui está a essência disto.

por exemplo, você tem 50 pedidos

ao comando "fechar todos", no máximo 15 deles estão fechados; todos os demais têm timeouts e requotes

O resto exige passes repetidos e durante os movimentos bruscos o número de passes aumenta consideravelmente.

É possível colocar isso em minha conta?

Tanto quanto sei, tais apelos ao chef do servidor não são bem-vindos, mas posso estar errado.

 
trader781:

E assim, uma versão mais ou menos funcional da EA anterior está pronta

Aqui está a essência disto.

por exemplo, você tem 50 pedidos

ao comando "fechar todos", no máximo 15 deles estão fechados; todos os demais têm timeouts e requotes

O resto exige passes repetidos e durante os movimentos bruscos o número de passes aumenta consideravelmente.

É possível colocar isso em minha conta?

Tanto quanto sei, tais apelos ao chef do servidor não são bem-vindos, mas posso estar errado.

Para que o chef psicopata não repita estupidamente, e para analisar os erros e tomar uma decisão competente, para tentar novamente ou pular.

Alternativamente, se o ciclo for construído de 0 a ... então a pular é inevitável. Use um laço invertido

for(int i = OrdersTotal(); i >= 0; --i)
 
Alexey Viktorov:

Para evitar que o chef se passe, não se deve repetir estupidamente, mas analisar os erros e tomar uma decisão inteligente se deve tentar novamente ou ignorá-los.

Alternativamente, se o ciclo for construído de 0 a ... então a pular é inevitável. Use um laço invertido

for(int i = OrdersTotal(); i >= 0; --i)
OrdensTotal()-1
 
Artyom Trishkin:
OrdensTotal()-1
Alexey Viktorov:

Para evitar que o chef se passe, não se deve repetir estupidamente, mas analisar os erros e tomar uma decisão inteligente se deve tentar novamente ou ignorá-los.

Alternativamente, se o ciclo for construído de 0 a ... então a pular é inevitável. Use o laço invertido

for(int i = OrdersTotal(); i >= 0; --i)

aqui está um pedaço de log durante o processamento atual, uma parte dele é modificada e, independentemente do comando, nem todas as ordens são acionadas, se houver mais de 20 ordens, isto é repetido para todos a cada comando, e apenas o testador

2017.01.05 18:31:44.919 2016.12.14 23:03:00 Testador: pare a perda #716 em 1.05321 (1.05297 / 1.05347)

2017.01.05 18:31:44.919 2016.12.14 23:03:00 Testador: pare a perda #715 em 1.05321 (1.05297 / 1.05347)

2017.01.05 18:31:44.919 2016.12.14 23:03:00 Testador: pare a perda #714 em 1.05321 (1.05297 / 1.05347)

2017.01.05 18:31:44.919 2016.12.14 23:03:00 Testador: pare a perda #713 em 1.05321 (1.05297 / 1.05347)

2017.01.05 18:31:44.919 2016.12.14 23:03:00 Testador: pare a perda #712 em 1.05321 (1.05297 / 1.05347)

2017.01.05 18:31:44.919 2016.12.14 23:03:00 Testador: pare a perda #711 em 1.05321 (1.05297 / 1.05347)

2017.01.05 18:31:44.919 2016.12.14 23:01:00 Moving tral-martin EURUSD,M1: OrderClose error 138

2017.01.05 18:31:44.919 2016.12.14 23:01:00 Moving tral-martin EURUSD,M1: OrderClose error 138

2017.01.05 18:31:44.919 2016.12.14 23:01:00 Moving tral-martin EURUSD,M1: OrderClose error 138

2017.01.05 18:31:44.919 2016.12.14 23:01:00 Moving tral-martin EURUSD,M1: OrderClose error 138

2017.01.05 18:31:44.919 2016.12.14 23:01:00 Moving tral-martin EURUSD,M1: OrderClose error 138

2017.01.05 18:31:44.919 2016.12.14 23:01:00 Mudança tral-martin EURUSD,M1: modificar #711 vender 0.01 EURUSD a 1.05862 sl: 1.05321 tp: 0.00000 ok

2017.01.05 18:31:44.919 2016.12.14 23:01:00 Movendo tral-martin EURUSD,M1: modificar #712 vender 0.02 EURUSD a 1.05682 sl: 1.05321 tp: 0.00000 ok

2017.01.05 18:31:44.919 2016.12.14 23:01:00 Mudança tral-martin EURUSD,M1: modificar #713 vender 0.04 EURUSD a 1.05388 sl: 1.05321 tp: 0.00000 ok

2017.01.05 18:31:44.919 2016.12.14 23:01:00 Mudança tral-martin EURUSD,M1: modificar #714 vender 0.08 EURUSD a 1.05229 sl: 1.05321 tp: 0.00000 ok

2017.01.05 18:31:44.919 2016.12.14 23:01:00 Mudança tral-martin EURUSD,M1: modificar #715 vender 0.16 EURUSD a 1.05077 sl: 1.05321 tp: 0.00000 ok

2017.01.05 18:31:44.919 2016.12.14 23:01:00 Mudança tral-martin EURUSD,M1: modificar #716 vender 0.32 EURUSD a 1.05232 sl: 1.05321 tp: 0.00000 ok

2017.01.05 18:31:44.919 2016.12.14 23:01:00 Mudança tral-martin EURUSD,M1: abrir #716 vender 0.32 EURUSD a 1.05232 ok

2017.01.05 18:31:44.918 2016.12.14 22:52:00 Moving tral-martin EURUSD,M1: OrderClose error 138

2017.01.05 18:31:44.918 2016.12.14 22:52:00 Moving tral-martin EURUSD,M1: OrderClose error 138

2017.01.05 18:31:44.918 2016.12.14 22:52:00 Moving tral-martin EURUSD,M1: OrderClose error 138

2017.01.05 18:31:44.918 2016.12.14 22:52:00 Moving tral-martin EURUSD,M1: OrderClose error 138

2017.01.05 18:31:44.918 2016.12.14 22:52:00 Moving tral-martin EURUSD,M1: OrderModify error 4051

2017.01.05 18:31:44.918 2016.12.14 22:52:00 Moving tral-martin EURUSD,M1: stoploss inválido para a função OrderModify

2017.01.05 18:31:44.918 2016.12.14 22:52:00 Movendo tral-martin EURUSD,M1: modificar #715 vender 0.16 EURUSD a 1.05077 sl: 200.00000 tp: 0.00000 ok

2017.01.05 18:31:44.918 2016.12.14 22:52:00 Mudança tral-martin EURUSD,M1: aberto #715 venda 0.16 EURUSD a 1.05077 ok

2017.01.05 18:31:44.918 2016.12.14 22:44:00 Moving tral-martin EURUSD,M1: OrderClose error 138

2017.01.05 18:31:44.918 2016.12.14 22:44:00 Moving tral-martin EURUSD,M1: OrderClose error 138

2017.01.05 18:31:44.918 2016.12.14 22:44:00 Moving tral-martin EURUSD,M1: OrderClose error 138

2017.01.05 18:31:44.917 2016.12.14 22:44:00 Moving tral-martin EURUSD,M1: OrderModify error 4051

2017.01.05 18:31:44.917 2016.12.14 22:44:00 Moving tral-martin EURUSD,M1: stoploss inválido para a função OrderModify

2017.01.05 18:31:44.917 2016.12.14 22:44:00 Mudança tral-martin EURUSD,M1: modificar #714 vender 0.08 EURUSD a 1.05229 sl: 200.00000 tp: 0.00000 ok

2017.01.05 18:31:44.917 2016.12.14 22:44:00 Mudança tral-martin EURUSD,M1: abrir #714 vender 0.08 EURUSD a 1.05229 ok

2017.01.05 18:31:44.916 2016.12.14 22:09:00 Moving tral-martin EURUSD,M1: OrderClose error 138

2017.01.05 18:31:44.916 2016.12.14 22:09:00 Moving tral-martin EURUSD,M1: OrderClose error 138

2017.01.05 18:31:44.916 2016.12.14 22:09:00 Moving tral-martin EURUSD,M1: OrderModify error 4051

 
Artyom Trishkin:
OrdensTotal()-1

Não. É isso mesmo. Artyom, leia sobre as funções de incremento/decremento de prefixo e pós-fixos.

Na minha versão, o valor inicial é primeiro diminuído em 1 e depois o ciclo começa.

 
Alexey Viktorov:

Não. É isso mesmo. Artyom, leia sobre as funções de incremento/decremento de prefixo e pós-fixos.

Na minha versão, o valor inicial é primeiro diminuído em 1 e depois o ciclo começa.

Não prestei atenção à diminuição - estou no meu celular...
 

trader781:   вот кусок журнала при текущей обработке, часть кроется часть модифицируется, причем вне зависимости от команды сработают не все ордера, если ордеров больше 20, это повторяется для всех при каждой команде, а ведь только тестер

Novamente com zero deslizamento (138)?

E as perdas de carga não são calculadas corretamente, de acordo com o diário de bordo.
 
Vitalie Postolache:

Novamente com zero deslizamento (138)?

50 está em toda parte

o fato de que, com um grande número de pedidos, todos eles não são fechados ou modificados simultaneamente

Pare com as perdas - o inferno com eles, eu vou descobrir todos eles quando eu os fechar de uma vez

por enquanto é assim

https://www.mql5.com/ru/charts/6368852/eurusd-m1-metaquotes-software-corp

График EURUSD, M1, 2017.01.05 17:10 UTC, MetaQuotes Software Corp., MetaTrader 4, Demo
График EURUSD, M1, 2017.01.05 17:10 UTC, MetaQuotes Software Corp., MetaTrader 4, Demo
  • www.mql5.com
Символ: EURUSD. Период графика: M1. Брокер: MetaQuotes Software Corp.. Торговая платформа: MetaTrader 4. Режим торговли: Demo. Дата: 2017.01.05 17:10 UTC.
Razão: