Preguntas de un "tonto" - página 177

 
tol64:

En OnTrade() recibimos una respuesta del servidor. Esto significa que si comprobamos el evento en OnTrade(), ya sabremos con seguridad si hay una posición o no. Aunque podríamos proporcionar opciones estándar como DEAL_ENTRY_FULLOUT (cierre completo) oDEAL_ENTRY_PARTOUT (cierre parcial) para que todo sea perfectamente elegante.)))


Buena sugerencia. Para el momento actual en tiempo real, no hay problema, pero al analizar el historial necesitamos resumir los volúmenes de todas las operaciones que crearon la posición, para saber cuándo se cerró finalmente.
 
Valmars:
Esta es una buena sugerencia. Para el momento actual en tiempo real, no hay problema, pero al analizar el historial hay que sumar los volúmenes de todas las operaciones que formaron la posición, para saber cuándo se cerró finalmente.
Sí, es más difícil analizar la historia. Es cierto que toda la información necesaria puede volver a caber en el comentario, pero entonces el código se vuelve cada vez más "abigarrado". :)
 
tol64:
Sí, es más difícil analizar la historia. Es cierto que toda la información necesaria puede volver a estar contenida en un comentario, pero entonces el código se vuelve cada vez más "abigarrado". :)
A través del comentario, por supuesto, se puede, pero sólo en el comercio automatizado con su EA, pero al analizar las cuentas de otras personas, e incluso con el control manual, no tendrá éxito. Sólo mediante la selección a través de HistorySelectByPosition().
 
Valmars:
A través del comentario, por supuesto, se puede, pero sólo en el comercio automático de su EA, y no funcionará al analizar las cuentas de los demás e incluso con el control manual. Sólo mediante la selección a través de HistorySelectByPosition().

Hace mucho, mucho tiempo, se me ocurrió una solución que hace innecesaria una enorme pila de este tipo de desorden.

Pero está en el lado de los desarrolladores.:(

Consiste en añadir a la descripción (estructura) de una operación un campo que describa la posición abierta resultante en un símbolo (tras la realización de una operación).

Los valores positivos de este campo pueden significar una posición de compra, los negativos - una posición de venta. 0 = ninguna posición.

--

Esto puede hacerse incluso ahora, y ningún servidor sufrirá. No es necesario cambiar el servidor. En absoluto. Todo se puede resolver dentro del terminal.

// Este cambio es incluso más barato que pagar créditos por todos los mensajes del foro que discuten el lío con el cálculo de posiciones en la historia. :)

 
MetaDriver:

... añadir un campo a la descripción (estructura) de la operación que describa la posición abierta resultante en el instrumento (una vez realizada la operación).

Los valores positivos de este campo pueden significar posición de compra, negativos - posición de venta. 0 = sin posición.

¡Interesante movimiento! Y en combinación con las nuevas propiedades DEAL_ENTRY_DECREASE (disminución del volumen) y DEAL_ENTRY_INCREASE(aumento del volumen) sería perfecto: todos los que necesiten el volumen de resultados de una operación - pregúntenos, todos los que necesiten sólo los resultados de la operación (disminución/aumento del volumen) - pregúntenos.

¿Ha escrito al Consejo de Administración sobre su propuesta? - Porque no es difícil para mí hacer una buena idea.

MetaDriver:

Esto se puede hacer incluso ahora - y ningún servidor no sufrirá. No es necesario cambiar el servidor. En absoluto. Todo se puede resolver dentro de la terminal, con bastante facilidad.
// Este cambio es incluso más barato que pagar créditos por todos los mensajes del foro que discuten el lío con el cálculo de la posición en el historial.:)

"Créditos para todos los mensajes del foro que discutan la molestia en torno al recuento de posiciones en la historia", ¿son tan caros? :) Dándolos al altar del cambio :)

Документация по MQL5: Стандартные константы, перечисления и структуры / Торговые константы / Свойства сделок
Документация по MQL5: Стандартные константы, перечисления и структуры / Торговые константы / Свойства сделок
  • www.mql5.com
Стандартные константы, перечисления и структуры / Торговые константы / Свойства сделок - Документация по MQL5
 
Yedelkin:

¡Interesante movimiento! Y en combinación con las nuevas propiedades DEAL_ENTRY_DECREASE (disminución de volumen) y DEAL_ENTRY_INCREASE(aumento de volumen) sería perfecto: quien necesite el resultado de volumen de una operación específica - es bienvenido, quien necesite sólo el resultado de la operación (como "disminución/incremento de volumen") - es bienvenido.

¿Sobre su propuesta al CD escribió? - Porque no me cuesta poner una idea bonita.

"Créditos para todos los mensajes del foro en los que se discute la molestia de calcular las posiciones en la historia", ¿tan caros son? :) Entregarlos en el altar del cambio :)

No. Se estresan mucho con las propuestas que cambian las estructuras de datos subyacentes.

Y realmente no me gusta discutir con ellos.

De todos modos, tengo complejos cuando se trata de propuestas "fundamentales". :)

// He hecho un montón de ellos, y un porcentaje muy pequeño se aplica.

Espero que la gente apoye, la propuesta parece ser valiosa.

 
MetaDriver:

No. Se ponen muy tensos con las propuestas que cambian las estructuras de datos subyacentes.

Y realmente no me gusta discutir con ellos.

De todos modos, tengo complejos cuando se trata de propuestas "fundamentales". :)

// He hecho un montón de ellos y un porcentaje muy pequeño se aplica.

Así que: tenga incentivos - siga adelante y solicite. Espero que la gente apoye, la propuesta es bastante valiosa.

De acuerdo, siendo un fundamentalista radical, no veo ninguna razón para retroceder :) Si la propuesta de cambiar las estructuras de datos subyacentes es para el bien, no para el mal, entonces es una propuesta ideológicamente sólida.
 
¡¡¡Gracias!!!
 

Hola a todos.

Me pueden aconsejar, si abro una operación (Compra o Venta) en el probador MT5 en un determinado"momento".

Pero en estemomento no había ninguna cotización en el par de divisas (es decir, hay un vacío en los datos, es decir, el inicio de la barra M5 a las 00:05, y la siguiente barra después de que ya ha comenzado a las 00:25)

Y abro un trato en el probador por ejemplo a las 00:15.

Qué precio fija el probador en la operación desde la primera barra (Clowes) o desde la segunda (Open).

¿O se negará a abrirlo?

 
Estoy tratando de abrir cinco órdenes. He estado tratando de dominar las peculiaridades de la quinta terminal. Entonces, no lo he entendido durante 40 minutos, ¡no veo ninguna salida en el registro! Si puedes, por favor, échale un vistazo.
//+------------------------------------------------------------------+
//|                                                     ордерній.mq5 |
//|                        Copyright 2012, MetaQuotes Software Corp. |
//|                                              http://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2012, MetaQuotes Software Corp."
#property link      "http://www.mql5.com"
#property version   "1.00"
//+------------------------------------------------------------------+
//| Expert initialization function                                   |
//+------------------------------------------------------------------+
int OnInit()
  {
//---
   
//---
   return(0);
  }
//+------------------------------------------------------------------+
//| Expert deinitialization function                                 |
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
  {
//---
   
  }
//+------------------------------------------------------------------+
//| Expert tick function                                             |
//+------------------------------------------------------------------+

uint resultat=0;
          int i;
void OnTick()
  {
//---
                      for( ;i<5;i++){

 // if( resultat!=10009){
   MqlTick last_tick;
SymbolInfoTick(_Symbol,last_tick);
double Ask=last_tick.ask;
double Bid=last_tick.bid;

   MqlTradeRequest request={0};
   MqlTradeResult result={0};
   
   request.action= TRADE_ACTION_DEAL;
   request.magic =600;
   request.symbol=Symbol();
   request.price=Bid;
   request.deviation=20;
   request.volume=1;
   request.sl=Bid-300*Point();
   request.tp=Bid+300*Point();
   request.type=ORDER_TYPE_BUY;
   OrderSend( request,   result    );    
        
  int Error=GetLastError( ) ; ResetLastError();
  printf("Error %i ",Error);
  
   resultat= result.retcode ;
   printf("resultat %i ",resultat); //}
   Print ( i, PositionsTotal());
   // int PositionTicket= PositionGetInteger(POSITION_IDENTIFIER)
   
                                          }
  

   
  }
//+------------------------------------------------------------------+

 bool  PositionModify( int PositionTicket, double price, double stoploss, double takeprofit, datetime expiration, color arrow_color=CLR_NONE)
      {  MqlTradeRequest request  = {0};

Sí, abre órdenes, todo está bien, pero no escribe impresiones. Dice

2012.09.04 17:20:10 Operaciones '1232639': orden #11979593 comprar 1.00 / 1.00 EURUSD a 1.25755 hecho

2012.09.04 17:20:10 Operaciones '1232639': operación #11107137 comprar 1.00 EURUSD a 1.25755 hecho (basado en la orden #11979592)

2012.09.04 17:20:10 Operaciones '1232639': compra instantánea 1.00 EURUSD a 1.25739 sl: 1.25439 tp: 1.26039 (desviación: 20)


2012.09.04 17:20:10 Operaciones '1232639': compra instantánea 1.00 EURUSD a 1.25739 sl: 1.25439 tp: 1.26039 (desviación: 20)

2012.09.04 17:20:09 Asesor Experto (EURUSD,M5) cargado con éxito