Domande dai principianti MQL5 MT5 MetaTrader 5 - pagina 1280

 
Tango_X:
Ciao, cosa significa il numero di attivazioni quando si acquista il programma nel marketplace? Posso usare questo programma su diversi computer e diversi account allo stesso tempo? Il punto è che vogliamo comprare un programma per due persone e usare ognuno di loro separatamente

è meglio ordinare da liberi professionisti - il tipo di programma e sarà vostro con codice open source.

 
Fergert Фергерт:
Per favore, ditemi come controllare se un ordine di un certo tipo (in questo caso ORDER_TYPE_BUY_LIMIT ) o numero magico è presente e se è chiuso, l'EA continuerà il suo lavoro... Sarei molto grato...

Esempio di conteggio di quattro tipi di ordini pendenti nel codice Min Max for N Bars Martingale 2

//--- вызов функции
   int count_buy_limits=0,count_sell_limits=0,count_buy_stops=0,count_sell_stops=0;
   CalculateAllPendingOrders(count_buy_limits,count_sell_limits,count_buy_stops,count_sell_stops);
//--- сама функция
//+------------------------------------------------------------------+
//| Calculate all pending orders                                     |
//+------------------------------------------------------------------+
void CalculateAllPendingOrders(int &count_buy_limits,int &count_sell_limits,int &count_buy_stops,int &count_sell_stops)
  {
   count_buy_limits  = 0;
   count_sell_limits = 0;
   count_buy_stops   = 0;
   count_sell_stops  = 0;
   for(int i=OrdersTotal()-1; i>=0; i--) // returns the number of current orders
      if(m_order.SelectByIndex(i))     // selects the pending order by index for further access to its properties
         if(m_order.Symbol()==m_symbol.Name() && m_order.Magic()==InpMagic)
           {
            if(m_order.OrderType()==ORDER_TYPE_BUY_LIMIT)
               count_buy_limits++;
            else
               if(m_order.OrderType()==ORDER_TYPE_SELL_LIMIT)
                  count_sell_limits++;
               else
                  if(m_order.OrderType()==ORDER_TYPE_BUY_STOP)
                     count_buy_stops++;
                  else
                     if(m_order.OrderType()==ORDER_TYPE_SELL_STOP)
                        count_sell_stops++;
           }
  }

Min Max for N Bars Martingale 2
Min Max for N Bars Martingale 2
  • www.mql5.com
Поиск Минимальных и Максимальных цен на заданном количестве баров. Выставление отложенных ордеров
 

Buon pomeriggio.

Voglio chiudere una posizione dopo che il tempo è trascorso, faccio così, ma non funziona

if((TimeCurrent()-m_position.Time())>Time*3600)  {CloseOrders=true; ClosePositions(POSITION_TYPE_BUY); break;} //  если прошло много времени, закрываем !!!
               
 
Roman Kutemov:

Buon pomeriggio.

Voglio chiudere una posizione dopo che il tempo è trascorso, faccio così, per qualche motivo non funziona

Chi è'ClosePositions'?

E come si seleziona la posizione?

 
Vladimir Karputov:

Chi è'ClosePositions'?

E come si seleziona la posizione?

//| Close positions       по типу                                    |
//+------------------------------------------------------------------+
void ClosePositions(const ENUM_POSITION_TYPE pos_type)
  {
   for(int i=PositionsTotal()-1;i>=0;i--) // returns the number of current positions
      if(m_position.SelectByIndex(i))     // selects the position by index for further access to its properties
         if(m_position.Symbol()==m_symbol.Name() && m_position.Magic()==InpMagic)
            if(m_position.PositionType()==pos_type) // gets the position type
               m_trade.PositionClose(m_position.Ticket()); // close a position by the specified symbol
  }
 for(int i=PositionsTotal()-1;i>=0;i--)
      if(m_position.SelectByIndex(i)) // selects the position by index for further access to its properties
         if(m_position.Symbol()==m_symbol.Name() && m_position.Magic()==InpMagic)
           {
            if(m_position.PositionType()==POSITION_TYPE_BUY)
              {
 
Roman Kutemov:

Chi è il'Tempo'? Impostare un punto di interruzione prima di emettere un ordine. Controllare se hai colpito un punto di interruzione?

(E sì: non scrivere dichiarazioni multiple in una riga)

 
Vladimir Karputov:

Chi è il'Tempo'? Impostare un punto di interruzione prima di emettere un ordine. Controllare se hai colpito un punto di interruzione?

(E sì: non scrivere dichiarazioni multiple in una riga)

Tempo - nelle impostazioni esterne il tempo in ore. Per esempio, 7 ore dopo aver aperto una posizione, se non si è chiusa allo stop o al take, voglio chiuderla.
 
Roman Kutemov:
Tempo - nelle impostazioni esterne il tempo in ore. Per esempio, 7 ore dopo l'apertura della posizione, se non ha chiuso allo stop o al take, voglio chiuderla.

Forum sul trading, sistemi di trading automatico e test di strategia

FAQ da principianti MQL5 MT5 MetaTrader 5

Vladimir Karputov, 2021.01.27 17:49

*** Posizionareun punto di interruzione prima di emettere un ordine. Controllate mai se avete raggiunto un punto di interruzione?

(E sì: non scrivere più operatori in una riga)


 
Vladimir Karputov:

Sì, non l'hai fatto.

Corretto. Grazie.

 
Cosa dà pythoon che R non può dare?
Motivazione: