記事"MQL5言語でのTelegram用ボットの作成"についてのディスカッション - ページ 7 1234567891011121314...55 新しいコメント agsapri 2017.12.15 08:06 #61 こんにちは、アンドレイ、なぜボットがエラーを出し続けるのですか?HTTPリクエストに失敗しました。 Haijie Qi 2017.12.19 10:20 #62 こんにちは、アンドレイ、なぜボットがエラーを出し続けるのですか?HTTPリクエストに失敗しました。 Marco vd Heijden 2017.12.19 10:28 #63 プロトコルを変更したのかもしれません。Telegram APIを確認 しましたか? Andriy Voitenko 2017.12.19 12:03 #64 Haijie Qi:こんにちは、アンドレイ、なぜボットがエラーを出し続けるのですか?HTTPリクエストに失敗しました。TeamViewerを使用して、あなたのPC上の'Telegram_Bot_EA'をデバッグしたところ、WebRequest()が-1を返していることがわかりました。_LastError = 5203. しかし、その理由はわかりません。おそらくファイアウォールがTCPパケットをブロックしているのでしょう。 agsapri 2017.12.26 02:41 #65 Andrey Voytenko:TeamViewerを使用してPC上の「Telegram_Bot_EA」をデバッグしたところ、WebRequest()が-1を返すことがわかりました。_LastError = 5203. しかし、その理由はわかりません。おそらくファイアウォールがTCPパケットをブロックしているのでしょう。ありがとうございます、ファイアウォールをオフにしてもエラーが出ます、もっと深く調べてみるよ。) Angel Dickinson 2018.01.11 14:33 #66 私はtelegram_signal_EAのコードを編集し、私のストラテジーに基づいてトレードを送信するようにしました。EAをチャートに適用すると、エキスパートタブに私のtelegram botが認識されていることが表示されます。私の問題はアラートの送信自体にあり、トレードのルールが満たされたときにテレグラムにアラートが届きません。この件に関して何かヘルプはありますか?コードは以下の通りです。//+------------------------------------------------------------------+ //|Telegram_Signal_EA.mq5 //| Copyright 2014, MetaQuotes Software Corp.| //|http://mql5.commql5.com //+------------------------------------------------------------------+ #property copyright "Copyright 2014, MetaQuotes Software Corp." #property link "http://www.mql5.com" #property version "1.00" #property strict #include <Telegram.mqh> //--- 入力パラメータ input string InpChannelName="ForexSignalChannel";//チャンネル名 input string InpToken="";//トークン //--- グローバル変数 CCustomBot bot; int ema_handle; int ema2_handle; int rsi_handle; datetime time_signal=0; bool checked; //+------------------------------------------------------------------+ //| エキスパート初期化関数| //+------------------------------------------------------------------+ int OnInit() { time_signal=0; bot.Token(InpToken); #ifdef __MQL5__ ema_handle=iMA(NULL,0,200,0,MODE_EMA,PRICE_CLOSE,0); if(ema_handle==INVALID_HANDLE) return(INIT_FAILED); ema2_handle=iMA(NULL,0,400,0,MODE_EMA,PRICE_CLOSE,0); if(ema2_handle==INVALID_HANDLE) return(INIT_FAILED); rsi_handle=iRSI(NULL,0, 14,PRICE_CLOSE,0); if(ema2_handle==INVALID_HANDLE) return(INIT_FAILED); //--- インジケータをチャートに追加する int total=(int)ChartGetInteger(0,CHART_WINDOWS_TOTAL); ChartIndicatorAdd(0,total,macd_handle); #endif return(INIT_SUCCEEDED); } //+------------------------------------------------------------------+ |エキスパート初期化関数| //+------------------------------------------------------------------+ void OnDeinit(const int reason) { if(reason==REASON_PARAMETERS || reason==REASON_RECOMPILE || reason==REASON_ACCOUNT) { checked=false; } //--- インジケータを削除する #ifdef __MQL5__ int total=(int)ChartGetInteger(0,CHART_WINDOWS_TOTAL); for(int subwin=total-1; subwin>=0; subwin--) { int amount=ChartIndicatorsTotal(0,subwin); for(int i=amount-1; i>=0; i--) { string name=ChartIndicatorName(0,subwin,i); if(StringFind(name,"MACD",0)==0) ChartIndicatorDelete(0,subwin,name); } } #endif } //+------------------------------------------------------------------+ //|| //+------------------------------------------------------------------+ void OnChartEvent(const int id,const long &lparam,const double &dparam,const string &sparam) { if(id==CHARTEVENT_KEYDOWN && lparam=='Q') { bot.SendMessage(InpChannelName,"ee\nAt:100\nDDDD"); } } //+------------------------------------------------------------------+ //| エキスパートティック機能| //+------------------------------------------------------------------+ void OnTick() { if(!checked) { if(StringLen(InpChannelName)==0) { Print("Error: Channel name is empty"); Sleep(10000); return; } int result=bot.GetMe(); if(result==0) { Print("Bot name: ",bot.Name()); checked=true; } else { Print("Error: ",GetErrorDescription(result)); Sleep(10000); return; } } //--- 時間を得る datetime time[1]; if(CopyTime(NULL,0,0,1,time)!=1) return; //--- 各バーでシグナルをチェックする if(time_signal!=time[0]) { //--- 最初の計算 if(time_signal==0) { time_signal=time[0]; return; } double ema = iMA(NULL, 0, 200, 0, MODE_EMA, PRICE_CLOSE, 0); double ema2 = iMA(NULL, 0, 400, 0, MODE_EMA, PRICE_CLOSE, 0); double rsi = iRSI(NULL, 0, 14, PRICE_CLOSE, 0); time_signal=time[0]; //--- シグナルBUYを送信 if ((Bid > ema)&&(Bid < ema2)&&(rsi < 30)) { string msg=StringFormat("Name: BossPips Signal\xF4E3\nSymbol: %s\nTimeframe: %s\nType: Buy\nPrice: %s\nTime: %s", _Symbol, StringSubstr(EnumToString((ENUM_TIMEFRAMES)_Period),7), DoubleToString(SymbolInfoDouble(_Symbol,SYMBOL_ASK),_Digits), TimeToString(time[0])); int res=bot.SendMessage(InpChannelName,msg); if(res!=0) Print("Error: ",GetErrorDescription(res)); } //--- シグナル「売り」を送信 if ((Bid < ema)&&(Bid > ema2)&&(rsi > 70)) { string msg=StringFormat("Name: BossPips Signal\xF4E3\nSymbol: %s\nTimeframe: %s\nType: Sell\nPrice: %s\nTime: %s", _Symbol, StringSubstr(EnumToString((ENUM_TIMEFRAMES)_Period),7), DoubleToString(SymbolInfoDouble(_Symbol,SYMBOL_BID),_Digits), TimeToString(time[0])); int res=bot.SendMessage(InpChannelName,msg); if(res!=0) Print("Error: ",GetErrorDescription(res)); } } } //+------------------------------------------------------------------+ Mohd Fahmi Azlan Mohamad Zuki 2018.03.08 11:11 #67 mq4用のバージョンはありますか? Andriy Voitenko 2018.03.08 11:17 #68 Mohd Fahmi Azlan Mohamad Zuki: mq4用のバージョンはありますか?この記事に添付されているコードは、MetaTrader 4とMetaTrader 5の両方のプラットフォームでの取引に適応しています。 EAのファイル拡張子をmq4に変更するだけです。 agsapri 2018.03.16 02:16 #69 シグナルeaでfor(int i=0;i<=1;i++) からfor(int i=0;i>=1;i--) に変更した、 今、私は電報から信号を得なかった、私を助けるか、または導くことができる;( Mohd Fahmi Azlan Mohamad Zuki 2018.03.16 15:32 #70 Andrey Voytenko:この記事に添付されているコードは、MetaTrader 4とMetaTrader 5の両方のプラットフォームでの取引に適応しています。EAのファイル拡張子をmq4に変更するだけです。 変更しようとした。しかし、注文を出すと、通知が来ません。何かチェック する必要がありますか? 1234567891011121314...55 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
こんにちは、アンドレイ、
なぜボットがエラーを出し続けるのですか?HTTPリクエストに失敗しました。
こんにちは、アンドレイ、
なぜボットがエラーを出し続けるのですか?HTTPリクエストに失敗しました。
プロトコルを変更したのかもしれません。
Telegram APIを確認 しましたか?
こんにちは、アンドレイ、
なぜボットがエラーを出し続けるのですか?HTTPリクエストに失敗しました。
TeamViewerを使用して、あなたのPC上の'Telegram_Bot_EA'をデバッグしたところ、WebRequest()が-1を返していることがわかりました。_LastError = 5203.
しかし、その理由はわかりません。おそらくファイアウォールがTCPパケットをブロックしているのでしょう。
TeamViewerを使用してPC上の「Telegram_Bot_EA」をデバッグしたところ、WebRequest()が-1を返すことがわかりました。_LastError = 5203.
しかし、その理由はわかりません。おそらくファイアウォールがTCPパケットをブロックしているのでしょう。
ありがとうございます、
ファイアウォールをオフにしてもエラーが出ます、
もっと深く調べてみるよ。)
私はtelegram_signal_EAのコードを編集し、私のストラテジーに基づいてトレードを送信するようにしました。EAをチャートに適用すると、エキスパートタブに私のtelegram botが認識されていることが表示されます。私の問題はアラートの送信自体にあり、トレードのルールが満たされたときにテレグラムにアラートが届きません。この件に関して何かヘルプはありますか?コードは以下の通りです。
mq4用のバージョンはありますか?
この記事に添付されているコードは、MetaTrader 4とMetaTrader 5の両方のプラットフォームでの取引に適応しています。
EAのファイル拡張子をmq4に変更するだけです。
シグナルeaでfor(int i=0;i<=1;i++) からfor(int i=0;i>=1;i--) に変更した、
今、私は電報から信号を得なかった、私を助けるか、または導くことができる;(
この記事に添付されているコードは、MetaTrader 4とMetaTrader 5の両方のプラットフォームでの取引に適応しています。
EAのファイル拡張子をmq4に変更するだけです。