Está perdiendo oportunidades comerciales:
- Aplicaciones de trading gratuitas
- 8 000+ señales para copiar
- Noticias económicas para analizar los mercados financieros
Registro
Entrada
Usted acepta la política del sitio web y las condiciones de uso
Si no tiene cuenta de usuario, regístrese
Intenta usar NormalizeDouble(price,Digits). A veces el precio de metatrader no es 1.2000 sino 1.20020031023012 y el resto de los dígitos es un problema para metatrader al colocar la orden pendiente. Utilice NormalizeDouble y estará bien
Muchas gracias Kalenzo, ahora funciona.
Definir los días de negociación
Borrado
¡Solución encontrada!
Hola Coders
Intento insertar una función en mi EA para elegir los días de negociación.
La función para las horas de negociación funciona bien.
Para las horas de negociación utilizo lo siguiente:
extern string TradingHours = "TRADING HOURS";
extern bool UseHourTrade = True;
extern int FromHourTrade = 8;
extern int ToHourTrade = 18;
y más tarde después de int inicio:
if (UseHourTrade){
if (!(Hour()>=FromHourTrade && Hour()<=ToHourTrade)) {
Comment("¡La hora para el comercio no ha llegado más!");
return(0);
Pero, ¿qué se necesita para seleccionar los días de negociación?
Cuando defino el externo como sigue:
extern string DíasDeComercio = "DíasDeComercio";
extern bool UseDayTrade = True;
extern int FromDayTrade = DayOfWeek;
extern int ToDayTrade = DayOfWeek;
entonces tengo dos mensajes siguientes:
'DayOfWeek'-variable esperada
¿qué hacer?
¿Alguien puede ayudarme?
Gracias por cualquier ayuda
¡¡¡GURU!!! Por favor, ayuda
Nevermind.....
Por favor, ayuda a todos
Tengo un problema, como hacer solo 1 posición abierta y 2 pendientes.
Digamos que comprar y Buystop , Sellstop.
Ya tuve una informacion de alguien en mql4, el uso :
if(buystoporder>0 && sellstoporder>0)return(0);
y antes de eso, él uso switch(OrderType()).
Estoy confundido, ¿dónde tengo que cambiar el código?
Estoy terminado en el buystop y sellstop abrir varias veces cuando cambio el código, mientras que si no, se espera hasta que uno es trigerred , llegar a su SL o TP y luego hacer un nuevo 2 pendientes.
Mi objetivo es 1 abierto y 2 pendientes, por lo que cuando el abierto alcance el SL o TP, uno de los pendientes se trigerred, uno isnot trigerred será eliminado. y hacer otros 2 pendientes.
¿Y es posible poner un número mágico en la opción switch()?
Muchas gracias por su ayuda.
¿Cuál es una declaración fácil de comprobar para ver si 2 medias móviles se han cruzado dentro de 5 barras antes de la barra actual? ¿Puede alguien ayudarme con esto?
Dave
-OR-
¿Cómo se pueden establecer 5 sentencias condicionales? Si las 5 son aceptables, se declara un buyvalue=1.
No sé si esto funcionaría por debajo..: ¿Alguien puede comentar si esto funcionaría, y si no, cómo debería declararse?
if(Condición1)
if(Condición2)
if(Condición3)
if(Condición4)
si(Condición5)
{
buyvalue=1;
}
Dave
if(Condition2)
if(Condition3)
if(Condiition4)
if(Condition5)
{
buyvalue=1;
}
Esta es la forma más económica y rápida de escribir pruebas multicondicionales.
Es la más rápida porque si la condición1 no se llena, la condición 2, 3, ... no se evalúan, lo que no ocurre si se pone el operador "&&" entre ellas.
Así que empieza por la condición menos frecuente.
Así que esto funcionará sin duda.
Ahora, como a menudo preguntas si algo funcionará, lo mejor es probar, es una buena manera de aprender también.
Saludos.
¿Cuál es una declaración fácil de comprobar para ver si 2 medias móviles se han cruzado dentro de 5 barras antes de la barra actual? ¿Puede alguien ayudarme con esto? Dave
ma1_0 = iMA(....,0);
ma2_0 = iMA(....,0);
ma1_5 = iMA(....,5);
ma2_5 = iMA(....,5);
if((ma1_0 - ma2_0) * (ma1_5 - ma2_5) < 0) cross = true;¿Cómo puedo...?
Hola,
Por favor, puede mostrarme si es posible, cómo digo
"si la posición anterior cerró en la vela "0" o en la vela "1", entonces no abra otra posición en esa misma vela" o, incluso si la vela "0" cumple las condiciones requeridas para abrir otra posición... si la posición anterior cerró en esa vela entonces impida que abra otra posición, espere a que las condiciones sean correctas de nuevo.
Lo puedo decir en inglés pero aún soy un poco novato en mql4.
gracias
amatrader
Puede utilizar el siguiente fragmento de código
for ( int i = OrdersHistoryTotal() - 1; i >= 0;i-- ) {
if ( ! OrderSelect( i, SELECT_BY_POS, MODE_HISTORY ) ) continue;
if ( OrderCloseTime() >= Time[ 1 ] ) {
last_order_closed_rather_recently = true;
break;
}
}
[/PHP]
after which you have the bool variable "last_order_closed_rather_recently" telling whether there was an order closed after the opening of bar 1. Then somewhere you'd have:
[PHP]if ( last_order_closed_rather_recently ) return( 0 );antes de introducir una nueva operación.
Gracias señor, se agradece mucho.