Bibliotecas: MT4Orders - página 2

 
Dmitry Fedoseev:

Se detectan algunos rudimentos en el trabajo con el histórico:

Cada vez que se llama a OrdersHistoryTotal(), se recorre todo el histórico de la cuenta con un montón de comprobaciones.

La selección en el histórico por índice es lo mismo que recorrer todo el histórico.

Esto no es un rudimento, sino, por desgracia, una necesidad.

Dmitry Fedoseev:
¿Cuáles fueron las pruebas relacionadas con el trabajo con el historial?

No las describiré todas, fueron muchas. El historial se probó en varias situaciones artificiales, así como el historial durante la ejecución de MT4-advisors

if (MQLInfoInteger(MQL_VISUAL_MODE))
    Comment("Trade:" + OrdersToString() + "\nHistory:" + OrdersToString(MODE_HISTORY)); // en el modo visual del comprobador se puede ver
 

Foro sobre trading, sistemas automatizados de trading y prueba de estrategias de trading

Asesores Expertos: Spreader

fxsaber, 2016.09.03 11:18 AM.

Puedes comprobarlo en el tester de MT5.

// Se trata de un asesor MT5 que permite ejecutar el correspondiente
// MT4-advisor en MT5(Hedge) probador multidivisa (con ticks reales)

// https://www.mql5.com/es/code/16006
#include <MT4Orders.mqh>
#include <MQL4_to_MQL5.mqh>

//#include "Spreader_v1.mq4" // https://www.mql5.com/es/code/9484
#include "Spreader_v2.mq4" // https://www.mql5.com/es/code/9495

void OnTick()
{
  start();
}

Resultado backtest multidivisa con configuración por defecto en modo EURUSD M1 OHLC.

Detalles en el archivo de informe.


 
Hola! ¿Puedo tener una instrucción paso a paso o vídeo sobre cómo tomar cualquier MT4 Asesor Experto y hacer que la prueba en la plataforma MT5?
 
Nauris Zukas:
Hola! ¿Puedo tener una instrucción paso a paso o video de cómo tomar cualquier MT4 Asesor Experto y hacer que la prueba en la plataforma MT5?

Foro sobre trading, sistemas automatizados de trading y testeo de estrategias de trading

Dificultades de traducción :)

Alexey Volchanskiy, 2016.09.05 14:05

Voy a hacer un video en mi blog en YouTube en la traducción de MQL4 a MQL5.

 

Автор создавал такую возможность для себя, поэтому намеренно не проводил подобную же идею перехода "одной строкой" для таймсерий, графических объектов, индикаторов и т.д.

Estas obras sólo afectan al sistema de órdenes de detención.

Obras en negrita

MQL's OOP notes: Converting MetaTrader 4 indicators to MetaTrader 5
MQL's OOP notes: Converting MetaTrader 4 indicators to MetaTrader 5
  • 2016.09.28
  • //www.mql5.com/en/users/marketeer">
  • www.mql5.com
It has been a long time since MetaTrader 5 was released, but MQL products for MetaTrader 4 do still prevail on mql5.com site (both in the codebase, and in the market), and in the Internet in general....
 

Esto es lo que he encontrado OrderSelect no funciona en el código. ¿Qué pasa con la variable del terminal MT4 Ask? ¿No se emula de ninguna manera?

#include <mt4orders.mqh>

void OnStart()
{
    MqlTick last_tick;
    SymbolInfoTick(Symbol(),last_tick);
    double Ask = last_tick.ask;
    int ticket = OrderSend(Symbol(), OP_BUY, 0.1, Ask, 10, 0, 0);
    if(ticket > 0)
        if(OrderSelect(ticket, SELECT_BY_TICKET))// no selecciona, aunque la posición está abierta, ticket = 28912052. En el terminal en la pestaña "Comercio Ticket = 38631303
        {
            double price = OrderOpenPrice();
            Print("price = ", DoubleToString(price, Digits()));
        }
}

billete


 
Alexey Volchanskiy:

Esto es lo que he encontrado OrderSelect no funciona en el código.

Sí, OrderSend devuelve una entrada no una posición sino una orden/transacción. Esto es un efecto del hecho de que la biblioteca fue escrita y probada sólo en un probador fuera de línea.

Pensé que de todos modos nadie la usa, por eso no publiqué la versión corregida (la arreglé hace tiempo). Por la misma razón no publiqué la variante que también puede funcionar en las bolsas.

¿Qué pasa con la variable del terminal MT4 Ask? ¿No está emulada de ninguna manera?

Todo lo que no tiene que ver con el sistema de lenguaje de órdenes se coloca por separado
#include <MQL4_to_MQL5.mqh>
ZЫ He enviado la versión corregida a su PM.
 
fxsaber:

La versión corregida se envió a PM.


¿Y por qué no actualizar la publicación? Todo el mundo necesita.

 
Stanislav Korotky:

¿Por qué no actualizas la publicación? Todo el mundo debería hacerlo.

Por desgracia, la actualización de las publicaciones en kodobase no es tan frecuente (moderada) como nos gustaría.

 
Stanislav Korotky:

¿Por qué no actualizas la publicación? Todo el mundo la necesita.

De lo contrario fxsaber está molesto porque soy el único que se dio cuenta de este error, por lo que nadie necesita la lib )) Es que los nuestros son muy observadores.

Una anécdota de la vida - Yo estaba llevando a cabo un seminario web, repetí 10 veces que la grabación será. Al final vuelvo a decir, la grabación será mañana, si usted tiene preguntas - preguntar. Y ahora supongo que la primera pregunta ))))