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

 

Aiuta a diffondere il numero di chat. Si resetta, non capisco.

#include <Telegram.mqh>
long Ch_id;
//+------------------------------------------------------------------+
//|   CMyBot                                                         |
//+------------------------------------------------------------------+
class CMyBot: public CCustomBot
  {
public:
   void ProcessMessages(void)
     {
      for(int i=0; i<m_chats.Total(); i++)
        {
         CCustomChat *chat=m_chats.GetNodeAtIndex(i);
         //--- if the message is not processed
         if(!chat.m_new_one.done)
           {
            chat.m_new_one.done=true;
            string text=chat.m_new_one.message_text;
            Ch_id=chat.m_id;   // И здесь не хочет присваивать.
            //--- start
            if(text=="/start")
               SendMessage(chat.m_id,"Hello, world! I am bot. \xF680");
               Alert("chat.m_id ",chat.m_id);
               Ch_id=chat.m_id;  // что здесь не так?

            //--- help
            if(text=="/help")
               SendMessage(chat.m_id,"My commands list: \n/start-start chatting with me \n/help-get help");
           }        
        }
     }
  };

//---
input string InpToken="5068873298:AAGihZr2vJsD5Zs1ca4i0r2JimAFuIbbmI0";//Token
//---
CMyBot bot;
int getme_result;
//+------------------------------------------------------------------+
//|   OnInit                                                         |
//+------------------------------------------------------------------+
int OnInit()
  {
//--- set token
   bot.Token(InpToken);
//--- check token
   getme_result=bot.GetMe();
//--- run timer
   EventSetTimer(3);
   OnTimer();
//--- done
   return(INIT_SUCCEEDED);
  }
//+------------------------------------------------------------------+
//|   OnDeinit                                                       |
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
  {
   Comment("");
  }
//+------------------------------------------------------------------+
//|   OnTimer                                                        |
//+------------------------------------------------------------------+
void OnTimer()
  {
//--- show error message end exit
   if(getme_result!=0)
     {
      Comment("Error: ",GetErrorDescription(getme_result));
      return;
     }
//--- show bot name
   Comment("Bot name: ",bot.Name());
//--- reading messages
   bot.GetUpdates();
//--- processing messages
   bot.ProcessMessages();
  }

//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
void OnChartEvent(const int id,const long &lparam,const double &dparam,const string &sparam)
{
   if(id==CHARTEVENT_KEYDOWN &&
         lparam=='Q')
   {

      Alert("445672666"); // Номер чата вручную забил, работает.
       
      bot.SendMessage(445672666,"ee\nAt:100\nDDDD");
  //    bot.SendMessage(Ch_id,"ee\nAt:100\nDDDD"); не хочет работать, Ch_id=0.
      Alert(Ch_id);
      
     
   }
}
 

Alexey Viktorov

Grazie, questo è utile.

 
Buongiorno. Ho bisogno di aiuto. Nel tester, il profitto dell'ordine non viene visualizzato correttamente sul grafico. Prima andava tutto bene. Ma oggi mi sembra che si sottovaluti molto.
 
Сергей Груздев #:
Buongiorno. Ho bisogno di aiuto. Nel tester, il profitto dell'ordine non viene visualizzato correttamente sul grafico. Prima andava tutto bene. Ma oggi mi sembra che si sottovaluti molto.

Per te è così.

 
È come un segreto, nessuno lo ammette. Forse qualcuno qui lo sa: https://www.mql5.com/ru/forum/1111/page3141#comment_27268709?
Ошибки, баги, вопросы
Ошибки, баги, вопросы
  • 2022.01.16
  • www.mql5.com
Общее обсуждение: Ошибки, баги, вопросы
 
Valeriy Yastremskiy chat. Si sta resettando, qualcosa che non capisco.

Scrivi dove si trova la discussione della libreria Telegram.mqh

 
Vitaly Muzichenko #:

Scrivi dove si parla della libreria Telegram.mqh

Inviato. Il problema non è ovviamente mqh, ma l'api del carrello bot. Quando si invia dal bot l'api nel messaggio e indietro genera una risposta con l'api della chat e il token del bot. Ma con il token del bot cosa si può ottenere dal carrello.
 
x572intraday #:
È come un segreto, nessuno lo ammette. Forse qualcuno qui lo sa: https://www.mql5.com/ru/forum/1111/page3141#comment_27268709?

Potrebbe valere la pena di guardare nel dispatcher per vedere cosa sta caricando e per quanto tempo.

 
Andrey Sokolov #:

Potrebbe valere la pena di guardare nel manager per vedere cosa sta caricando e per quanto tempo.

È un'idea geniale, come mai non l'ho capito io!

Ecco quello che ho:

Utilizzo della CPU e della GPU

Come potete vedere dallo screenshot, entrambe le CPU sono impegnate, anche se in misura diversa. Sarebbe troppo presuntuoso dire che la CPU è più eccitata della GPU, quindi, è la CPU che elabora i buffer degli indicatori, in quanto non è corretto confrontare CPU e GPU a causa delle specificità di ciascuno. Si può solo concludere ancora una volta che entrambi sono coinvolti. La questione rimane aperta...

 

Non riesco a capire come risolvere il problema

Ho bisogno di un grafico a tick, cioè un tick venuto - sposta il buffer di uno e disegna

Abbiamo bisogno di disegnare 60 ultimi tick, cioè 60 barre.

int OnCalculate(const int rates_total,
                const int prev_calculated,
                const datetime &time[],
                const double &open[],
                const double &high[],
                const double &low[],
                const double &close[],
                const long &tick_volume[],
                const long &volume[],
                const int &spread[])
  {

   // ВСЁ - здесь затык :(
    Buffer[0] = _bid;
   return(rates_total);
  }

---

Dobbiamo fare come è implementato nel terminale della finestra "Ticky


Motivazione: