Preguntas de los principiantes MQL5 MT5 MetaTrader 5 - página 417

 
¡Saludos estimada comunidad!
Por favor, aconséjeme, ¿es posible guardar un array de objetos de clase en un archivo? ¿O es necesario convertirlos en una matriz de estructuras para guardarlos en un archivo?
 
BlackTomcat:
¡Saludos estimada comunidad!
Por favor, aconséjeme, ¿es posible guardar un array de objetos de clase en un archivo? O para guardarlos en un archivo, ¿hay que convertirlos en una matriz de estructuras?
Es posible.
 
Dmitriy Skub:
Tal vez.
Gracias, lo probaré. Si no funciona, volveré con otra pregunta. :) Si lo he entendido bien, ¿se corta toda la información sobre los métodos de la clase?
 
Alexey Volchanskiy:
No hay ningún indicador de Fibonacci que empiece por "i", está oculto en los objetos gráficos. E_Ghazaryan, mira la Ayuda en esta ruta, hay un ejemplo en MQL4 Reference / Standard constants, enumerations and structures / Object constants / Object types / OBJ_FIBO
Gracias, intentaré utilizarlo.
 
BlackTomcat:
Si he entendido bien, ¿se elimina toda la información sobre los métodos de la clase?
Sí, sólo se conservan los datos durante la serialización.
 

La ayuda no dice nada, en la web dicen que tiene fecha de caducidad en bares. He buscado del 1 al 100 y el pendiente no caduca por sí solo.

Nunca he trabajado con órdenes pendientes. (Nunca he trabajado con órdenes pendientes en mi EA)

 
Leanid Aladzyeu:

La ayuda no dice nada, en la web dicen que tiene fecha de caducidad en bares. He probado todo desde 1 hasta 100, el pendiente no expira por sí mismo.

Nunca he trabajado con órdenes pendientes. (Nunca he trabajado con órdenes pendientes en mi EA)

Tal vez sea un sello de fecha/hora.
 
Leanid Aladzyeu:

La ayuda no dice nada, en la web dicen que tiene fecha de caducidad en bares. He buscado del 1 al 100 y el pendiente no caduca por sí solo.

Nunca he trabajado con órdenes pendientes. (Nunca he trabajado con órdenes pendientes en mi EA)

¿Por qué leer semejantes tonterías? Intente colocar manualmente una orden pendiente y establezca un tiempo de expiración para ella.


Verás enseguida que no estableces el tiempo en relación a algo, en barras, minutos o segundos; estableces un tiempo específico para eliminar la orden pendiente. La única observación es que la hora de vencimiento no puede estar más cerca de diez minutos de la hora de apertura de la orden. Hay que tener en cuenta la pérdida de tiempo en la apertura del pedido.

 
Alexey Viktorov:

¿Por qué leer semejantes tonterías? Intente colocar manualmente una orden pendiente y establezca su tiempo de expiración.

...

No deberías ser tan imprudente. El asunto es que cuando se genera un EA usando el MQL5 Wizard, hay un parámetro de expiración y en realidad se mide en barras:

//+------------------------------------------------------------------+
//|                                                         тест.mq5 |
//|                        Copyright 2015, MetaQuotes Software Corp. |
//|                                             https://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2015, MetaQuotes Software Corp."
#property link      "https://www.mql5.com"
#property version   "1.00"
//+------------------------------------------------------------------+
//| Include                                                          |
//+------------------------------------------------------------------+
#include <Expert\Expert.mqh>
//--- available signals
#include <Expert\Signal\SignalAC.mqh>
//--- available trailing
#include <Expert\Trailing\TrailingNone.mqh>
//--- available money management
#include <Expert\Money\MoneyFixedLot.mqh>
//+------------------------------------------------------------------+
//| Inputs                                                           |
//+------------------------------------------------------------------+
//--- inputs for expert
input string Expert_Title         ="тест"; // Document name
ulong        Expert_MagicNumber   =31146;  // 
bool         Expert_EveryTick     =false;  // 
//--- inputs for main signal
input int    Signal_ThresholdOpen =10;     // Signal threshold value to open [0...100]
input int    Signal_ThresholdClose=10;     // Signal threshold value to close [0...100]
input double Signal_PriceLevel    =0.0;    // Price level to execute a deal
input double Signal_StopLevel     =50.0;   // Stop Loss level (in points)
input double Signal_TakeLevel     =50.0;   // Take Profit level (in points)
input int    Signal_Expiration    =4;      // Expiration of pending orders (in bars)
input double Signal_AC_Weight     =1.0;    // Accelerator Oscillator Weight [0...1.0]
//--- inputs for money
input double Money_FixLot_Percent =10.0;   // Percent
input double Money_FixLot_Lots    =0.1;    // Fixed volume
//+------------------------------------------------------------------+
//| Global expert object                                             |
//+------------------------------------------------------------------+


El significado físico del vencimiento de la señal en barras: si la señal (orden pendiente) no se activa dentro de un número especificado de barras, esta orden será eliminada.

 
Karputov Vladimir:

No deberías ser tan imprudente. El caso es que al generar un EA con el MQL5 Wizard, hay un parámetro de expiración, y en realidad se mide en barras:


El significado físico de la expiración de la señal en barras: si la señal (orden pendiente) no se activa dentro de un número determinado de barras, esta orden será eliminada.

El número de barras debe convertirse en un tiempo y pasarse a la función de apertura.
Razón de la queja: