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

 

   felidae: 
Нет, всё в порядке, просто я дал случайно свою ссылку. Ваша должна быть по идее такая: https://www.mql5.com/ru/users/vik1991/accounting/chooseout

Gracias por la respuesta, ¿hay alguna forma de aumentar las ganancias o simplemente esperar a que aumente la demanda?

 

Por favor, indique cómo aumentar (rellenar) una posición en un EA basado en el Asistente MQL5, donde las posiciones se abren utilizando

virtual int LongCondition();
virtual int ShortCondition()
;

He escrito un robot basado en el siguiente artículo

https://www.mql5.com/ru/articles/367"Crear un robot de trading en 6 pasos" y funciona bien, pero cualquier intento de influir en el tamaño de la posición

(si aumenta o disminuye) a través de la generación repetida de la condición en , por ejemplo

LongCondition();

La posición ya abierta no se modifica, sólo puede borrarse al activarse sl , tp.

Me gusta el MQL5 Wizard, es rápido y fácil de "construir" un EA multiindicador, cambiar el módulo de seguimiento de sl, cambiar el módulo de gestión de dinero.

Pero mi intento de escribir un EA que abra una posición mínima cuando un indicador confirme una tendencia y que aumente (incremente) la posición cuando la tendencia sea confirmada por otro indicador

se encontró con el problema descrito anteriormente - una posición ya abierta no cambia al volver a emitir una señal de apertura a través de, por ejemplo,LongCondition();

Создай торговый робот за 6 шагов!
Создай торговый робот за 6 шагов!
  • 2012.06.01
  • MetaQuotes Software Corp.
  • www.mql5.com
Вы не знаете, как устроены торговые классы, и пугаетесь слов "Объектно-ориентированное программирование"? На самом деле вовсе не обязательно всё это знать, чтобы написать свой собственный модуль торговых сигналов - достаточно следовать простым правилам. Всё остальное сделает Мастер MQL5, и вы получите готовый торговый робот!
 
Hola, no consigo averiguar cómo utilizar el modo "cálculo matemático", me gustaría ver un ejemplo de código si es posible, o decirme dónde encontrarlo
 

Quiero dejar sólo las herramientas de forex en el mercado, el código funciona bien

   for(int i=0;i<=SymbolsTotal(false);i++)
     {
      if(SymbolInfoInteger(SymbolName(i,false),SYMBOL_TRADE_MODE)==SYMBOL_TRADE_MODE_FULL && SymbolInfoInteger(SymbolName(i,false),SYMBOL_TRADE_CALC_MODE)==SYMBOL_CALC_MODE_FOREX && SymbolInfoDouble(SymbolName(i,false),SYMBOL_ASK)-SymbolInfoDouble(SymbolName(i,false),SYMBOL_BID)<50*SymbolInfoDouble(SymbolName(i,false),SYMBOL_POINT))
        {
         SymbolSelect(SymbolName(i,false),true);
        }
      else SymbolSelect(SymbolName(i,false),false);
     }

Pero en cuanto lo ejecuto en el probador, se carga el historial del siguiente instrumento; no se puede cargar. ¿Cómo puedo desactivarlo para el probador????????

2013.04.04 14:09:21 Núcleo 1 GBOTEURUSD17DEC2012: sincronización del historial iniciada

 
Yuriy2019:

Por favor, indique cómo aumentar (rellenar) una posición en un EA que se basa en el Asistente MQL5 y donde las posiciones se abren a través de


Desgraciadamente, el caso que describes entra en la categoría de "mejora" aquí (en el Foro).

Para resolver el problema, es necesario cambiar el comportamiento del Asesor Experto. Para ello:

1. Necesitamos crear una nueva clase (por ejemplo CMyExpert) que herede de la clase CExpert.

2. Recarga el método Processing en él, cambiando su comportamiento.

3. Reemplazar (manualmente) el archivo de inclusión en el código fuente del Asesor Experto.

#include <Expert\Expert.mqh>

a

#include <Expert\MyExpert.mqh>

4. Reemplace (manualmente) el nombre de la clase en el código fuente del Asesor Experto.

CExpert ExtExpert;

a

CMyExpert ExtExpert;

Se adjunta el ejemplo de la clase. Se comenta la salida del método si hay una posición abierta y no hay operaciones sobre ella (línea 53).

No olvide seguir los puntos 3 y 4 después de cada "regeneración" del Asesor Experto en el Asistente.

P.D. Si tiene alguna pregunta, póngase en contacto conmigo.

Документация по MQL5: Стандартная библиотека / Классы торговых стратегий / Базовые классы экспертов / CExpert
Документация по MQL5: Стандартная библиотека / Классы торговых стратегий / Базовые классы экспертов / CExpert
  • www.mql5.com
Стандартная библиотека / Классы торговых стратегий / Базовые классы экспертов / CExpert - Документация по MQL5
Archivos adjuntos:
MyExpert.mqh  4 kb
 
Hola, podrían decirme por qué no puedo entrar en el terminal. Introduzco el servidor, el número de cuenta y la contraseña, pero en el registro aparece la siguiente entrada: 2013.04.05 12:51:20 Red '68712': conexión a 208.64.66.68:443 perdida
He probado con otro servidor y lo mismo, ¿qué estoy haciendo mal?
 
uncleVic:

Lamentablemente, el caso que describes entra en la categoría de lo que aquí (en el Foro) se denomina "puesta a punto".

Para resolver el problema, hay que cambiar el comportamiento del experto. Para ello:

1. Debes crear una nueva clase (por ejemplo CMyExpert) que herede de la clase CExpert.

2. Recarga el método Processing en él, cambiando su comportamiento.

3. Reemplazar (manualmente) el archivo de inclusión en el código fuente del Asesor Experto.

a

4. Reemplace (manualmente) el nombre de la clase en el código fuente del Asesor Experto.

a

Se adjunta una clase de ejemplo. Se comenta la salida del método si hay una posición abierta y no hay operaciones sobre ella (línea 53).

Recuerde seguir los pasos 3 y 4 después de cada "regeneración" del Asesor Experto en el Asistente.

P.D. Si tiene alguna pregunta, no dude en ponerse en contacto conmigo.

Muchas gracias, ¡todo funciona! Añade el mismo volumen cuando la tendencia es confirmada por otro indicador.

Ahora nos queda una pregunta más: ¿es posible cambiar el tamaño del "add"? Por ejemplo, el tamaño de posición estándar en el módulo de gestión monetaria es 0,1, mientras que yo quiero añadir ("añadir") 0,3 o 0,35, etc. calculado por el Asesor Experto.

¿Cómo puedo pasar el tamaño de la "recarga" desde la subrutinaLongCondition() al módulo comercial?

 
Yuriy2019:

Muchas gracias, ¡está funcionando! Añade el mismo volumen en la confirmación de la tendencia de otro indicador.

Ahora tengo una pregunta más: ¿es posible cambiar el tamaño de la "acción"? Por ejemplo, el tamaño de posición estándar en el módulo de gestión monetaria es 0,1, mientras que yo quiero añadir ("añadir") 0,3 o 0,35, etc. calculado por el Asesor Experto.

¿Cómo puedo pasar el tamaño de la "recarga" de la subrutinaLongCondition() al módulo de comercio?

La clase CExpert tiene métodos:

//+------------------------------------------------------------------+
//| Long position open or limit/stop order set                       |
//+------------------------------------------------------------------+
bool CExpert::OpenLong(double price,double sl,double tp)
  {
   if(price==EMPTY_VALUE) return(false);
//--- get lot for open
   double lot=LotOpenLong(price,sl);
//--- check lot for open
   if(lot==0.0) return(false);
//---
   return(m_trade.Buy(lot,price,sl,tp));
  }
//+------------------------------------------------------------------+
//| Short position open or limit/stop order set                      |
//+------------------------------------------------------------------+
bool CExpert::OpenShort(double price,double sl,double tp)
  {
   if(price==EMPTY_VALUE) return(false);
//--- get lot for open
   double lot=LotOpenShort(price,sl);
//--- check lot for open
   if(lot==0.0) return(false);
//---
   return(m_trade.Sell(lot,price,sl,tp));
  }

Sobrecarga en su clase (similar a Processing) y cambia el algoritmo de determinación de lotes.

Документация по MQL5: Стандартная библиотека / Классы торговых стратегий / Базовые классы экспертов / CExpert
Документация по MQL5: Стандартная библиотека / Классы торговых стратегий / Базовые классы экспертов / CExpert
  • www.mql5.com
Стандартная библиотека / Классы торговых стратегий / Базовые классы экспертов / CExpert - Документация по MQL5
 
uncleVic:

La clase CExpert tiene métodos:

Sobrecarga en su clase (similar a Processing) y cambia el algoritmo de detección de lotes.

Gracias.
 

Hay un indicador que dice que funciona en el precio de apertura

código

#property copyright "Ivanov A."
#property link      "aristocrat12@mail.ru"
#property version   "1.00"

#property description "TrendToTrend"
#property indicator_chart_window
#property indicator_buffers 3
#property indicator_plots   3
#property indicator_type1   DRAW_LINE
#property indicator_type2   DRAW_LINE
#property indicator_type3   DRAW_LINE


#property indicator_style1  STYLE_DASH
#property indicator_style2  STYLE_DASH
#property indicator_style3  STYLE_DASH


#property indicator_color1  Blue
#property indicator_color2  Red
#property indicator_color3  Yellow


#property indicator_applied_price PRICE_OPEN
//--- input param

input int InChPeriod = 14; //Line Trend long
input int InChPeriod2 =7; //Line Trend short

int ExChPeriod,ExChPeriod2,rCount;
//---- buffers

double CentreBuffer[],HorisontBuffer[],ShortBuffer[];
Документация по MQL5: Стандартные константы, перечисления и структуры / Константы индикаторов / Ценовые константы
Документация по MQL5: Стандартные константы, перечисления и структуры / Константы индикаторов / Ценовые константы
  • www.mql5.com
Стандартные константы, перечисления и структуры / Константы индикаторов / Ценовые константы - Документация по MQL5
Razón de la queja: