[¡Archivo!] Cualquier pregunta de novato, para no saturar el foro. Profesionales, no lo dejéis pasar. No podría ir a ningún sitio sin ti - 2. - página 287
En general, es hora de que los desarrolladores de MT creen una sección en la documentación y expliquen en detalle el problema y la necesidad de utilizar la normalización.
Sólo hay un modesto ejemplo sin énfasis en la documentación para esta situación:
int i = 1 / 2.0; // выражение приводится к типу double, затем приводится к целевому типу int, результат: 0
Cuando se cierra la Orden 3 (Vender), esa Orden 1 (Comprar) sigue semáforo que se cerró en Stop Loss y así se colocan 2 órdenes seguidas, porque Total=1.
es decir, busco una solución a este problema, es decir, qué sustituir total 1 para deshacerse de tal efecto
¿Puede decirme si el script puede abrir órdenes no sólo en la ventana del gráfico al que está unido, sino también en otros pares de divisas, si está debidamente prescrito en qué otros pares de divisas necesita abrir?
CreAndr: ¿Puede decirme si el script puede abrir órdenes no sólo en la ventana del gráfico al que está unido, sino también en otros pares de divisas, si está debidamente prescrito en qué otros pares de divisas necesita abrir?
No, lo que has resaltado será devuelto desde la herramienta actual. Las ofertas, demandas, dígitos, etc. deben solicitarse con MarketInfo especificando explícitamente la herramienta
Para iniciar sesión y usar el sitio web MQL5.com es necesario permitir el uso de Сookies.
Por favor, active este ajuste en su navegador, de lo contrario, no podrá iniciar sesión.
Ha iniciado sesión. La autenticación de dos factores se ha desactivado. Vuelva a configurarla y escanee un nuevo código QR, o continúe con la autenticación de dos factores desactivada.
2011.03.30 08:40:21 USDCAD,M1: 3 4 4.00000000 ask=0.9729 bid=0.9725
funciona así
funciona así
Gracias.
En general, es hora de que los desarrolladores de MT creen una sección en la documentación y expliquen en detalle el problema y la necesidad de utilizar la normalización.
Sólo hay un modesto ejemplo sin énfasis en la documentación para esta situación:
Sección "Enfoque de tipo" https://docs.mql4.com/ru/basis/types/casting
A FoxUA.
Cuando se cierra la Orden 3 (Vender), esa Orden 1 (Comprar) sigue semáforo que se cerró en Stop Loss y así se colocan 2 órdenes seguidas, porque Total=1.
es decir, busco una solución a este problema, es decir, qué sustituir total 1 para deshacerse de tal efecto
¿Puede decirme si el script puede abrir órdenes no sólo en la ventana del gráfico al que está unido, sino también en otros pares de divisas, si está debidamente prescrito en qué otros pares de divisas necesita abrir?
tal vez
tal vez
//--------------------------------------------------------------------
extern double TakeProfit = 1000;
extern double Lots = 0.01;
extern double StopLoss = 500.0;
extern int MagNum = 1974;
int slip = 100;
//+------------------------------------------------------------------+
//| |
//+------------------------------------------------------------------+
int start()
{
//::::Открытие и выставление ордеров
OrderSend("EURUSD",OP_BUY,Lots,NormalizeDouble(Ask,Digits),slip,NormalizeDouble(Bid - StopLoss*Point,Digits),NormalizeDouble(Ask + TakeProfit * Point,Digits),"CleverEA",MagNum,0,Green);
OrderSend("GBPUSD",OP_BUY,Lots,NormalizeDouble(Ask,Digits),slip,NormalizeDouble(Bid - StopLoss*Point,Digits),NormalizeDouble(Ask + TakeProfit * Point,Digits),"CleverEA",MagNum,0,Green);
OrderSend("USDJPY",OP_SELL,Lots,NormalizeDouble(Bid,Digits),slip,NormalizeDouble(Ask + StopLoss*Point,Digits),NormalizeDouble(Bid - TakeProfit * Point,Digits),"CleverEA",MagNum,0,Red);
OrderSend("USDCHF",OP_SELL,Lots,NormalizeDouble(Bid,Digits),slip,NormalizeDouble(Ask + StopLoss*Point,Digits),NormalizeDouble(Bid - TakeProfit * Point,Digits),"CleverEA",MagNum,0,Red);
return (0);
}
pero esta opción, ¿funcionará o no?
OrderSend("EURUSD",OP_BUY,Lots,NormalizeDouble(Ask,Digits),slip,NormalizeDouble(Bid - StopLoss*Point,Digits),NormalizeDouble(Ask + TakeProfit * Point,Digits)," CleverEA",MagNum,0,Green);
pero esta opción, ¿funcionará o no?
No, lo que has resaltado será devuelto desde la herramienta actual. Las ofertas, demandas, dígitos, etc. deben solicitarse con MarketInfo especificando explícitamente la herramienta
//--------------------------------------------------------------------
extern double TakeProfit = 1000;
extern double Lots = 0.01;
extern double StopLoss = 500.0;
extern int MagNum = 1974;
int slip = 100;
//+------------------------------------------------------------------+
//| |
//+------------------------------------------------------------------+
int start()
{
//::::Открытие и выставление ордеров
OrderSend("EURUSD",OP_BUY,Lots,NormalizeDouble(Ask,Digits),slip,NormalizeDouble(Bid - StopLoss*Point,Digits),NormalizeDouble(Ask + TakeProfit * Point,Digits),"CleverEA",MagNum,0,Green);
OrderSend("GBPUSD",OP_BUY,Lots,NormalizeDouble(Ask,Digits),slip,NormalizeDouble(Bid - StopLoss*Point,Digits),NormalizeDouble(Ask + TakeProfit * Point,Digits),"CleverEA",MagNum,0,Green);
OrderSend("USDJPY",OP_SELL,Lots,NormalizeDouble(Bid,Digits),slip,NormalizeDouble(Ask + StopLoss*Point,Digits),NormalizeDouble(Bid - TakeProfit * Point,Digits),"CleverEA",MagNum,0,Red);
OrderSend("USDCHF",OP_SELL,Lots,NormalizeDouble(Bid,Digits),slip,NormalizeDouble(Ask + StopLoss*Point,Digits),NormalizeDouble(Bid - TakeProfit * Point,Digits),"CleverEA",MagNum,0,Red);
return (0);
}
Pero, ¿funcionará esta opción o no?
No lo hará. Tiene que utilizar la función MarketInfo https://docs.mql4.com/ru/common/MarketInfo.
hay ejemplos de su problema en la página