Escribir EAs gratuitos - página 5

 
Por favor, escriba un EA sobre fractales.
Se adjuntan imágenes detalladas de la estrategia.


COMPRAR VENDER

La ubicación de los fractales es estrictamente como en la imagen.
El TP se calcula según el esquema de la imagen.
El SL se coloca bajo el fractal para la COMPRA y sobre el fractal para la VENTA.
El deslizamiento y el diferencial se tienen en cuenta en el código del Asesor Experto.
En las variables de entrada del Asesor Experto: Lote
 
yura droba:
Por favor, escriba un EA sobre fractales.
Se adjuntan imágenes detalladas de la estrategia.



La ubicación de los fractales es estrictamente como en la imagen.
El TP se calcula según el esquema de la imagen.
El SL se coloca bajo el fractal para la COMPRA y sobre el fractal para la VENTA.
El deslizamiento y el diferencial se tienen en cuenta en el código del Asesor Experto.
En las variables de entrada del Asesor Experto: Lote

Usted ha especificado la igualdad como en la geometría, pero en el mercado real la igualdad casi nunca se consigue. Hay que aceptar desviaciones aceptables como mínimo.

 
¡Buenas tardes!
Chicos, ¿alguien puede ayudarme?
Tengo una estrategia con un EA semiautomático. Necesito añadirle la apertura automática de órdenes en direcciones opuestas al mismo tiempo. Y el EA debería entrar en el mercado tan pronto como se cierre la última orden. Es decir, la última orden de compra se cerró, abre la orden de compra de inmediato. Si la última orden de venta está cerrada, abre una orden de venta inmediatamente.

En cuanto a la funcionalidad, añada botones: comprar - activar/desactivar

Vender - on/off

 

Por favor, indíqueme qué es lo que falla en el código. Compila pero no comercia en el probador.


extern double StopLoss =0;

extern double TakeProfit =0;

extern double Lots =0.1;

extern double Prots =0.0;

bool Trabajo=true;

cadena Symb;


extern int Periodo_de_bandas = 20;

extern double Desviación_de bandas = 2;





int

Total, // Número de pedidos en la ventana

Tip=-1, // Tipo de pedido seleccionado (B=0,S=1)

Ticket; // Número de pedido

doble

MA_1_t, // Valor. MA_1 valor actual".

Lote, // Número de lotes en la orden seleccionada

Lts, // Número de lotes en la orden abierta

Min_Lot, // Número mínimo de lotes

Paso, // Paso del cambio de tamaño del lote

Libre, // Fondos libres actuales

One_Lot, // Valor de un lote

Precio, // Precio de la orden seleccionada

SL, // Precio SL de la orden seleccionada

TP; // TP de la orden seleccionada

bool

Ans =false, // Respuesta del servidor después del cierre

Cls_B=false, // Criterio de cierre Comprar

Cls_S=false, // Criterio de cierre Venta

Opn_B=false, // Criterio de apertura de Buy

Opn_S=false; // Criterio de apertura Venta

//----------------------------------------------------------------------------------------------------------//

int inicio()

{

doble PorcentajeBB1;

doble PorcentajeBB2;

doble ma;

int cnt, total;



//------------------------------------------Protección contra errores y fallos--------------------------------------//

if(Bars<100) //si el número de velas es inferior a 100

{

Print("El número de barras es demasiado bajo");

return(0);

}

if (Volume[0] < 1.0) // if(Volume< 1.0) // si se negocia entonces el volumen es mayor que 0

{

Comentario("No hay operaciones... A la espera de una nueva barra...");

return(0);

}

si (AccountFreeMargin()<(1000*Lots))

{

Comentario("No hay suficiente dinero. El nivel de margen es inferior a ...");

return(0);

}


//-----------------------------------------Конец защиты от косяков-----------------------------------------//


PercentBB1 = iCustom(NULL,PERIOD_H1, "cBB",Bands_period,0,Bands_deviation,0 );

PorcentajeBB2 = iCustom(NULL,PERIOD_M15, "cBB",Bandas_periodo,0,Bandas_desviación,0);

ma = iMA(NULL,PERIOD_M15,20, 0, 0, PRICE_CLOSE, 0);


total=Total de pedidos();

//-------------------------------------------Закрытие позиций------------------------------------------

for(cnt=0;cnt<total;cnt++)

{

OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES);

if(OrderType()<=OP_SELL &&

OrderSymbol()==Symbol())

{

if(OrderType()==OP_BUY)

{

if(PorcentajeBB1 <=30,0000 && PorcentajeBB1 >=70,0000 && Oferta == ma)

{

Ticket=OrderClose(OrderTicket(),OrderLots(),Bid,50,Violet);

return(0);

}

}

if(OrderType()==OP_SELL)

{

if(PorcentajeBB1 <=30.0000 && PorcentajeBB1 >=70.0000 && Ask == ma )

{

Ticket=OrderClose(OrderTicket(),OrderLots(),Ask,50,Violet);

return(0);

}

}

}

}

//-----------------------------------------------Конец закрытия позиции------------------------------------

if(total==0) // si no hay posiciones

{

//abrir posición larga

if(PorcentajeBB1 >=30,0000 && PorcentajeBB1 <=70,0000 && PorcentajeBB2 <=0,0000 )

{

Ticket=OrderSend(Symbol(), OP_BUY,Lots,Ask,50,0, "Long position",16384,0,Red);

return(0);

}

//abrir posición corta

if(PorcentajeBB1 >= 30,0000 && PorcentajeBB1 <=70,0000 && PorcentajeBB2 >= 100,0000)

{

Ticket=OrderSend(Symbol(),OP_SELL,Lots,Bid,50,0, "Short Position",16384,0,Red);

return(0);

}

}

return(0);


 
Юра Юра:

Por favor, indíqueme qué es lo que falla en el código. Compila pero no comercia en el probador.


PercentBB1 = iCustom(NULL,PERIOD_H1, "cBB",Bands_period,0,Bands_deviation,0 );

PorcentajeBB2 = iCustom(NULL,PERIOD_M15, "cBB",Bandas_periodo,0,Bandas_desviación,0);

nadie ayuda
ningún indicador

 
Олег Новицкий:
Hola a todos!!! ¿es posible escribir un asesor sobre un indicador de flechas con un stop personalizable y asumir la señal inversa del indicador

no puedes, tus indicadores están descompilados

 

Listo para aceptar los TdR con la descripción detallada de la estrategia comercial para la ejecución GRATIS. Asesor experto o indicador para el terminal MT4.

Las estrategias de tipo "plantilla" no están sujetas a revisión. Por lo tanto, me reservo el derecho de seleccionar independientemente la RPT con la ejecución posterior.

En cuanto a los plazos, por favor, no los mencione. Tiempo para codificar 2-3 horas al día. De hecho, este es el precio de la ejecución gratuita.

***

 
Evgenii Voroshilov:

Listo para aceptar los TdR con la descripción detallada de la estrategia comercial para la ejecución GRATIS. Asesor experto o indicador para el terminal MT4.

Las estrategias de tipo "plantilla" no están sujetas a revisión. Por lo tanto, me reservo el derecho de seleccionar independientemente la RPT con la ejecución posterior.

En cuanto a los plazos, por favor, no los mencione. Tiempo para codificar 2-3 horas al día. De hecho, este es el precio de la ejecución gratuita.

***

Si quieres hacerlo gratis, tendrás que hacerlo públicamente.

 
Hola! No sé nada de escribir EAs, por eso tengo esta pregunta. ¿Es posible escribir un EA basado en un indicador sin un código fuente?
 
Alexey Olhovikov:
Hola, no sé nada de escribir EAs, por eso tengo esta pregunta. ¿Es posible escribir un EA basado en un indicador sin un código fuente?

Puedes hacerlo.