Aprender y escribir juntos en MQL5

Николай  

Sugiero que los que quieran intenten aprender juntos el FIVE.

Por desgracia, en la rama principal, donde se realizan las pruebas beta, hay poca ayuda para aprender un nuevo idioma.

Realmente hay pruebas de errores y la rama está destinada a los PROFESORES.

Para el otro 90% de los programadores sugiero que se discutan temas más "comprensibles".

Empezaré diciendo que he empezado a reescribir un indicador muy práctico para A, pero me he encontrado con muchos problemas que requerían una lluvia de ideas.

El primer problema es que ahora es imposible aplicar el enfoque utilizado en los 4 indicadores en el 5.

Tengo que implementarlo todo a través de Expert Advisor. Lo adjunto para revisarlo y aceptar sugerencias (no para criticarlo :-). La descripción de lo que se ha implementado y lo que sucederá, un poco más adelante.

Hasta ahora he conseguido implementar en él el 15% de lo que había en Quartet.

Brevemente, lo que estoy tratando de implementar:

1) Lucha con la marca 3/5. Para los que comercian con el "adulto" el quinto signo es como la quinta pata del perro. Personalmente, me estorba. Optimizo la visualización de información y la gestión de posiciones y órdenes como si fueran 4.

2) Para mostrar toda la información posible sobre instrumentos, órdenes, etc. directamente en el gráfico. Muy cómodo y claro, especialmente para F11.

3) Visualización gráfica de las posiciones y operaciones del instrumento actual en el gráfico, así como información sobre todas las posiciones en la esquina inferior izquierda

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

Por favor, pruebe el siguiente script para eliminar las líneas de tendencia (código presentado en 2 variantes):

void OnStart()
{ bool ticket;string name;int obj_total=ObjectsTotal(0,0,OBJ_TREND);
for(int i=0;i<obj_total;i++){
name = ObjectName(0,i,0,OBJ_TREND);
ticket=ObjectDelete(0,name);
if(!ticket){Alert("Borrar error TrendLine #",GetLastError());return;}
}/for(int i=0;i<ObjectsTotal(0,0,OBJ_TREND);i++)
}

y otra variante:

void OnStart()

{ bool ticket;string name;int obj_total=ObjectsTotal(0,0,OBJ_TREND);int i=0;
while(obj_total>0){
name = ObjectName(0,i,0,OBJ_TREND);
ticket=ObjectDelete(0,name);
if(!ticket){Alert("Borrar error TrendLine #",GetLastError());return;}
obj_total=ObjectsTotal(0,0,OBJ_TREND);i++;
}//mientras
}
Por alguna razón, por ejemplo de diez líneas, borra varias y se cuelga. En MT4 todo funciona - todo se borra y al instante.

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

En general, ambos son erróneos. Es aconsejable organizar el recorrido de los objetos de cualquier lista desde el final. No escribo la palabra "siempre", porque puede haber casos en los que no sea así.

Un deseo: hacer el código correctamente, utilizar la combinación de teclas Ctrl+ en el MetaEditor 5 para el formateo del código (pulsar simultáneamente Ctrl y coma), entonces será más legible. Prueba esta opción:

 void OnTick()
  {
//---
   void OnStart()
     {
      bool ticket;
      string name;
      int obj_total=ObjectsTotal(0,0,OBJ_TREND);
      for(int i=obj_total-1;i>=0;i--)
        {
         name=ObjectName(0,i,0,OBJ_TREND);
         ticket=ObjectDelete(0,name);
         if(!ticket)
           {
            Alert("Delete TrendLine error #",GetLastError());
            return;
           }
     }
//---
  }
MQL5.community - Памятка пользователя
MQL5.community - Памятка пользователя
  • 2010.02.23
  • MetaQuotes Software Corp.
  • www.mql5.com
Вы недавно зарегистрировались и у вас возникли вопросы: Как вставить картинку в сообщение на форуме, как красиво оформить исходный код MQL5, где находятся ваши Личные сообщения? В этой статье мы подготовили для вас несколько практических советов, которые помогут быстрее освоиться на сайте MQL5.community и позволят в полной мере воспользоваться доступными функциональными возможностями.
Николай  
Rosh :

En general, ambos están equivocados. Es conveniente organizar el recorrido de los objetos de cualquier lista desde el final. No escribo la palabra "siempre", porque puede haber casos en los que no sea así.

Un deseo: hacer el código correctamente, utilizar la combinación de teclas Ctrl+ en el MetaEditor 5 para el formateo del código (pulsar simultáneamente Ctrl y coma), entonces será más legible. Prueba esta opción:


Gracias. Funciona. En cuanto a la disposición, yo también indento el código. En este post en particular, he insertado el código como texto plano, por lo que no tiene sangría.

MQL5.community - Памятка пользователя
MQL5.community - Памятка пользователя
  • 2010.02.23
  • MetaQuotes Software Corp.
  • www.mql5.com
Вы недавно зарегистрировались и у вас возникли вопросы: Как вставить картинку в сообщение на форуме, как красиво оформить исходный код MQL5, где находятся ваши Личные сообщения? В этой статье мы подготовили для вас несколько практических советов, которые помогут быстрее освоиться на сайте MQL5.community и позволят в полной мере воспользоваться доступными функциональными возможностями.
Boroff  

Y quizás esta akazija:

//+------------------------------------------------------------------+
//||

//+------------------------------------------------------------------+


reemplazar con:

/*------------------------------------------------------------------+

//+----------------------------------------------------------------*/


Como se insertan automáticamente, es muy incómodo editarlas después (añadir nuevas líneas)

Документация по MQL5: Основы языка / Типы данных / Целые типы / Символьные константы
Документация по MQL5: Основы языка / Типы данных / Целые типы / Символьные константы
  • www.mql5.com
Основы языка / Типы данных / Целые типы / Символьные константы - Документация по MQL5
kombat  
Boroff :

Y quizás esta akazija:

//+------------------------------------------------------------------+
//||

//+------------------------------------------------------------------+


reemplazar con:

/*------------------------------------------------------------------+

//+----------------------------------------------------------------*/


Como se insertan automáticamente, es muy incómodo editarlas después (añadir nuevas líneas)


Puedes editar la plantilla directamente en el unitor, por ejemplo:

...mt5\MQL5\Templates\Expert.mqt

(no importa guardar una copia, por ejemplo con el nombre ruso Expert.mqt)



SZS: Por cierto, una pregunta a los desarrolladores.

Además de #cabecera#, ¿es posible añadir #nombredearchivo#?
para que sea más fácil y flexible adaptar la cabecera a sus necesidades...

kombat  
vdv2001 :

Puede cambiar la plantilla para adaptarla a sus necesidades, por ejemplo:

...mt5\MQL5\Templates\Expert.mqt

(no impida que se guarde una copia, por ejemplo, con el nombre ruso Expert.mqt)

No he encontrado esos directorios y archivos, ¿o tienes que crearlos tú mismo?


¡Están ahí!

Tienes que poner una marca en el menú contextual "Mostrar todos los archivos".

Aprende lo básico. ;)

---  
kombat :


¡Están ahí!

Debe poner una marca en el menú contextual "Mostrar todos los archivos".

Aprende las matemáticas... ;)


Sí, y busca en toda la unidad... podría estar todo en el lugar más inesperado :)
Boroff  
Por favor, envíenme un ejemplo de este archivo... He buscado por todo el ordenador y no he encontrado ningún archivo mqt :(
Razón de la queja: