Respuesta

Creación de funciones en AlgoWizard

3 respuestas

Comercio con propósito

Abonado, bbp_participant, cliente, comunidad, sq-ultimate, 7 respuestas.

Visitar el perfil

hace 1 año #288569

Hola,

Soy un desarrollador experimentado MQL5 y estoy tratando de codificar nuestra EA en SQX para back testing. Ya hemos codificado con éxito nuestros indicadores en .java utilizando el editor de código, pero no estoy viendo una opción para crear una estrategia en el Editor de Código. ¿Estoy viendo esto correctamente? ¿No se nos permite codificar estrategias en Code Editor?

Si es así, ¿cómo puedo codificar en mis funciones personalizadas utilizando AlgoWizard como yo no estoy viendo las opciones que necesito en los desplegables fijos? He intentado las "Funciones personalizadas" donde puse una función en el .mq5 en "C:\StrategyQuantX138\user\extend\Code\MetaTrader5\CustomFunctions" pero no parecía reconocer esto para volver a probar.

Por ejemplo, una de las funciones más simplistas que tenemos es asignar el Precio Medio de las Compras a una variable, ¿cómo lo haría con AlgoWizard? o ¿hay alguna forma de codificar una estrategia en Code Editor de forma similar a como codificamos los indicadores en .java?

A continuación se muestra una función de ejemplo que me gustaría codificar.

Gracias de antemano por su ayuda.

[code]double Precio_medio_BUY(ulong número_mágico,cadena símbolo,int s){

double Precio_total = 0;
double Tamaño_total = 0;
doble bPrecio_medio;

for(int i = TotalPosiciones() - 1; i >= 0; i-){
string CurrencyPair = PositionGetSymbol(i);
double PositionOpenPrice = PositionGetDouble(POSITION_PRICE_OPEN);
double PositionSize = PositionGetDouble(POSITION_VOLUME);
long PositionDirection = PositionGetInteger(POSITION_TYPE);
long PositionMagicNumber = PositionGetInteger(POSITION_MAGIC);

if (symbol == CurrencyPair && PositionDirection == POSITION_TYPE_BUY && PositionMagicNumber == magicNumber){
Tamaño_total += Tamaño_posición;
Precio_Total += PositionOpenPrice * PositionSize;
}
}

if (Tamaño_total != 0) {
bPrecio_medio = Precio_total / Tamaño_total;
} else {

bPrecio_medio = 0,0;
}

 

if(inpCommissionAccount==false){return bPrecio_medio;}
else{devuelve bPrecio_medio+(sym[s].CommPointsToAdd*SymbolPoint(symbol));}
}[/code]

 

0

tomas262

Administrador, sq-ultimate, 2 respuestas.

Visitar el perfil

hace 1 año #288574

Hola,

es correcto. No se puede utilizar CodeEditor para crear estrategias directamente.

CustomFunctions sólo se puede utilizar en sim / real no en backtesting. No se puede simplemente obtener el precio medio. En el modo de cobertura de MT4/5 cada posición es tratada como independiente. No se puede hacer referencia directa al "precio medio de la posición".

0

Comercio con propósito

Abonado, bbp_participant, cliente, comunidad, sq-ultimate, 7 respuestas.

Visitar el perfil

hace 1 año #288582

De acuerdo, gracias por su respuesta.

¿Hay alguna forma de escribir algo personalizado en AlgoWizard o estamos limitados a los desplegables fijos?

1

Bartosz

Abonado, bbp_participant, cliente, comunidad, sq-ultimate, 1 respuestas.

Visitar el perfil

hace 1 año #289168

1. También estoy interesado en utilizar CUST Custom Function. La descripción dice que podemos usarla para poner nuestro código MQL personalizado, pero no menciona que no podemos usarla en el retester, etc. Entonces, ¿cuál es su uso previsto?

0

Viendo 3 respuestas - de la 1 a la 3 (de un total de 3)