Errores, fallos, preguntas - página 385

 
stringo:
¿Estás llamando al indicador?
Sí, en el indicador.
 
Dima_S:
Sí, en un indicador.

En los indicadores está prohibido llamar a algunas funciones que ocupan recursos informáticos y ralentizan el cálculo - funciones comerciales, Sleep, MessageBox

Документация по MQL5: Торговые функции
Документация по MQL5: Торговые функции
  • www.mql5.com
Торговые функции - Документация по MQL5
 

¡Buenas tardes!

Una pregunta: ¿en qué servidor puedo probar diferentes tipos de ejecución?

SOLICITUD_DE_EJECUCIÓN_DE_SÍMBOLO

Comercio por encargo

SÍMBOLO_COMERCIO_EJECUCIÓN_INSTANTE

Comerciar a precios de streaming

SÍMBOLO_COMERCIO_EJECUCIÓN_MERCADO

Ejecución_de órdenes de mercado

Ejecución sólo a precios de flujo. Tenemos que depurar el código por el mercado y por petición.

Sí, el código está en MQL5, por supuesto.

Gracias.

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

En los indicadores se prohíbe la llamada de algunas funciones que consumen recursos informáticos y ralentizan el cálculo - funciones comerciales, Sleep, MessageBox

Ya veo. Así que tendré que calcularlo manualmente. Aunque en MT4 esta función
MarketInfo("EURUSD",MODE_MARGINREQUIRED)

y funciona bien en el indicador.

 
Dima_S:
Ya veo. Por lo tanto, tendremos que calcularlo manualmente. Aunque en MT4 esta función

y en el indicador funciona bien.

SymbolInfoDouble(MarketInfo) es una simple solicitud de información existente. Y OrderCalcMargin - una función de cálculo (en la cruz o el símbolo que falta, puede solicitar la información que falta desde el servidor, con todas sus consecuencias)

 

¡Buenas tardes!

1. ¿Se añadirá el evento de desplazamiento del gráfico a la lista de eventos OnChartEvent()?

2. Por qué la función CopyBuffer colocada en un indicador personalizado causa el error 4806,

mientras que la misma función con los mismos parámetros en el código del Asesor Experto funciona bien?

Переход на новые рельсы: пользовательские индикаторы в MQL5
Переход на новые рельсы: пользовательские индикаторы в MQL5
  • 2009.11.23
  • Андрей
  • www.mql5.com
Я не буду перечислять все новые возможности и особенности нового терминала и языка. Их действительно много, и некоторые новинки вполне достойны освещения в отдельной статье. Вы не увидите здесь кода, написанного по принципам объектно-ориентированного программирования — это слишком серьезная тема для того, чтобы просто быть упомянутой в контексте как дополнительная вкусность для кодописателей. В этой статье остановимся подробней на индикаторах, их строении, отображении, видах, а также особенностях их написания по сравнению с MQL4.
 

También hay una pregunta. Me gustaría saber la hora de finalización de la sesión de negociación de una herramienta el viernes.

Utilizo la función para este propósito:

  datetime bt,et;
  SymbolInfoSessionTrade("EURUSD",FRIDAY,0,bt,et);

Pero por alguna razón, esta función siempre devuelve falso. No entiendo qué es el número de sesión y de dónde lo saco.

Документация по MQL5: Получение рыночной информации / SymbolInfoSessionQuote
Документация по MQL5: Получение рыночной информации / SymbolInfoSessionQuote
  • www.mql5.com
Получение рыночной информации / SymbolInfoSessionQuote - Документация по MQL5
 
bobsley:

También hay una pregunta. Me gustaría saber la hora de finalización de la sesión de negociación de una herramienta el viernes.

Utilizo la función para este propósito:

Pero por alguna razón la función devuelve false todo el tiempo. No está claro qué es el número de sesión y de dónde sacarlo.

Según tengo entendido, por sesiones se entienden las sesiones de negociación y cotización dentro de un día. Pero sólo hay una sesión configurada en el servidor (puede ser sólo para monedas) - 0.

Físicamente puede determinar la hora de inicio y fin de la operación en las propiedades del instrumento (en el servidor MQ es 00:00 - 24:00).

Puede obtenerla mediante programación utilizando SymbolInfoSessionTrade(). Pero una cosa es segura, no dará la fecha exacta de inicio y fin de la sesión, sino el valor relativo en segundos desde el inicio del día hasta el momento de inicio y fin de la sesión (si se traduce en segundos, por supuesto).

bool InfoSession;
datetime from = -1,to = -1;

InfoSession = SymbolInfoSessionTrade(Symbol(),FRIDAY,0,from,to);

  if(InfoSession)
  {
  Print("Session: from ",from," to ",to);
  Print("Session: from ",(int)from," to ",(int)to);
  }
Este es el ejemplo que produce el siguiente resultado -
2011.05.14 19:51:02 ******* Session: from 1970.01.01 00:00:00 to 1970.01.02 00:00:00
2011.05.14 19:51:02 ******* Session: from 0 to 86400

En consecuencia, para determinar el final de la sesión de negociación del viernes, tenemos que definir la fecha de inicio de la cuenta atrás (00:00 del viernes concreto) y añadir a esta hora el resultado que la función devolvió como hora de finalización de la sesión.

PS

También hay que tener en cuenta que el servidor suele cerrar la sesión con un desfase de +/- 1 a 2 segundos.

Cómo le afecta el horario de verano/invierno también es una incógnita, pero si mis ojos no mienten al cierre del fin de semana las últimas cotizaciones se recibieron a las 23:00:00 y a las 23:00:01 (según el símbolo).

 

¡Promotores!

Por favor, presten atención a mi solicitud #105082.

Hay problemas al compilar bibliotecas con el modificador de exportación.

 

construir 448
Al intentar abrir las propiedades de la ventana
o propiedades de cualquier indicador,
o intentar instalar cualquier indicador en el gráfico,
el terminal del cliente se cierra.
W XP3 32

En mi opinión, esta es la "mejor" actualización de todas.