Bibliotecas: MT4Orders - página 70

 
fxsaber #:

Los datos de la prueba de resistencia técnica de la biblioteca están en la cuenta de batalla.

  • Más de 160 ST trabajan en paralelo. Cada una de ellas acompaña sus propias posiciones y órdenes.
  • OrdersTotal + PositionsTotal > 300.

En este modo la librería hizo frente a todas las desincronizaciones de MT5. La lógica de MT4 no se rompió.


La fiabilidad de la biblioteca es bastante alta. Se puede recomendar.

La biblioteca puede manejar tal carga extrema, pero hay dificultades. Es necesario encontrar de alguna manera milagrosa una forma de aliviar la carga extrema.

 

@fxsaber por favor me aconseje, tengo este registro:

KE      0       15:00:03.865    MACD3 (MAGN,H1) Line = 1558
EG      0       15:00:03.865    MACD3 (MAGN,H1) ::OrderSelect(Result.order) = false
QR      0       15:00:03.865    MACD3 (MAGN,H1) 
OD      0       15:00:03.865    MACD3 (MAGN,H1) Alert: MT4ORDERS - not Sync with History!
RN      0       15:00:03.865    MACD3 (MAGN,H1) Alert: Please send the logs to the coauthor - https://www.mql5.com/en/users/fxsaber
IO      0       15:00:03.865    MACD3 (MAGN,H1) Alert: C:\Program Files\Открытие Брокер\MQL5\Logs\20220202.log
GP      0       15:00:03.896    MACD3 (MAGN,H1) MT4Orders.mqh
PL      0       15:00:03.896    MACD3 (MAGN,H1) Version = 2021.06.01
KJ      0       15:00:03.896    MACD3 (MAGN,H1) Compiler = 3180
NP      0       15:00:03.896    MACD3 (MAGN,H1) 2022.02.01 = 2022.02.01 00:00:00
LD      0       15:00:03.896    MACD3 (MAGN,H1) ::AccountInfoString(ACCOUNT_SERVER) = Open-Broker
QR      0       15:00:03.896    MACD3 (MAGN,H1) (ENUM_ACCOUNT_TRADE_MODE)::AccountInfoInteger(ACCOUNT_TRADE_MODE) = ACCOUNT_TRADE_MODE_REAL (2)
FK      0       15:00:03.896    MACD3 (MAGN,H1) (bool)::TerminalInfoInteger(TERMINAL_CONNECTED) = true
FP      0       15:00:03.896    MACD3 (MAGN,H1) ::TerminalInfoInteger(TERMINAL_PING_LAST) = 2630
HG      0       15:00:03.896    MACD3 (MAGN,H1) ::TerminalInfoDouble(TERMINAL_RETRANSMISSION) = 0.0
FJ      0       15:00:03.896    MACD3 (MAGN,H1) ::TerminalInfoInteger(TERMINAL_BUILD) = 3180
OQ      0       15:00:03.896    MACD3 (MAGN,H1) (bool)::TerminalInfoInteger(TERMINAL_X64) = true
CH      0       15:00:03.896    MACD3 (MAGN,H1) (bool)::TerminalInfoInteger(TERMINAL_VPS) = false
EO      0       15:00:03.896    MACD3 (MAGN,H1) (ENUM_PROGRAM_TYPE)::MQLInfoInteger(MQL_PROGRAM_TYPE) = PROGRAM_EXPERT (2)
FN      0       15:00:03.896    MACD3 (MAGN,H1) ::TimeCurrent() = 2022.02.02 15:00:03
NG      0       15:00:03.896    MACD3 (MAGN,H1) ::TimeTradeServer() = 2022.02.02 15:00:03
OD      0       15:00:03.896    MACD3 (MAGN,H1) MT4ORDERS::TimeToString(MT4ORDERS::GetTimeCurrent()) = 2022.02.02 15:00:03.742
NO      0       15:00:03.896    MACD3 (MAGN,H1) MT4ORDERS::TimeToString(PrevTimeCurrent) = 2022.02.02 15:00:02.827
FS      0       15:00:03.896    MACD3 (MAGN,H1) PrevTick = Symb = MAGN time = 2022.02.02 15:00:02.827 bid = 60.785 ask = 60.825 last = 60.790 volume = 1 4 TICK_FLAG_ASK
PL      0       15:00:03.896    MACD3 (MAGN,H1) CurrentTick = ::SymbolInfoTick(Symb,Tick) = true Symb = MAGN time = 2022.02.02 15:00:03.434 bid = 60.790 ask = 60.825 last = 60.825 volume = 82 0
NF      0       15:00:03.896    MACD3 (MAGN,H1) ::SymbolInfoString(Request.symbol,SYMBOL_PATH) = MOEX\Securities\TQBR\MAGN
NJ      0       15:00:03.896    MACD3 (MAGN,H1) ::SymbolInfoString(Request.symbol,SYMBOL_DESCRIPTION) = "Magnitogorsk.met.komb" ОАО ао
KG      0       15:00:03.896    MACD3 (MAGN,H1) ::PositionsTotal() = 4
JS      0       15:00:03.896    MACD3 (MAGN,H1) ::OrdersTotal() = 0
EE      0       15:00:03.896    MACD3 (MAGN,H1) ::HistorySelect(0,INT_MAX) = true
CQ      0       15:00:03.896    MACD3 (MAGN,H1) ::HistoryDealsTotal() = 852
KG      0       15:00:03.896    MACD3 (MAGN,H1) ::HistoryOrdersTotal() = 722
CQ      0       15:00:03.896    MACD3 (MAGN,H1) ::HistoryDealGetTicket(::HistoryDealsTotal()-1) = 108399547
MH      0       15:00:03.896    MACD3 (MAGN,H1) DEAL_ORDER = 195416657
NM      0       15:00:03.896    MACD3 (MAGN,H1) DEAL_TIME_MSC = 2022.02.02 15:00:02.848
QE      0       15:00:03.896    MACD3 (MAGN,H1) ::HistoryOrderGetTicket(::HistoryOrdersTotal()-1) = 195416657
QI      0       15:00:03.896    MACD3 (MAGN,H1) ORDER_TIME_DONE_MSC = 2022.02.02 15:00:02.848
OL      0       15:00:03.896    MACD3 (MAGN,H1) ::TerminalInfoInteger(TERMINAL_MEMORY_AVAILABLE) = 7489
GD      0       15:00:03.896    MACD3 (MAGN,H1) ::TerminalInfoInteger(TERMINAL_MEMORY_PHYSICAL) = 4095
RD      0       15:00:03.896    MACD3 (MAGN,H1) ::TerminalInfoInteger(TERMINAL_MEMORY_TOTAL) = 8190
QL      0       15:00:03.896    MACD3 (MAGN,H1) ::TerminalInfoInteger(TERMINAL_MEMORY_USED) = 701
HI      0       15:00:03.896    MACD3 (MAGN,H1) ::MQLInfoInteger(MQL_MEMORY_LIMIT) = 8388608
CJ      0       15:00:03.896    MACD3 (MAGN,H1) ::MQLInfoInteger(MQL_MEMORY_USED) = 2
MN      0       15:00:03.896    MACD3 (MAGN,H1) MT4ORDERS::IsHedging = false
MF      0       15:00:03.896    MACD3 (MAGN,H1) Res = false
PO      0       15:00:03.896    MACD3 (MAGN,H1) MT4ORDERS::OrderSendBug = 12527100
NH      0       15:00:03.896    MACD3 (MAGN,H1) Request.action = TRADE_ACTION_PENDING (5)
LO      0       15:00:03.896    MACD3 (MAGN,H1) Request.magic = 101
CF      0       15:00:03.896    MACD3 (MAGN,H1) Request.order = 0
FQ      0       15:00:03.896    MACD3 (MAGN,H1) Request.symbol = MAGN
QO      0       15:00:03.896    MACD3 (MAGN,H1) Request.volume = 82.0
KI      0       15:00:03.896    MACD3 (MAGN,H1) Request.price = 60.924999999999997
FR      0       15:00:03.896    MACD3 (MAGN,H1) Request.stoplimit = 0.0
EF      0       15:00:03.896    MACD3 (MAGN,H1) Request.sl = 57.439999999999998
QL      0       15:00:03.896    MACD3 (MAGN,H1) Request.tp = 0.0
QI      0       15:00:03.896    MACD3 (MAGN,H1) Request.deviation = 10
DM      0       15:00:03.896    MACD3 (MAGN,H1) Request.type = ORDER_TYPE_BUY_LIMIT (2)
ID      0       15:00:03.896    MACD3 (MAGN,H1) Request.type_filling = ORDER_FILLING_RETURN (2)
LD      0       15:00:03.896    MACD3 (MAGN,H1) Request.type_time = ORDER_TIME_DAY (1)
OQ      0       15:00:03.896    MACD3 (MAGN,H1) Request.expiration = 1970.01.01 00:00:00
FE      0       15:00:03.896    MACD3 (MAGN,H1) Request.comment = 
PQ      0       15:00:03.896    MACD3 (MAGN,H1) Request.position = 0
LF      0       15:00:03.896    MACD3 (MAGN,H1) Request.position_by = 0
OS      0       15:00:03.896    MACD3 (MAGN,H1) Result.retcode = 10009
ME      0       15:00:03.896    MACD3 (MAGN,H1) Result.deal = 0
KE      0       15:00:03.896    MACD3 (MAGN,H1) Result.order = 195416657
KQ      0       15:00:03.896    MACD3 (MAGN,H1) Result.volume = 82.0
CD      0       15:00:03.896    MACD3 (MAGN,H1) Result.price = 60.924999999999997
RO      0       15:00:03.896    MACD3 (MAGN,H1) Result.bid = 0.0
DG      0       15:00:03.896    MACD3 (MAGN,H1) Result.ask = 0.0
HN      0       15:00:03.896    MACD3 (MAGN,H1) Result.comment = Request executed 24.445 + 1000.080 (12527100) ms.
IH      0       15:00:03.896    MACD3 (MAGN,H1) Result.request_id = 7
CQ      0       15:00:03.896    MACD3 (MAGN,H1) Result.retcode_external = 0
RJ      0       15:00:03.896    MACD3 (MAGN,H1) MT4ORDERS::OrderSend_MaxPause = 1000000
ER      0       15:00:03.896    MACD3 (MAGN,H1) 
MG      0       15:00:03.926    MACD3 (MAGN,H1) Ордер на покупку успешно помещен с тикетом #195416665!!
 CR      0       15:00:03.926    MACD3 (MAGN,H1) Position by MAGN to be opened

