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
aquí está mi función para mt4 ecn, ndd, stp ...
Ni un solo error en un año
//+----------------------------------------------------------------------------+
//| Función de apertura de pedidos (BeerGod) |
//+----------------------------------------------------------------------------+
//| Parámetros: |
//| sy - nombre del instrumento ("" - símbolo actual) |
//| op - operación |
| //| ll - lote |
//| sl - nivel de parada |
//| tp - tomar nivel |
//| mn - MagicNumber |
//+----------------------------------------------------------------------------+
bool OpenPosition(string sy, int op, double ll, double sl=0, double tp=0, int MagicNumber=0)
{
double MinLl = MarketInfo(Symbol(),MODE_MINLOT);
double MaxLl = MarketInfo(Symbol(),MODE_MAXLOT);
ll = NormalizarDoble(ll,2);
si (ll < MinLl) ll = MinLl; si no ll = ll;
si (ll > MaxLl) ll = MaxLl; si no ll = ll;
if (op == 0) // BUY opening
{
// Compruebe si hay fondos libres disponibles
if((AccountFreeMarginCheck(sy,OP_BUY,ll)<=0) || (GetLastError()==134))
{
Print(sy," ",ll," Es imposible abrir la orden Comprar, no hay suficiente dinero");
return(0);
}
RefreshRates();
// Orden de apertura
int ticketbuy = OrderSend(sy,OP_BUY,ll,MarketInfo(sy,MODE_ASK),Slippage,0,0,Comments,MagicNumber,0,BuyColor);
if(ticketbuy<0)
Print(sy," OpenPosition. OrderSend Buy fail #",GetLastError());
si no
Print(sy," OpenPosition. OrderSend Buy successfully");
// Dormir (Pausa);
// Modificar la orden (establecer el take profit y el stop loss)
si (sl !=0 || tp !=0)
{
//--- Los precios SL y TP calculados deben ser normalizados
double BSLoss = NormalizeDouble(MarketInfo(sy,MODE_ASK)-sl*MarketInfo(sy,MODE_POINT),(int)MarketInfo(sy,MODE_DIGITS))
double BTProfit = NormalizeDouble(MarketInfo(sy,MODE_ASK)+tp*MarketInfo(sy,MODE_POINT),(int)MarketInfo(sy,MODE_DIGITS));
//--- Si el valor de entrada es cero, sustituye el precio de modificación por cero
si (sl == 0) BSLoss = 0;
si (tp == 0) BTProfit = 0;
bool resbuy = OrderModify (ticketbuy,OrderOpenPrice(),BSLoss,BTProfit,0,StopColor);
si(!resbuy)
Print(sy," OpenPosition. OrderModify Buy fail #",GetLastError());
si no
Print(sy," OpenPosition. OrderModify Comprar con éxito");
}
}
if (op == 1) // Abrir la venta.
{
// Comprobar la disponibilidad de fondos libres
if((AccountFreeMarginCheck(sy,OP_SELL,ll)<=0) || (GetLastError()==134))
{
Print(sy," ",ll," Es imposible abrir la orden Vender, no hay suficiente dinero.");
return(0);
}
RefreshRates();
// Orden de apertura
int ticketsell = OrderSend(sy,OP_SELL,ll,MarketInfo(sy,MODE_BID),Slippage,0,0,Comments,MagicNumber,0,SellColor);
if(ticketsell<0)
Print(sy," OpenPosition. OrderSend Sell fail #",GetLastError());
si no
Print(sy," OpenPosition. OrderSend Sell successfully");
// Dormir (Pausa);
// Modificar la orden (establecer el take profit y el stop loss)
si (sl !=0 || tp !=0)
{
//--- Los precios SL y TP calculados deben ser normalizados
double SSLoss = NormalizeDouble(MarketInfo(sy,MODE_BID)+sl*MarketInfo(sy,MODE_POINT),(int)MarketInfo(sy,MODE_DIGITS))
double STProfit = NormalizeDouble(MarketInfo(sy,MODE_BID)-tp*MarketInfo(sy,MODE_POINT),(int)MarketInfo(sy,MODE_DIGITS));
//--- Si el valor de entrada es cero, sustituye el precio de modificación por cero
si (sl == 0) SSLoss = 0;
si (tp == 0) STProfit = 0;
bool ressell = OrderModify (ticketsell,OrderOpenPrice(),SSLoss,STProfit,0,StopColor);
if(!ressell)
Print(sy," OpenPosition. OrderModify Sell fail #",GetLastError());
si no
Print(sy," OpenPosition. OrderModify Sell successfully");
}
}
return(True);
}
/Fin
P.D. Moderadores, el código no se puede insertar a través del botón.
Estoy dando clases gratuitas (sin cargo) por Skype sobre la inserción de códigos:)
Doy clases gratuitas (sin cargo) por Skype sobre la inserción de códigos:)
Doy clases gratuitas (sin cargo) por Skype sobre la inserción de códigos:)
Gracias.
Hecho, si usted tiene alguna pregunta sobre el código de escritura, también disponible en persona o en Skype
listo, si tiene alguna pregunta sobre el código, correo electrónico o Skype
La Alerta sale con el mensaje: No hay precio. Esperamos una nueva garrapata...
Tenía una cuenta demo que funcionaba bien y abría una operación a la primera. Necesito más detalles.