【FX】テレグラムシグナルの読取のコツ、テキストを2つ生成してチェックディジットを行う。

テレグラムのシグナルをPythonでテキストに吐き出し、そのテキストをMT4などで読み込ませてトレードをする。これがシグナル転送トレードのベーシックになります。

ただ、テレグラムのテキストへの書き込みを条件で制御するのは、ちょっとした工夫がないとなかなかできません。

今回はこの方法について概略を紹介します。

問題の根本

例えば、MT側の指定したディレクトリ(基本的にはFilesフォルダ)

に、Signal.txtを生成し、これをPythonとMT4のデータの受け渡しとします。

ここでPythonがBUYシグナルを書き込んだ時、MT4の挙動は、

  1. 当該テキストを読取る。
  2. トレードを始める。
  3. 当該テキストの文字をクリアする。

という流れとなります。

ここで、3.の「当該テキストの文字をクリアする。」を行わなければ、文字列が残り続けるので、トレードをし続けるという事になります。

無論、mql側で、「新しいシグナルが出るまでは同じ挙動をしない」という指定もできるのですが、安定性をとるならば、Python側で処理をさせたい。。

したがって、テキストをクリアにして、次のシグナルまでの読取を防ぐ、というのが最も望ましいと考えられます。

ただし状況ではPyothonが…

Pythonにおいて、例えば同じ文字列であるならば書き込みをしないという条件を付すとします。

しかし、書き込んだ後にMT4によってクリアされているのであれば、受信したシグナルは常に元のテキストの内容と違うものになっています。

ということは、この条件であれば、永久に書き込んでしまうことになります

これは、PythonとMT4が永久にデータを渡しあいすることによる不幸です。一生トレードをしてしまい、たちまちのうちに破産してしまいまsす。

想定対処:空白なら書き込まない

ならば簡単!空白なら書き込まないという方法があるではないか。

最初は誰もが考えますが、これには明白な問題点が。

テレグラムのシグナルがいくら新しいものであっても、何も書き込まないんですよね。

そう、だってファイルが空白だから。

(空白なら書き込まないのであれば、どのようなシグナルを読み込んでも書き込むことはありません。)

つまり

まとめますと、MT4が空白にしたら、Pythonは書き込みつづける。

しかし単純モデルではこの連続書き込みの回避をすることができない

ということです。対処法は…

チェックディジット用のテキストを作成する

対策としての最も有力な手立ては、2つのテキストを生成し、書き込むという事です。

Signal1.txt Signal2.txt

どちらも同じ内容を書き込んでもらいます。

そこで、MT4が情報を取って、そしてクリアにするのはSignal1.txtです。

Signal2.txtには値が保存され続けています。

ここからはPython側。

Pythonは、今までのプログラムであれば書き込みを続けます。

しかし、Signal2.txtに、当初読み込んだシグナルが消えずに格納されているので、以下の条件で初めて書き込みをするという事を命令すればよいのです。

「新しく読み込んだテレグラムの内容が、Signal2.txtと異なっていたときSignal1.txtSignal2.txtの両方に書き込む」

これで無限書き込みは無くなり、正常な機能を期待することができるようになり余す。

仕組み

テレグラムの読取内容=X
Signal1.txtの内容=Y
Signal2.txtの内容=Z

とします。

ここで、XはYとZに書き込みます。

この時X=Y=Z≠0 (0は空白とします)

YはMT4で読み取られたあと、中身をクリアしますので、Y=0となります。

そのため、

X≠Y
X=Z

という状態となります。

ここで、新たなシグナルを受信して書き込む条件を考えると、

X≠Yはもともとの状態ですから、こちらをどのように定義しても、うまくいきません。

しかし、X=Zの関係はそうではありません。

Xが新しいシグナルを受信してX’になったとき、X’≠Zとなりますから、この時に均衡が崩れ、トレードをする契機となります。

したがって、トレードをする条件として、「XとZが等しくないとき」と定義することでトレードが円滑に進むことになります。

まとめ

このようにチェックディジット用のテキストを含め2つ用意すれば、書き込みはうまくいきます。

変数に格納する方法もありますが、検証しやすく安定的なこの方法がより適していると思います。

【Bitrue×そだし】無料で50USDTのオオバンブルマイ

Bitrueとそだしの限定コラボイベントが開催中です!
2024年12月19日(木)~12月29日(日)(日本時間)の期間中、簡単なステップをこなすだけで、最大300USDTのボーナスがもらえます。
公式コラボレーションで安心・安全。この機会にご参加ください!

イベント内容と参加方法

🥇 ステップ1:新規登録+KYC2認証で50USDTプレゼント!

Bitrueで新規登録し、日本のKYC2認証を完了するだけで、50USDTがもらえます!
👉 今すぐ登録!
Bitrue公式サイト

🥈 ステップ2:500USDTの累計入金で追加50USDTを獲得!

累計で500USDT以上の入金を達成するだけで、さらに50USDTをゲットできます。
初めての入金でも大丈夫!お得にスタートできます。

🥉 ステップ3:取引で最大200USDTをゲット!

取引額に応じて、以下のボーナスを獲得👇

  • 取引額50,000USDT以上50USDTボーナス
  • 取引額500,000USDT以上200USDTボーナス

トレード好きな方には特におすすめです!

👉 イベントの詳細はこちら:イベントページを見る

リンクは本物です

今回のイベントは、Bitrueとそだしの公式コラボレーションです。
リンク先を確認していただければ、リアルなコラボであることがわかるはずです!

※リンクはBitrue公式サイトに直接繋がります。フィッシングサイトではないので、安心してご利用ください。
👉 Bitrue公式登録ページ

なぜそだしがBitrueとコラボできたのか?

そだしは2016年頃から活動している仮想通貨マイナーで、数々の経験を持っています。一時期は暗号資産メディアにも取り上げられ、そのつながりから、今回の世界有数の取引量を誇るBitrueとのコラボが実現しました。

今後も皆さまにイベント情報等を提供してまいります。引き続き当サイトのチェックをお願いします!

本当にUSDTがもらえるの?

本当にUSDTを受け取れます!もらったボーナスは送金や換金が可能です✨
私そだし自身が実際に試して確認済みなので、安心して参加してください。

※一般的なFXボーナスの「証拠金の水増し」とは異なり、リアルなボーナスとしてご利用いただけます!

投資は自己責任にて

まずは50USDTのデポジット、余裕があれば300USDTのボーナスを得て、新しい一歩を踏み出しましょう! 🎁

ただし、投資にはリスクが伴います。最終的な判断はご自身で慎重に行ってください。
楽しみながら、賢く投資を進めていきましょう!

👉 イベントの詳細はこちら

FX

【MARKET HAWKEYE】市場激震!ドル円151円台キープ、金価格上昇、ビットコインは10万ドルの壁を突破!
2024年12月11日、金融市場は熱狂に包まれています。ドル円が151円台を堅持する一方で、金価格は上昇、そしてビットコインはついに10万ドルの大台を突破しました。各市場の詳細な動きを分析します。 米ドル/円(USD/JPY):安定の151円台 ドル円はこの日、151.92円で取引を終えました。堅調な推移が続いており、151円台での安定感を示しています。これは、米国の経済指標が好調だったことや、リスクオンの流れが後押ししたと考えられます。 短期的には日本銀行の金融政策に関連する材料がカギを握りそうです。 金(ゴールド):リスク回避の資産が再び注目を集める 金価格は上昇傾向を強めています。世界的な地政学的リスクや金融政策への不透明感が、投資家をリスク回避の動きへと駆り立てたとみられます。 この上昇が続けば、さらなる高値更新が視野に入ります。 ビットコイン/米ドル(BTC/USD):史上最高値再トライ ビットコインはついに10万ドルの大台を突破しました。この記録的な上昇は、デジタル資産市場への信

続きを読む

【お知らせ】レイヤートレードの自動化を現実的な視点で考え、形態を変えます。
保護中: GOLDのレイヤートレードの本気解説
【FX】嘘偽りなしのレイヤートレードのリアル テレグラムとの連携で高確度トレード【実況動画】
【FX】気づいた点…シグナルや自動トレードより、半自動レイヤートレードの方がよいかもしれない。

「FX」記事をもっと見る