Opero en la apertura del broker en la bolsa, como resultado abrí una posición dos veces, no es crítico pero tal vez hay maneras de evitar esto?

 
Александр Кувакин #:

@fxsaber pista por favor, tengo este tipo de registro:

Gracias por el log, el problema está claro. La solución estará disponible en la próxima versión.

 
fxsaber #:

Gracias por el registro, el problema está claro. La solución estará disponible en la próxima versión.

Hola, esperando la actualización señor. gracias.....

 
fxsaber #:

Gracias por el registro, el problema está claro. La solución estará disponible en la próxima versión.

La corrección del sexto año, ¿merecía la pena(sin ánimo de ofender, sólo me lo preguntaba)?

Añadido

Hace 7 años escribí esto y no lo arreglé ni una sola vez

https://www.mql5.com/ru/blogs/post/557544

Отслеживание ордера, после команды OrderSendAsync
Отслеживание ордера, после команды OrderSendAsync
  • 2016.10.29
  • www.mql5.com
Отслеживание ордера, после команды OrderSendAsync Михаил | 23 апреля, 2015 В статье рассказывается принцип отслеживания ордера после команды OrderSendAsync, если нет события TradeTransaction
 
prostotrader #:

Sexto año arreglándolo, ¿merecía la pena dedicarse a ello (sin ánimo de ofender, sólo me lo preguntaba)?

Añadido

Escribí hace 7 años y no lo corregí ni una sola vez

https://www.mql5.com/ru/blogs/post/557544

Esto es completamente de una ópera diferente.

 
Vitaly Muzichenko #:

Es de una ópera completamente diferente.

¿Es porque el código es de media tonelada?

Entonces sí, la ópera es diferente.... :)

 
prostotrader #:

Sexto año arreglándolo, ¿merecía la pena dedicarse a ello(sin ánimo de ofender, sólo me lo preguntaba)?

Hay mucha más gente que cree conocer las características de la MT5 que la que realmente las conoce.

Escribí esto hace 7 años y no lo corregí ni una sola vez

https://www.mql5.com/ru/blogs/post/557544

Mimo. Por favor, refrena tus ganas de ***.

 
// Lista de cambios:
// 08.02.2022
// Fix: Se tiene en cuenta la posibilidad de ejecutar órdenes pendientes sin pasos intermedios de MT5 durante su establecimiento/modificación.
 

Recuérdame cómo especificar el máximo de órdenes en el mercado ?

porque extraños milagros comienzan en 54-55. (más de 30 copias de robots con MT4Orders negocian simultáneamente en todos los pares, y en este número mágico comienzan los problemas).

Estaba allí en alguna parte, pero se me olvidó :-(

y en general sería genial tener un breve resumen de lo que define y lo que se controla en la biblioteca.