Qualsiasi domanda da principiante, per non ingombrare il forum. Professionisti, non passate oltre. Da nessuna parte senza di te - 6. - pagina 609

 
artmedia70:

Anche questo va lì. Naturalmente - uno non contraddice l'altro. Sta contando gli ordini di stop per il Buy dall'ask. Non li normalizza. Non controlla la limitazione della distanza di StopLevel.

In breve, è un guazzabuglio.



Ho capito, grazie. Ho fatto un gran casino con i prezzi. StopLevel dovrebbe essere controllato prima di piazzare un ordine pendente. Anche le fermate e i lotti sono controllati per la stessa pochezza.

In questo caso particolare lo stop leveller secondo i termini del broker = 0, e lo stop e il profitto sono impostati molto più indietro. Per quanto riguarda il prezzo dell'ordine a mercato, per quanto ne so, viene aperto al prezzo di mercato più vicino e il livello di stop non ha nulla a che fare con esso in questo caso. Giusto?

 
artmedia70:

Per il Buy, lo stop e il take sono calcolati dal prezzo Bid - questo è uno.

In secondo luogo, se si calcolano i prezzi degli ordini stop, questi devono essere normalizzati. Il fatto che SL e TP siano stati normalizzati prima non è un grosso problema. Poi si usa il valore non normalizzato dell'espressione nell'ordine di compravendita.

In terzo luogo, tutti i prezzi devono soddisfare i requisiti e le restrizioni delle operazioni commerciali. Il livello di StopLevel, per esempio, può essere più grande della dimensione dell'ordine stop.



Ho capito bene che i valori devono essere normalizzati all'interno dell'ordine commerciale?
 
Dimmi come, con eleganza, trovare il TIME Lowe di ieri. Perché ho delle costruzioni poco maneggevoli.
 
001:
Dimmi come, con eleganza, trovare il TIME Lowe di ieri. Perché ho delle costruzioni ingombranti in arrivo.

Trova l'indicatore prezzo-canale(canale doncian ), metti una profondità di 1periodo sui diari... dovrebbe essere che
 
YOUNGA:

Trovate l'indicatore prezzo-canale (canale doncian), impostate una profondità di 1periodo sui diari... dovrebbe essere che
Grazie, farò una prova. Qualcun altro ha qualche opzione mentre sto cercando?
 

Buon pomeriggio, per favore aiutatemi con il codice.

In questa implementazione, gli ordini di acquisto e di vendita sul mercato sono mediati separatamente. Come posso implementare che l'ultimo ordine aperto non sia soggetto a modifiche generali nella sua serie?

extern int t=10;

///////////////////////////////////////////////////////
      int kolOK=0;
//   int i=0;
   int kol1=0;
   int kol2=0;
   double lots1=0;
   double lots2=0;
   double sum0=0;
   double sum=0;
  // double sum1=0;
   /////////////////////////////////////////////////////////////////////
   int Total = OrdersTotal();
   for(int i=Total-1; i>=0; i--)
   {
      if (!OrderSelect(i,SELECT_BY_POS,MODE_TRADES)) continue;
      if (OrderSymbol()!=Symbol()) continue;
      if (OrderType()==OP_BUY)
      {
       lots1=lots1+OrderLots();
       sum0=sum0+OrderLots()*OrderOpenPrice();
      // sum1=sum1+OrderProfit( )+OrderSwap( )+OrderCommission( )  ; 
       kol1=kol1+1;
      }
      if (OrderType()==OP_SELL)
      {
       lots2=lots2+OrderLots();
       sum=sum+OrderLots()*OrderOpenPrice();
      // sum1=sum1+OrderProfit( )+OrderSwap( )+OrderCommission( )  ;
       kol2=kol2+1;
      }
   }
   ////////////////////////////////////////////////////////////////////////////
   double zeroprice1=0;
   double zeroprice2=0;
   if (lots1!=0) zeroprice1=sum0/lots1;
   if (lots2!=0) zeroprice2=sum/lots2;
   zeroprice1 = (MathRound(zeroprice1*MathPow(10,Digits)))/MathPow(10,Digits);
   zeroprice2 = (MathRound(zeroprice2*MathPow(10,Digits)))/MathPow(10,Digits);

 int res1 = 0;
 int res2 = 0;

 double zeroprice10 = NormalizeDouble(zeroprice1 + t*Point, Digits);
 double zeroprice20 = NormalizeDouble(zeroprice2 - t*Point, Digits);
 if (zeroprice10 !=0 || zeroprice20 !=0) {
   int Total2 = OrdersTotal();
   for(int in=Total2-1; in>=0; in--)
   {
      if (!OrderSelect(in,SELECT_BY_POS,MODE_TRADES)) continue;
      if (OrderSymbol()!=Symbol()) continue;     

           if (OrderType()==OP_BUY) {if (zeroprice10 == NormalizeDouble(OrderTakeProfit(), Digits)) res1=res1+1; else { if (OrderModify(OrderTicket(),OrderOpenPrice(),OrderStopLoss(),zeroprice10,0,CLR_NONE)) res1 = res1+1;} }

           if (OrderType()==OP_SELL){if (zeroprice20 == NormalizeDouble(OrderTakeProfit(), Digits)) res2=res2+1; else { if (OrderModify(OrderTicket(),OrderOpenPrice(),OrderStopLoss(),zeroprice20,0,CLR_NONE)) res2 = res2+1;} } 
       }   
   }
 
fmv_for_a_way:


Capito, grazie. Ho effettivamente fatto un errore con i prezzi. Controlliamo lo stop loss prima di piazzare un ordine pendente. C'è anche un controllo di stop e perdite per la stessa pochezza.

In questo caso particolare, il livello di stop del broker = 0 e lo stop e il profitto sono impostati molto più lontano. Per quanto riguarda il prezzo dell'ordine di mercato, la mia comprensione è che si apre al prezzo di mercato più vicino e il livello di stop non ha nulla a che fare con esso. Giusto?

No, non lo è. Alpari usa il doppio spread come StopLevel.
 
fmv_for_a_way:

Ho capito bene che i valori devono essere normalizzati all'interno dell'ordine commerciale?
Non necessariamente all'interno. Ma appena prima di inviarlo, sì.
 
artmedia70:
Non necessariamente a destra all'interno. Ma appena prima della spedizione, sì.


Grazie. Cercherò una soluzione.
 
Gente, potete dirmi dove scaricare MT4 build 625?
Motivazione: