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

 
Nauris Zukas:

Sin el cambio, laAyuda de MQl5 no se abre.

¿Tienes una conexión rápida a Internet? Si la ayuda no se abre, significa que se está descargando. Antes había mensajes en el Diario de a bordo sobre el proceso de carga, ahora los mensajes han sido eliminados.

 

¡¡¡Me pueden decir por favor!!!

¿Qué escribir en iCustom después del nombre del indicador?

 
TaywinLannister:

¡¡¡Me pueden decir por favor!!!

¿Qué debo escribir en iCustom después del nombre del indicador?

Buscar a través de ejemplos con código: iCustom

 
TaywinLannister:

¡¡¡Me pueden decir por favor!!!

¿Qué escribir en iCustom después del nombre del indicador?

Ayuda en el sitio web.
Документация по MQL5: Технические индикаторы / iCustom
Документация по MQL5: Технические индикаторы / iCustom
  • www.mql5.com
[in] input-параметры пользовательского индикатора, разделенные запятыми. Тип и порядок следования параметров должен соответствовать. Если параметры не указаны, то будут использованы значения по умолчанию. INVALID_HANDLE. Для освобождения памяти компьютера от неиспользуемого больше индикатора служит функция IndicatorRelease(), которой...
 
foreXteller:

¡Querido Vladimir Karputov!

Gracias por el enlace.

He mirado su artículo recomendado "ALGORITMO DE GENERACIÓN DE TICKS EN EL TEST DE METATRADER 5 TERMINALES".

Esun poco diferente - no quiero analizar los valores de los ticks en un intervalo de minutos, y los últimos valores de mercado de SymbolInfoTick() no son tan importantes ahora.

Parajugar con MetaTrader 5 en el futuro, quiero probar mi estrategia (mi robot) con mis programas en las cotizaciones de un minuto de varias monedas simultáneamente, considerando suASK, BID, VOLUME y SPREAD, pero no los candelabros.

Como los programas están escritos en VISUAL C, no puedo utilizar MT para las pruebas.

Los programas son bastante complejos y difícilmente pueden ser traducidos a MQL (planeo usar archivos DLL en el futuro ).

Gracias por su atención.

¡QueridoVladimir Karputov!



El artículo que ha recomendado es el siguiente:

"Algoritmo de generación de garrapatas

"El Probador de Estrategias del terminal MetaTrader 5 utiliza sólo un modo de simulación de precios en las pruebas - la generación de ticks sobre la base de los datos históricos existentes en los marcos temporales de minutos por los símbolos utilizados".

Por favor, indíquenos dónde obtener los"datos históricos existentes en plazos de un minuto"

¡¡¡Gracias de antemano!!!


 

¿Pueden decirme cómo captar un evento de cierre de posición?

void OnTradeTransaction(const MqlTradeTransaction&    trans,
                        const MqlTradeRequest&        request,
                        const MqlTradeResult&         result
                        )
  {
   if(trans.type!=TRADE_TRANSACTION_DEAL_ADD)
      return;
   ...
  }
 
void OnTradeTransaction(const MqlTradeTransaction&    trans,
                        const MqlTradeRequest&        request,
                        const MqlTradeResult&         result
                        )
  {
   if(trans.type!=TRADE_TRANSACTION_DEAL_ADD)
      return;
   if(trans.deal_type!=DEAL_TYPE_BUY && trans.deal_type!=DEAL_TYPE_SELL)
      return;
   ENUM_DEAL_ENTRY entry_type=(ENUM_DEAL_ENTRY)HistoryDealGetInteger(trans.deal,DEAL_ENTRY);
   if(entry_type==DEAL_ENTRY_IN)
      return;
  }

¿Es esto correcto? Creo que también debería añadirse un control de volumen.

 
foreXteller:

¡QueridoVladimir Karputov!



En su artículo recomendado se da lo siguiente:

"Algoritmo de generación de garrapatas

El Probador de Estrategias del terminal MetaTrader 5 utiliza sólo un modo de simulación de precios en las pruebas - la generación de ticks sobre la base de los datos históricos existentes en los marcos de tiempo de un minuto en los símbolos utilizados".

Por favor, indíquenos dónde conseguir los"datos históricos existentes en plazos de un minuto"

¡¡¡Gracias de antemano!!!


Todo está ya en MetaTrader 5. Desde el principio. Enseguida. En cuanto te conectas al servidor de operaciones, obtienes inmediatamente acceso a todo el historial de ticks.

Cuando se trabaja en línea, por supuesto se trabaja con garrapatas reales. Mientras trabaja en el probador de estrategias, puede elegir el modo: "Cada tick se basa en ticks reales" - el método más preciso, los ticks de la historia real, o uno de los modos de generación de ticks: "Todos los ticks", "OHLC".

 

Por favor, dígame si hay algún código universal que permita obtener el beneficio de las posiciones en el historial? Al menos por pos_id. Que funcionaría en todos los mercados.

 
Juer:

¿Pueden decirme cómo captar un evento de cierre de posición?

Para forex utilizo esta opción.

/*********************TradeTransaction function**********************/
void OnTradeTransaction(const MqlTradeTransaction& trans,
                        const MqlTradeRequest& request,
                        const MqlTradeResult& result)
{
  if(trans.type == TRADE_TRANSACTION_DEAL_ADD && trans.symbol == _Symbol)
   {
    /******************** Если открылась позиция********************/
    if(PositionSelectByTicket(trans.position) && PositionGetInteger(POSITION_MAGIC) == magick)
      ifOpenedPosition(trans);
    /******************** Если закрылась позиция********************/
    if(!PositionSelectByTicket(trans.position))
     ifClosedPosition(trans);
   }
}/*******************************************************************/

Es decir, el puesto existe o no.

Juer:

Por favor, dígame, ¿existe un código universal que permita obtener el beneficio de las posiciones en el historial? Al menos por pos_id. Funcionaría en todos los mercados.

Escribir uno de estos es "pan comido". Simplemente se seleccionan las operaciones que pertenecen a la posición y se hace un bucle a través de ellas para sumar el beneficio, el intercambio y la comisión.
Razón de la queja: