MQL4、MQL5に関する初心者からの質問、アルゴリズムやコードに関するヘルプ、ディスカッションなど。 - ページ 1895

 

チャット 番号の発信に協力する。リセットされる、意味がわからない

#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

ありがとうございます、助かります

 
おはようございます。助けてほしい。テスターでは、チャート上に注文利益が正しく表示されない。以前はすべて順調でした。しかし、今日は非常に控えめにしているように感じます。
 
Сергей Груздев #:
おはようございます。助けてほしいんです。テスターでは、チャート上に注文利益が正しく表示されない。以前はすべて順調でした。しかし、今日は非常に控えめな表現になっているような気がしています。

あなたにはこうです

 
秘密みたいなもので、誰も認めないんです。もしかしたら、ここの誰かが知っているかもしれません。https://www.mql5.com/ru/forum/1111/page3141#comment_27268709?
Ошибки, баги, вопросы
Ошибки, баги, вопросы
  • 2022.01.16
  • www.mql5.com
Общее обсуждение: Ошибки, баги, вопросы
 
Valeriy Yastremskiy チャット 番号の発信に協力する。リセットされるんです。

Telegram.mqhライブラリのディスカッションがある場所を書く

 
Vitaly Muzichenko #:

Telegram.mqhライブラリについての議論があるところに書き込みます。

投稿もちろん、問題はmqhではなく、カートボットのapiにあるのですが。botからメッセージに含まれるapiを送信すると、チャットのapiとbotのトークンを含む返信が生成されます。しかし、ボットのトークンで、カートから得られるもの。
 
x572intraday #:
秘密みたいなもので、誰も認めないんです。もしかしたら、ここの誰かが知っているかもしれません https://www.mql5.com/ru/forum/1111/page3141#comment_27268709?

ディスパッチャで、何がどれくらいの時間ロードされているのかを確認するのもいいかもしれません。

 
Andrey Sokolov #:

何がいつまでロードされているのか、マネージャーで確認するのもいいかもしれませんね。

素晴らしいアイデアですね!どうして自分で気づかなかったのでしょう?

こんな感じです。

CPUとGPUの使用率

スクリーンショットからわかるように、程度は違えど両方のCPUが作動していることがわかります。CPUとGPUはそれぞれ仕様が異なるため、CPUの方がGPUよりも興奮している、だからインジケータバッファを処理するのはCPUだ、というのはあまりにおこがましい話であり、比較するのは間違っています。両方が関与していると改めて結論づけるしかないでしょう。疑問は残りますが...。

 

問題を解決する方法がわからない

ティックチャート、つまりティックが来て - バッファを1つずらして描画したいのですが

60本の最後のティック、つまり60本のバーを描画する必要があります。

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);
  }

---

ウィンドウ端末「Ticky」で実装されているようにする必要があります。