Tutte le domande dei nuovi arrivati su MQL4 e MQL5, aiuto e discussione su algoritmi e codici - pagina 715

 
Zvezdochet:
URRRRRRRRRRRRAAAAAAAAAAAAAAAAAAAAAAAAAAAA!!!!!!!!!!! Taggrogismo sconfitto!!! Ma passaran! Venceremos! Nicaragua libero!

Non credo che dovresti più postare in questo thread - non è qui per insegnarti a leggere/scrivere o a parlare. È qui che i principianti vengono aiutati. E non sei un principiante, sei un bambino :)

ZS. Ti ho già dato un link su dove iniziare. E non importa che sia su cinque, è la stessa lingua. L'API è diversa.

Документация по MQL5: Основы языка
Документация по MQL5: Основы языка
  • www.mql5.com
Язык MetaQuotes Language 5 (MQL5) является объектно-ориентированным языком программирования высокого уровня и предназначен для написания автоматических торговых стратегий, пользовательских технических индикаторов для анализа разнообразных финансовых рынков. Он позволяет не только писать разнообразные экспертные системы, предназначенные для...
 
Artyom Trishkin:

Non credo che dovresti più postare in questo thread - non è qui per insegnarti a leggere/scrivere o a parlare. È qui che i principianti vengono aiutati. E non sei un principiante, sei un bambino :)

ZS. Ti ho già dato un link su dove iniziare. E non importa che sia su cinque, è la stessa lingua. L'API è diversa.

Bene.... prima di essere bannato...... , secondo le regole del freelance, ai bambini non è vietato fare la pipì. Così ho scritto - cosa si può fare con un bambino - non sa cosa sta facendo. E ci sono molti rami qui, l'albero è grande, in crescita, auguro all'albero buona salute.

IMHO (anch'io pantano) ci sono molti collegamenti e non entrano nella tua testa. E qui le persone (non i riferimenti) hanno dato un piccolo aiuto - hanno fatto del bene e non li hanno mandati a ...... o in esilio in Siberia.

Fratelli in esilio! Aiutami a capire come risolvere il secondo compito! C'è una linea Coment ( str ) e sul monitor "Hello" dovrebbe illuminarsi.

 
Zvezdochet:
&&&&&&&& sulla tastiera è cyara 7 con shift nel layout inglese :)
 
https://www.mql5.com/ru/forum/160683/page711#comment_9876690 Ditemi chi sa dove si possono leggere le informazioni sulla mia domanda - se non potete aiutarmi, lo farò da solo... Altrove mi è stato consigliato che MT5 può farlo, ma io ho MT4, la ricerca non è di aiuto.
 
ruzaden:
https://www.mql5.com/ru/forum/160683/page711#comment_9876690 Ditemi chi sa dove si possono leggere le informazioni sulla mia domanda - se non potete aiutarmi, lo farò da solo... Mi è stato detto altrove che è possibile farlo in MT5, ma io ho MT4, la ricerca non aiuta.

questo può essere fatto tramite le variabili globali del terminale. A condizione di avere il codice sorgente dell'indicatore e di poterlo modificare.

Significa che l'indicatore eseguirà i calcoli ottenendo i parametri non tramite extern ma chiamando GlobalVariableGet(). E di conseguenza l'Expert Advisor cambierà questa variabile attraverso GlobalVariableSet

 

Vorrei fare un paio di miglioramenti a MT5:

1. Ridurre il numero di cifre sul grafico da 5 a 4, il broker non vuole farlo.

2. Per qualche ragione, quando imposto il colore della linea dell'offerta, lo sfondo del prezzo diventa dello stesso colore e si fonde con lo sfondo.

Se imposto il colore nero, otterrò una linea continua su tutto lo schermo che distrae molto.


Per quanto ho capito, il modo migliore per farlo è quello di emettere il valore del prezzo come un marcatore di testo. Come posso farlo muovere quando il prezzo cambia?

È possibile che la mia domanda abbia già una soluzione da molto tempo, ma non ho trovato nulla cercando.

 
ruzaden:
&&&&&&&& sulla tastiera è cyara 7 con shift nel layout inglese :)
Ahhhhhh

...... Ho già paura di accendere il mio portatile, ho pensato: "Mi stanno guardando con la webcam. Sanno che ho un 7. "Hanno già iniziato a scavare trincee. Costruire un rifugio antiatomico. ecc. ....

 

Finché non hanno creato un thread "Any Questions for Babies", farò finta di essere un novellino e farò domande qui. Sto parlando del secondo incarico. L'ho copiato esattamente. Ci sono solo un paio di parole che ho messo nel template, ma ci sono molti errori

Stringa str ="Ciao ";

Commento (str );


 
Zvezdochet:

Finché non hanno creato un thread "Any Questions for Babies", farò finta di essere un novellino e farò domande qui. Sto parlando del secondo incarico. L'ho copiato esattamente. Ci sono solo un paio di parole che ho messo nel template, ma ci sono molti errori

Stringa str ="Ciao ";

Commento (str );


void OnStart()
{
     int y = 7;
     double z = 1.47;
     string str = "Привет!";
     
     Comment( str, "\n", y, "\n", z); 
}
 
Ciao a tutti, cosa bisogna controllare?? dà un avvertimento sulla modifica e sull'apertura .... (????) restituisce un valore e ho bisogno di controllarlo ... come??? EA apre gli ordini come meglio credo ... (((
extern string MMM          = "MMM";
extern double Lot          = 0.1;
extern int    TakeProfit   = 50;
extern int    StopLoss     = 20;
extern int    Slippage     = 3;
extern int    Magic        = 888;
// Moving Average 1
extern string Indi_MA1        = "MA1";
extern int    MA1_Period   = 22;
extern int    MA1_Shift    = 0;
extern int    MA1_Method   = 0;
extern int    MA1_Price    = 0;
// Moving Average 2
extern string Indi_MA2        = "MA2";
extern int    MA2_Period   = 55;
extern int    MA2_Shift    = 0;
extern int    MA2_Method   = 0;
extern int    MA2_Price    = 0;
//+------------------------------------------------------------------+
double MA1,MA2,SL,TP;
int ticket;
//+------------------------------------------------------------------+
//| Expert initialization function                                   |
//+------------------------------------------------------------------+
int init()
  {
    if (Digits == 3 || Digits == 5)
    {
      TakeProfit = TakeProfit * 10;
      StopLoss = StopLoss     * 10;
      Slippage = Slippage     * 10;
    }
   return(0);
  }
//+------------------------------------------------------------------+
//| Expert deinitialization function                                 |
//+------------------------------------------------------------------+
int deinit()
{
 return(0);
}
//+------------------------------------------------------------------+
//| Expert tick function                                             |
//+------------------------------------------------------------------+
void OnTick() 
 {           
    MA1 = iMA(Symbol(),0,MA1_Period,MA1_Shift,MA1_Method,MA1_Price,0);
    MA2 = iMA(Symbol(),0,MA2_Period,MA2_Shift,MA2_Method,MA2_Price,0);
    
    if (Ask >= MA1 && MA1 >= MA2 && CountBuy() == 0)
    {
       SL = NormalizeDouble(Ask - StopLoss   * Point,Digits);
       TP = NormalizeDouble(Ask + TakeProfit * Point,Digits);
       ticket = OrderSend(Symbol(),OP_BUY ,Lot,Ask,Slippage,0,0,"",Magic,0,Green);
       if (ticket > 0)
       { 
         if(OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES) == true)
            OrderModify(ticket,OrderOpenPrice(),SL,TP,0);

       }      
        
    if (Bid <= MA1 && MA1 <= MA2 && CountSell() == 0) 
    
       SL = NormalizeDouble(Bid + StopLoss   * Point, Digits);
       TP = NormalizeDouble(Bid - TakeProfit * Point, Digits);
       ticket = OrderSend(Symbol(),OP_SELL,Lot,Bid,Slippage,0,0,"",Magic,0,Red);
       if (ticket > 0)
       { 
         if(OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES) == true)
            OrderModify(ticket,OrderOpenPrice(),SL,TP,0);

       }                
    }
 }
//+------------------------------------------------------------------+
int CountBuy()
{
   int count = 0; 
   for (int trade = OrdersTotal() - 1; trade >= 0; trade--)
   {
      OrderSelect(trade,SELECT_BY_POS, MODE_TRADES);
      if (OrderSymbol() == Symbol() && OrderMagicNumber() ==  Magic)
      {
        if (OrderType() == OP_BUY)
        count++; 
      } 
   }
   return(count);
}
//+------------------------------------------------------------------+
int CountSell()
{
   int count = 0;
   for (int trade = OrdersTotal() - 1; trade >= 0; trade--)
   {
      OrderSelect(trade,SELECT_BY_POS, MODE_TRADES);
      if (OrderSymbol() == Symbol() && OrderMagicNumber() ==  Magic) 
      {
        if (OrderType() == OP_SELL)
        count++; 
      }
   }
   return(count);
}
//+------------------------------------------------------------------+