Preguntas de los principiantes MQL4 MT4 MetaTrader 4 - página 235

 
Tenimagalon:
¿Esto es antes de la apertura?
(
)

Comprobado que funciona

//+------------------------------------------------------------------+
//|                                                  OrdersTotal.mq4 |
//|                        Copyright 2021, MetaQuotes Software Corp. |
//|                                             https://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2021, MetaQuotes Software Corp."
#property link      "https://www.mql5.com"
#property version   "1.00"
#property strict
//+------------------------------------------------------------------+
//| Expert initialization function                                   |
//+------------------------------------------------------------------+
int OnInit()
  {
//---
//---
   return(INIT_SUCCEEDED);
  }
//+------------------------------------------------------------------+
//| Expert deinitialization function                                 |
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
  {
//---
  }
//+------------------------------------------------------------------+
//| Expert tick function                                             |
//+------------------------------------------------------------------+
void OnTick()
  {
//---
   double lot =0.01;
   int Ticket;
//--- buy conditions
   if(OrdersTotal()<1)
     {
      Ticket=OrderSend(Symbol(),OP_BUY,lot,Ask,3,0,0,"",0,0,Blue);
      return;
     }

  }
//+------------------------------------------------------------------+
 
SanAlex:

Comprobado que funciona

Gracias :)🍺
 

Me gustaría aclarar una cosa más. Cómo cerrar las órdenes en beneficio. Digamos que abro 4 órdenes. Dos de compra en Euric y una de compra en Chif.Y también una de venta/configuración en el código Profit=10;

Intenté jugar con este código, pero no logré entender cómo podría cerrar dos órdenes de compra o venta cuando se alcanza el beneficio total.

 if(Tip==0 && AccountProfit()>=OrderProfit()*Profit + OrderSwap()>0)
              {
              fc=OrderClose(OrderTicket(),lot,Bid, 2);
              } 
              if (Tip==1 && AccountProfit()>=OrderProfit()*Profit + OrderSwap()>0)
              {
               fc=OrderClose(OrderTicket(),lot,Ask,2);
              }       
 
Los objetos TP SL aparecen en el gráfico después de cerrar las operaciones. ¿Cómo puedo evitar que aparezcan?
 
Aliaksandr Yemialyanau:
Los objetos TP SL aparecen en el gráfico después de cerrar las operaciones. ¿Cómo puedo evitar que aparezcan?
 
Por favor, ayúdenme a empezar. Mi agente no responde y no puedo ponerme en contacto con él.
 
Buenas tardes a todos. Vaya pregunta. Copio dos señales en cuentas MT4. Pero cuando el ordenador está apagado, sólo funciona una cuenta. Cuando enciendo el ordenador y cambio las cuentas a MT4, entonces la segunda cuenta empieza a funcionar también. Con el VPS todo es normal. Tengo mi propio servidor virtual. Por favor, indíqueme cuál es el problema. Necesito dejar el ordenador encendido o poner dos terminales MT4, pero no tengo ni idea de cómo hacerlo. Entiendo que la cuenta que se incluyó en MT4 funciona. Quería añadir un par de cuentas, pero ahora no sé cómo hacerlo ....
 
Равшана Рахмонов:
Por favor, ayúdenme a empezar. Mi agente no responde, no puedo contactar con él.

Compruebe el nombre de usuario, la contraseña y el nombre del servidor. Si lo copias y lo pegas, puede haber un espacio extra.

 
Tenimagalon:

Me gustaría aclarar una cosa más. Cómo cerrar las órdenes en beneficio. Digamos que abro 4 órdenes. Dos de compra en Euric y una de compra en Chif.Y también una de venta/configuración en el código Profit=10;

Intenté jugar con este código, pero no logré entender cómo podría cerrar dos órdenes de compra o venta cuando se alcanza el beneficio total.

if(AccountProfit()>Profit) Close_Buy_Sell();

//+------------------------------------------------------------------+
void Close_Buy_Sell()
  {
   for(int i=OrdersTotal()-1; i>=0; i--)
     {
      if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES)==false)
         break;
        {
         if(OrderType() == OP_BUY)
           {
            int a=OrderClose(OrderTicket(),OrderLots(),NormalizeDouble(Bid,Digits),3,Red);
           }
         if(OrderType() == OP_SELL)
           {
            int a=OrderClose(OrderTicket(),OrderLots(),NormalizeDouble(Ask,Digits),3,Red);
           }
        }
     }
  }
//+------------------------------------------------------------------+
Cerrar todo con beneficio total
Profit
 

Hola a todos! Acabo de empezar a aprender a escribir un sencillo robot de trading a partir de los ejemplos de los vídeos de YouTube. Quiero escribir un script para abrir la primeraorden de compra, y debe abrirse si no tengo otras órdenes abiertas, el script escribió esto, pero la orden no se abre, por favor, díganme dónde está el error!

<

void OnTick()

{

if (OP_SELL==0 && OP_BUY==0)

int ticket=OrderSend(Symbol(),OP_BUY,Lot1,Ask,Slippage,StopLoss,TakeProfit, "My order",MagicNumber,0,clrGreen);

>