はじめに
Telegramボットを使用して、金融取引に関するシグナル(例:買い・売りシグナル、テイクプロフィット(TP)、ストップロス(SL)など)をチャットから読み込み、ファイルに書き込むボットの作成を進めていた際に、特定のメッセージ形式が正しく処理されないという問題に直面しました。
例えば、次のようなシグナルメッセージ:
Gold buy now @ 2571.00 - 2568.00
tp : 2577.00
tp2 : 2600.00
sl : 2565.00
このメッセージ内には、売買シグナル(BUY)、エントリープライス、テイクプロフィット(TP)、ストップロス(SL)の情報が含まれていますが、元のコードでは “BUY” しか認識せず、重要な価格情報を無視してしまうという問題が発生しました。
問題点
初期のコードでは、メッセージを単純に大文字に変換し、キーワード(BUY, SELL)を検索しているだけでした。これにより、以下のような問題が発生しました:
- 改行やフォーマットを無視:
- メッセージが複数行にわたる場合、改行を無視してすべての行をつなげてしまい、シグナルのパースに失敗していました。
- 価格情報の抽出ができない:
- メッセージ内の価格情報やTP、SLといった取引に必要な情報は無視され、BUYやSELLのような単純なキーワードだけが認識されていました。
改善のポイント
この問題を解決するために、次の改善を行いました:
- 正規表現を使用した価格情報のパース: メッセージの内容に応じて、取引価格、TP、SLなどを正規表現で抽出するようにしました。これにより、メッセージの書式に依存せず、柔軟に情報を取得できるようになりました。
- 改行を保持して処理: メッセージの改行を削除せずに、そのまま処理することで、メッセージ内の構造を壊さずにパースできるようにしました。
- フォーマットされた情報をリストとして返す: シグナルメッセージの内容(BUY, SELL, TP, SLなど)をリスト形式で処理し、ファイルに書き込む際にもそのフォーマットを保持しました。
改善後のコード
以下に、改善した process_message
関数の概要を示します(APIキーや特定のディレクトリパスなどは省略してあります)。
import re
class TelegramSignalBot:
def process_message(self, message):
“””メッセージをパースし、シグナルを抽出”””
try:
# メッセージの改行を維持する
message = message.upper()
print(“Processed message:”, message)
signals = []
# CLOSE と SECURE を優先
if “CLOSE” in message:
signals.append(“ALLCLOSE”)
if “SECURE” in message:
signals.append(“ALLCLOSE”)
if “HIT” in message:
signals.append(“ALLCLOSE”)
if “BREAKEVEN” in message:
signals.append(“ALLCLOSE”)
# その後に BUY と SELL を処理
if “BUY” in message:
signals.append(“BUY”)
if “SELL” in message:
signals.append(“SELL”)
# TP, SL, および価格情報の抽出
tp_match = re.search(r’TP\s*:\s*([\d.]+)’, message)
tp2_match = re.search(r’TP2\s*:\s*([\d.]+)’, message)
sl_match = re.search(r’SL\s*:\s*([\d.]+)’, message)
price_match = re.search(r’@[\s]*([\d.]+)[\s]*-[\s]*([\d.]+)’, message)
if tp_match:
signals.append(f”TP: {tp_match.group(1)}”)
if tp2_match:
signals.append(f”TP2: {tp2_match.group(1)}”)
if sl_match:
signals.append(f”SL: {sl_match.group(1)}”)
if price_match:
signals.append(f”ENTRY: {price_match.group(1)} – {price_match.group(2)}”)
if len(signals) == 0:
return message
else:
return signals
except Exception as e:
print(f”Error processing message: {e}”)
return “”
改善内容の詳細
- 正規表現の使用:
re.search
を使用して、次のようなパターンで価格情報やシグナルを抽出しています:TP
(テイクプロフィット):r'TP\s*:\s*([\d.]+)'
TP2
:r'TP2\s*:\s*([\d.]+)'
SL
(ストップロス):r'SL\s*:\s*([\d.]+)'
価格情報
:r'@[\s]*([\d.]+)[\s]*-[\s]*([\d.]+)'
これにより、複数行のメッセージや異なるフォーマットにも柔軟に対応できるようになりました。
- メッセージの構造を保持: メッセージが複数行に分かれていても、改行を保持することで、元の構造に基づいて情報を正確に取得できるようにしています。
- リスト形式での処理: シグナルの内容(BUY, SELL, TP, SLなど)をリスト形式で保持し、処理の流れを簡潔にしました。このリスト形式により、ファイルへの書き込みもスムーズに行えます。
まとめ
今回の改善により、Telegramボットがメッセージから取引に必要な詳細情報(価格、TP、SLなど)を正確にパースできるようになり、より堅牢なシグナル処理が可能となりました。改行を含むメッセージや複雑なフォーマットにも対応できるため、今後の拡張やメンテナンスも容易になります。
APIキーや保存パスは公開されていませんが、コードのロジックがどのように機能しているかを理解するための参考にしてください。
【そだしPR】テレグラムグループ&世界最高EAへのいざない
私グローバルFXディーラーが利用するテレグラムグループには、トレードに役立つ有益な情報が集約されています。暗号化されたメッセージングプラットフォームであり、そのセキュリティは万全で、日本では悪者が使うイメージですが、利用の方法一つで神ツールに替わります。
もちろん、グループに入ることで個人情報を知られる心配はありません。
そしてEA。現在までの結果は以下の通りです。
100万円開始で約1800万円、と順調に利益に利益を伸ばすシステムも内包しています。
これはEA(自動売買システム)ですが、EAとテレグラムを活用し、安全な取引を行えば、利益を増やすことも苦ではありません。
なお、このEAの挙動を最大限に引き出すには、特別なセットファイルが必要なので、市販で購入するだけでは、手に入れることができません。
無料シグナル配信チャンネルはこちら
無理のテレグラムグループは些細な経済情報やトレンド分析、トレードシグナルがリアルタイムで入ることから、落ち着いて方向性を見極めながら、指標トレードも行うことができます。
有料グループ・互助会へのいざない
互助グループに入ると、以下の特典を享受することができます。
- 当方が200万円以上のシグナル購入を行ったなかで、より優れたシステムを永久に共有いたします。
(それらの価格を合計しても、約30万円の実費分は間違いなく生じます) - ただし、チームのモットーは、「少ないシグナル配信で、効率的に利益を上げる」ということなので、
主旨をご理解いただいた方のみに共有させていただいております。(初心者歓迎いたします) - 互助会なのでこのグループ自体を当方の利益追求としているわけではないことをご了承ください。(ASIA EAの単体の低下は、入会金以上の価格となっています)
特典
※評価や使用状況は変動いたします。ご注意ください。
- 総額140万円のテレグラムシグナルの共有(常に追加・入替を行っています)
・SODASHI(FREE):フリーチャンネル(無料参加可能!)
・SODASHI(MB):シンプルな取引が特徴。▲
・SODASHI(MB GOLD):MBで精度の高い金のトレードのみを抽出したもの。〇
・SODASHI(GOLDLAYER):金のレイヤートレードを行い爆発的な利益を得るすさまじい存在▲
画像例を以下に示します。決して珍しい例ではなく、そしてトレードシグナル自体に不正はありません。
・SODASHI(DG):シングルTP/SLで頻度は低いがスナイパートレード。▲
・SODASHI(UK):エキゾチック通貨も平等に扱うオールラウンダー。〇
・SODASHI(PK):SmartTrade理論に最も近い理念を持つトレード 〇
・SODADHI(BD):金のトレードについては一定の信頼性 ▲
・SODASHI(X):準メイン…リニューアルを経た2024に期待。△
・SODASHI(TECH):シンプルなトレードを提供。勝率はあるが流動性☆
- 特典:完全自動売買ソフトのWallstreet-ASIAのEAおよび、最高セッティングであるMSE版をプレゼントします。(正規アカウント+MSE設定ファイルです)※正規通常5万円程度
- 特典:中抜きゼロのフルキャッシュバック口座(Tradeview Forex)の開設リンクのご共有
- 当方が有益であるとみなしたシグナルの追加共有(上記記載のとおり)
※可能な限り設定ファイルを共有いたします。
なお、シグナル提供及びサポートは永久に受けることが可能です。初心者でも是非安心してご参加ください。
互助グループについては、サポート限界および情報の機密性から、上限枠を設けています。なるべく急ぎでお問合せください。
価格について
価格は一律40,000円(払い切り)となっています。
- お支払い:現在銀行振込が基本対応です。
仮想通貨はUSDT(TRC-20)が基本対応です。 - VPS等をお持ちでない初心者様はMBの自動トレードサポートを行います。詳しくはコチラからどうぞ!
またはこちらのフォームから(ご連絡できない場合)
ご利用者の声
実際に頂いたお声に基づいて掲載いたします。
- フリー版のシグナルを入れていると、ことごとくプラスになるので驚きました。
- 自分ではこのような情報は仕入れることができず、すでに互助費用分は回収できました。そだしさんの情報収集力に感服です。
- 既にEAが高価なのに、それが特典というのは主従が逆転しているように思います。素晴らしい互助サービスご提供をありがとうございます!
【よくある質問】
- シグナルの配信期間はいつまでですか?
入会から無制限となります。 - VPSは必要ですか?自前で用意する必要がある?月額はかかりますか?
→EAを動かしたり、シグナルをコピーするためには必要となりますが、シグナルトレードを手動で行われる方はそちらのみで大丈夫です。
月10ドルで購入できる安定したVPSもございますので、ご安心ください。 - 法的な問題はないのですか?
→当方はシグナルおよび、MT4等の情報を共有する互助会のようなものです。多くの方の参加を呼び掛けているわけではなく、確実な利益を検討されている賢明な方々に情報を共有したいと思っている次第です。
→大前提として海外ブローカー、Telegramのシグナル配信そのものが法的に白と言えない状況ですので、敏感な方はご遠慮ください。 - 提供価格が安価すぎないですか?月額1万円が主流のシグナルサービスかつ提供価格よりも高く市販されているEAの提供で、永久にこの価格は信じがたい
→当方はそれなりの利益を得てています。したがって、利益を最優先としていません。この価格自体が誠心誠意の何よりの証です。
ただし、配信状況は販売者に委ねられるものですので、配信頻度等についてはご容赦ください。 - 共有するEAはクラックしたものですか?
→正規版です。常にバージョンアップをしているものであるため、正規版でないと正常動作が期待されない場合があるため、安全に期した対応としています。 - 返金は受け付けておりますか?
→原則としてシグナルの共有および共有ソフトウェアの使用のためのコストとなりますので、一度利用されてからの返金要請はお受けいたしかねますので、どうぞよろしくお願いいたします。精一杯のサービスで応答させていただく次第です。 - 情報はどれが一番正確ですか?
→古い記事などで、情報がアップデートされていない場合がございますが、今ご覧になられている末尾記事が一番新しく、正確な情報です。よろしくお願いいたします。 - 事業者ですが、参入可能ですか?
本情報の転売については禁止といいたいところですが、現実的に難しいことは承知しております。ただ、互助の精神を持たれる方に参加していただきたいため、そういった事業をされている方は、パートナーシップとして共に成長できるよう、互いに協力を進められればと思います。
免責事項【記事全般】
リスクについて: FXシグナルやEAサービスは、市場の動向や取引のタイミングに関する情報を提供するものですが、外国為替取引は高いリスクを伴います。利益を得るだけでなく、損失を被る可能性もあります。提供されるシグナルや情報に基づく取引は、自己の判断と責任において行う必要があります。
FXシグナルサービスは一般的な情報提供を目的としており、個別の状況やニーズに応じた具体的なアドバイスを提供するものではありません。投資や取引に関する重要な決定を行う前に、独自の調査や専門家の助言を受けることをおすすめします。また、MT4に対する知識、EAに関する基本的知識は必須となります。
本シグナルやEAは互助的なものであり、金銭は投資情報の拡充や配信ソフト等の費用に割り当てられるものであり、個人の利益に浴するものではございません、営利と違う形態でのものであり、その点について充分ご理解いただいたうえで、ご連絡ください。