Come faccio a chiudere tutti gli ordini al profitto totale in pip? - pagina 2

 
khasan kayumov:

Come si calcola il profitto in punti?

Prima di cancellare

                    for(pos = 0; pos < 100500; pos++) 
                    {
                        if(OrderSelect(pos, SELECT_BY_POS))
                        if(OrderType() == OP_BUY)
                        {
                            buy_profit_USD = buy_profit_USD + OrderProfit() + OrderSwap() + OrderCommission();

                            buy_profit_Point = buy_profit_Point+ ((Bid - OrderOpenPrice()) / Point);

                                
                        }
                    }

 
Evgeny Belyaev:

Ah, sì?

Faccio un ordine e viene rifiutato dal server, ottengo l'errore 130.

Cosa devo fare e non c'è nessuna posizione, non c'è niente da chiudere. Posso solo cancellare. Cosa devo fare o sto facendo qualcosa di sbagliato?

Vuoi davvero che ti risponda?
 
Dmitry Fedoseev:
Vuoi davvero che ti risponda?

No, non voglio che l'argomento si trasformi in una raffica.

 
Evgeny Belyaev:

No, non voglio che l'argomento si trasformi in flubbing.


E allora non lo ammucchiate.

 
Evgeny Belyaev:

Faccio trading sul mercato, non su MT, MT è solo un'applicazione che non definisce correttamente il nome delle funzioni. Posizione - comprare, impostare, difensore, attaccante...

Ordine - ordine da piazzare, comprare, vendere, difensore, attaccante, centrocampista...

Affare...


Siamo ora sul forum di MT4. E la domanda è specificamente su MQL4. Quindi qui è abbastanza appropriato usare la terminologia introdotta in MT4 e MQL4. Dopo tutto, anche le funzioni di contabilità che si chiamano trade (posizioni costitutive) iniziano con la parola "Order": OrderSend(), OrderClose(), OrderModify().

 
Ihor Herasko:

Dopotutto, anche le funzioni di contabilità di quelli che sono chiamati trade (posizioni costitutive) in borsa iniziano con la parola "Order": OrderSend(), OrderClose(), OrderModify().

Le funzioni sono indubbiamente chiamate così. In MT4, il nome delle funzioni non è corretto. Il terminale è obsoleto, quindi i nomi non sono corretti.

Beh, come possiamo capirci?

Stiamo parlando della stessa cosa. Se lei lo chiama ordine di acquisto, io lo chiamo posizione.

Come facciamo a capirci?

 
Evgeny Belyaev:

Le funzioni sono indubbiamente chiamate così. In MT4 i nomi delle funzioni non sono del tutto corretti. Il terminale è obsoleto, ecco perché i nomi non sono corretti.

Bene, come facciamo a capirci?

Stiamo parlando della stessa cosa. Se lei lo chiama ordine di acquisto, io lo chiamo posizione.

Come facciamo a capirci?


Sono abituato a usare la terminologia del terminale. Può essere sbagliato, ma mi aiuta quando leggo la documentazione. In MT4: ordini a mercato e ordini pendenti. In MT5: compravendite, posizioni e ordini. Su altre piattaforme: compravendite, posizioni, scambi, ordini.

 
Mikhail Sergeev:

                    for(pos = 0; pos < 100500; pos++) 
                    {
                        if(OrderSelect(pos, SELECT_BY_POS))
                        if(OrderType() == OP_BUY)
                        {
                            buy_profit_USD = buy_profit_USD + OrderProfit() + OrderSwap() + OrderCommission();

                            buy_profit_Point = buy_profit_Point+ ((Bid - OrderOpenPrice()) / Point);

                                
                        }
                    }

Perché il numero 100500 e non OrdersTotal()?

 
khasan kayumov:

Come si calcola il profitto in pip?

Prima di cancellare

//+------------------------------------------------------------------+
void OnStart()
  {
  double p;
   int i,pr=0;

   for(i=0; i<OrdersTotal(); i++)
     {
      if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES))
        {
        p=MarketInfo(OrderSymbol(), MODE_POINT);
         if(OrderType()==OP_BUY)
           {
            pr+=int((MarketInfo(OrderSymbol(), MODE_BID)-OrderOpenPrice())/p);
           }
         if(OrderType()==OP_SELL)
           {
            pr+=int((OrderOpenPrice()-MarketInfo(OrderSymbol(), MODE_ASK))/p);
           }
        }
     }   
   Alert( "суммарный профит открытых позиций в пунктах = ",pr); 
  }
//+------------------------------------------------------------------+

Come questo.

 
Ihor Herasko:

Sono abituato a usare la terminologia secondo il terminale. Può essere sbagliato, ma aiuta molto quando si legge la documentazione. In MT4: ordini a mercato e ordini pendenti. In MT5: compravendite, posizioni, ordini. Su altre piattaforme: compravendite, posizioni, scambi, ordini.


E se non avessi dato un indizio sul terminale? La terminologia dovrebbe essere cross platform. Non ci saranno problemi nella comprensione delle informazioni.

Capisco il vostro punto di vista, sono tollerante, è giustificato dai nomi delle funzioni.

Se avete incontrato 5 trader, uno sta usando Quickquick, un altro sta usando MT4, il terzo sta usando 5-Rouble, il quarto sta facendo trading via ninja, e l'ultimo sta usando il terminale web.

Come si raggiunge un denominatore comune e come si determina cosa è una posizione e cosa è un ordine?