[ARCHIVIO] Qualsiasi domanda da principiante, per non ingombrare il forum. Professionisti, non passate oltre. Da nessuna parte senza di te - 3. - pagina 596

 
evillive:
Domanda: nella modalità di test visuale le linee dell'indicatore sono disegnate solo alla fine del test, è così per tutti o sto facendo qualcosa di sbagliato?

tutti loro.

https://www.mql5.com/ru/forum/131853/page2#463027

 
consigliare come aprire correttamente gli ordini con perdite e prelievi in un advisor alpari (codice)
 
link1:
consigliare come aprire correttamente gli ordini con perdite e prelievi in un advisor alpari (codice)

Sai come aprire correttamente gli ordini con perdite e prelievi nel tuo EA (codice) con un'altra società di brokeraggio?
 
zxc:

Sapete come "aprire correttamente gli ordini con perdite e prelievi" in un'altra società di brokeraggio?

E qual è la differenza tra aprire un ordine in Alpari e aprire un ordine in Oanda o in un'altra società di brokeraggio?
 
zxc:

Sapete come "aprire correttamente gli ordini con perdite e prelievi" in un'altra società di brokeraggio?

Ho lavorato con altre società di brokeraggio, il mio EA funziona, ma non con Alpari, ecco perché sto chiedendo, forse ci sono alcune peculiarità?
 
link1:

Ho un buon feeling con altre società di brokeraggio, il mio EA funziona, ma non con Alpari.


Qui è dove avreste dovuto iniziare. Nel terminale, quando si apre un ordine manualmente, si possono mettere degli stop immediatamente?

Cosa dice dove si trova il tipo di ordine? Esecuzione immediata o esecuzione sul mercato?

 
zxc:


Qui è dove avreste dovuto iniziare. Nel terminale, quando si apre un ordine manualmente, si possono mettere degli stop immediatamente?

Cosa dice dove si trova il tipo di ordine? Esecuzione immediata o esecuzione sul mercato?


Per quanto riguarda Alpari, se hai l'esecuzione a mercato, non puoi mettere SL o TP, solo se hai un ordine pendente, puoi farlo su un conto demo, come su uno micro.

Ho anche prestato attenzione a questo problema e ho deciso di modificare il mio EA mettendo SL e TP senza SL e poi, di modificarlo e impostare SL e TP.

Ma come modificarlo? )) Ho copiato la modifica da alcuni Expert Advisor, ma c'era un errore nel codice e non ha compilato. Ad essere onesti non c'è nessun articolo sulla modifica e l'esempio con trailing stop nel tutorial. Ho appena iniziato a imparare il linguaggio e questo è il mio primo EA e non so come modificare gli ordini correttamente...

Penso anche che forse il problema è nelle 5 cifre? Cosa ne pensi?

 

Che ne dite di questo? E per il take profit più o meno allo stesso modo...

for(int i = 0; i < total; i++)

     {
       OrderSelect(i, SELECT_BY_POS, MODE_TRADES); 
       // check for symbol & magic number
       if(OrderSymbol()==Symbol() && OrderMagicNumber()== Magic) 
         {
           if(OrderType() == OP_BUY)  // long position is opened
            {

                  if(OrderStopLoss()==0)
                   {
                     OrderModify(OrderTicket(),OrderOpenPrice(),Bid-Point*sl,OrderTakeProfit(),0,Orange);
                    return(0);
                   }
            } 
           if(OrderType() == OP_SELL)  // short position is opened
            {

                 if(OrderStopLoss()==0)
                  {
                    OrderModify(OrderTicket(),OrderOpenPrice(),Ask+Point*sl,OrderTakeProfit(),0,Orange);
                    return(0);
                  }
            }
         }
     }

Non è possibile modificare affatto l'ordine stop loss in questo ciclo, e chiudere l'ordine quando raggiunge il livello di stop, per DC l'ordine apparirà come senza uno stop loss, ma viene chiuso dall'EA chiaramente quando il livello di stop loss viene superato (variabile sl):

   for(int i = 0; i < total; i++)
     {
       OrderSelect(i, SELECT_BY_POS, MODE_TRADES); 
       // check for symbol & magic number
       if(OrderSymbol()==Symbol() && OrderMagicNumber()== Magic) 
         {
           if(OrderType() == OP_BUY)  // long position is opened
            {
               if((OrderOpenPrice()-Ask)<Point*sl) // stoploss
                 {
                    OrderClose(OrderTicket(),OrderLots(),Ask,slippage,Aqua);
                 }
               if((Bid-OrderOpenPrice())>Point*(ts+minp)) //trail
                 {
                  if(OrderStopLoss()<(Bid-Point*ts))
                   {
                     OrderModify(OrderTicket(),OrderOpenPrice(),Bid-Point*ts,OrderTakeProfit(),0,Orange);
                   }
                 }
            } 
           if(OrderType() == OP_SELL)  // short position is opened
            {
               if((Bid-OrderOpenPrice())>Point*sl) // stoploss
                 {
                    OrderClose(OrderTicket(),OrderLots(),Bid,slippage,Magenta);
                 }
               if((OrderOpenPrice()-Ask)>Point*(ts+minp)) //trail
                {
                 if(OrderStopLoss()>(Ask+Point*ts))
                  {
                    OrderModify(OrderTicket(),OrderOpenPrice(),Ask+Point*ts,OrderTakeProfit(),0,Orange);
                  }
                }
            }
         }
     }
 
Voglio creare un array bidimensionale [biglietto][prezzo di apertura].
 
dmmikl86:
Voglio creare un array bidimensionale [biglietto][prezzo di apertura]. la domanda è quale tipo dichiarare l'array come int o dub?

il prezzo di apertura è doppio
Motivazione: