Tutte le domande dei nuovi arrivati su MQL4 e MQL5, aiuto e discussione su algoritmi e codici - pagina 58

 
Vitaly Muzichenko:

Ecco

void OnTick()
{
  Comment( cLot(100)," | ",AccountFreeMarginCheck(_Symbol,OP_BUY,cLot(100)) );
}
Buona fortuna, ricevo un errore.
 
Movlat Baghiyev:
Buona fortuna, ricevo un errore.
Allora andiamo all'indietro. Mostrami il tuo codice. Uso la stessa formula per calcolare il lotto, tutto funziona.
 

E così, una versione più o meno funzionante del precedente EA è pronta

Ecco il succo del discorso.

per esempio, hai 50 ordini

al comando "chiudi tutti", al massimo 15 di essi vengono chiusi; tutti gli altri hanno timeout e requote

Il resto richiede passaggi ripetuti e durante i movimenti bruschi il numero di passaggi aumenta considerevolmente.

È possibile metterlo sul mio conto?

Per quanto ne so tali appelli al cuoco del server non sono graditi, ma potrei sbagliarmi.

 
trader781:

E così, una versione più o meno funzionante del precedente EA è pronta

Ecco il succo del discorso.

per esempio, hai 50 ordini

al comando "chiudi tutti", al massimo 15 di essi vengono chiusi; tutti gli altri hanno timeout e requote

Il resto richiede passaggi ripetuti e durante i movimenti bruschi il numero di passaggi aumenta considerevolmente.

È possibile metterlo sul mio conto?

Per quanto ne so tali appelli al cuoco del server non sono graditi, ma potrei sbagliarmi.

Al fine di non psycho chef non dovrebbe stupidamente ripetere, e per analizzare gli errori e prendere una decisione competente, per provare di nuovo o saltare.

In alternativa, se il ciclo è costruito da 0 a ... allora il salto è inevitabile. Utilizzare un ciclo inverso

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

Per evitare che lo chef impazzisca, non bisogna ripetere stupidamente, ma analizzare gli errori e prendere una decisione intelligente se riprovare o saltare.

In alternativa, se il ciclo è costruito da 0 a ... allora il salto è inevitabile. Utilizzare un ciclo inverso

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

Per evitare che lo chef impazzisca, non bisogna ripetere stupidamente, ma analizzare gli errori e prendere una decisione intelligente se riprovare o saltare.

In alternativa, se il ciclo è costruito da 0 a ... allora il salto è inevitabile. Utilizzare il ciclo inverso

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

ecco un pezzo di registro durante l'elaborazione corrente, una parte di esso viene modificata, e, indipendentemente dal comando, non tutti gli ordini vengono attivati, se ci sono più di 20 ordini, questo viene ripetuto per tutti ad ogni comando, e solo il tester

2017.01.05 18:31:44.919 2016.12.14 23:03:00 Tester: stop loss #716 a 1,05321 (1,05297 / 1,05347)

2017.01.05 18:31:44.919 2016.12.14 23:03:00 Tester: stop loss #715 a 1,05321 (1,05297 / 1,05347)

2017.01.05 18:31:44.919 2016.12.14 23:03:00 Tester: stop loss #714 a 1,05321 (1,05297 / 1,05347)

2017.01.05 18:31:44.919 2016.12.14 23:03:00 Tester: stop loss #713 a 1,05321 (1,05297 / 1,05347)

2017.01.05 18:31:44.919 2016.12.14 23:03:00 Tester: stop loss #712 a 1,05321 (1,05297 / 1,05347)

2017.01.05 18:31:44.919 2016.12.14 23:03:00 Tester: stop loss #711 a 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 Moving tral-martin EURUSD,M1: modify #711 sell 0.01 EURUSD at 1.05862 sl: 1.05321 tp: 0.00000 ok

2017.01.05 18:31:44.919 2016.12.14 23:01:00 Moving tral-martin EURUSD,M1: modify #712 sell 0.02 EURUSD at 1.05682 sl: 1.05321 tp: 0.00000 ok

2017.01.05 18:31:44.919 2016.12.14 23:01:00 Moving tral-martin EURUSD,M1: modify #713 sell 0.04 EURUSD at 1.05388 sl: 1.05321 tp: 0.00000 ok

2017.01.05 18:31:44.919 2016.12.14 23:01:00 Moving tral-martin EURUSD,M1: modify #714 sell 0.08 EURUSD at 1.05229 sl: 1.05321 tp: 0.00000 ok

2017.01.05 18:31:44.919 2016.12.14 23:01:00 Moving tral-martin EURUSD,M1: modify #715 sell 0.16 EURUSD at 1.05077 sl: 1.05321 tp: 0.00000 ok

2017.01.05 18:31:44.919 2016.12.14 23:01:00 Moving tral-martin EURUSD,M1: modify #716 sell 0.32 EURUSD at 1.05232 sl: 1.05321 tp: 0.00000 ok

2017.01.05 18:31:44.919 2016.12.14 23:01:00 Moving tral-martin EURUSD,M1: open #716 sell 0.32 EURUSD at 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 non valido per la funzione OrderModify

2017.01.05 18:31:44.918 2016.12.14 22:52:00 Moving tral-martin EURUSD,M1: modify #715 sell 0.16 EURUSD at 1.05077 sl: 200.00000 tp: 0.00000 ok

2017.01.05 18:31:44.918 2016.12.14 22:52:00 Moving tral-martin EURUSD,M1: aperto #715 vendere 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 non valido per la funzione OrderModify

2017.01.05 18:31:44.917 2016.12.14 22:44:00 Moving tral-martin EURUSD,M1: modify #714 sell 0.08 EURUSD at 1.05229 sl: 200.00000 tp: 0.00000 ok

2017.01.05 18:31:44.917 2016.12.14 22:44:00 Moving tral-martin EURUSD,M1: open #714 sell 0.08 EURUSD at 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:
Totale ordini()-1

No, proprio così. Artyom, leggi le funzioni di incremento/decremento del prefisso e del postfisso.

Nella mia versione, il valore iniziale viene prima diminuito di 1 e poi inizia il ciclo.

 
Alexey Viktorov:

No, proprio così. Artyom, leggi le funzioni di incremento/decremento del prefisso e del postfisso.

Nella mia versione, il valore iniziale viene prima diminuito di 1 e poi inizia il ciclo.

Non ho prestato attenzione al decremento - sono sul mio cellulare...
 

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

Sempre con zero slittamento (138)?

E gli stoploss non sono calcolati correttamente, secondo il registro.
 
Vitalie Postolache:

Sempre con zero slittamento (138)?

50 è ovunque

il fatto che con un gran numero di ordini non tutti sono contemporaneamente chiusi o modificati

Stop Loss - al diavolo, li capirò quando li chiuderò tutti insieme

per ora è così

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.