背景 / 利用動機
自動取引システムを使っていると、時々、アカウント残高やオープンポジションなどの情報を確認したくなることがあります。しかし、取引端末から離れていても、インターネット接続とICQがあれば、どんなデバイスでも確認可能です。MetaTraderにログインする手間をかけたくない時に、ICQを使って必要な情報を得る方法を探ることにしました。
実装方法
このアイデアを実装するために、情報をテキストファイルに保存し、リクエストに応じて情報を送信する方法を選びました。
- まず、アカウント残高の情報を保存するための一般的なMTアドバイザーexp_statusbotを開発しました。このアドバイザーは、残高情報をstatus.txtに保存し、オープンポジションの変更をnotify.txtに記録します。
- テキストファイルから情報を送信するために、最もシンプルなICQボットmustwatcherを作成しました。このボットはリクエストを分析し、リクエストの発信者に応じた回答を送ります。
インストール手順
- exp_statusbot.mq4をダウンロードしてコンパイルします。
- MTを起動し、任意のチャートにアドバイザーを追加します。
- ICQボットmustwatcher_v1.16.zipをダウンロードします。
- ボットを起動します(この時、「Microsoft .NET Framework 3.5」がインストールされていることを確認してください)。
- Addボタンを使って必要なstatus.txtとnotify.txtをリストに追加します(ファイルは<metatrader_dir> expertsiles extbotにあります)。
- ボットのUIN(ユニバーサル識別番号、ICQ番号を公式サイトで取得)を登録します。https://www.icq.com/register
- ボットのUINとパスワードを入力します。
- 管理者名を入力します。
- Connectをクリックします。
その後、あなたのUINから!statusというコマンドを送信し(ファイル名はstatus.txtです)、必要な情報を取得します。
自動通知機能を有効にするためには、!spamonと入力します。変更後に登録した情報を受け取ることができます =)
管理者は、他のユーザーを登録して情報にアクセスさせることもできます。この方法は一例に過ぎません。必要に応じて、任意の内容を持つテキストファイルを作成し、リクエストに応じてその内容を受け取ることができます。すべてのコマンドのリストは、!helpを入力することで表示されるか、ファイル<mustwatcher_dir>\data\help_admin.txtで確認できます。ボットのインターフェースには、混乱しないようにいくつかのボタンがあります。要するに、必要な人が理解できるように作られています。
ここで、最新のアップデート情報を紹介します:
アップデート
MustWatcher v1.05 プログラム起動時の自動接続機能を追加。
MustWatcher v1.06 プログラムの自動起動チェックボックスを追加。システム起動時にトレイに最小化可能。
MustWatcher v1.07 1) 自動通知用ファイルのリスト形式を変更。テキストファイルの内容を取得する前に、リストに追加する必要があります(Watcherタブ)。2) 任意のテキストをファイルに書き込むフィードバックシステムを変更。自分のコマンドを追加可能(Feedbackタブ)。
exp_statusbot.mq4 メール送信用のデータファイル記録機能を追加。
MustWatcher v1.08 詳細レポートを生成し、指定したメールに送信する機能を追加。レポートを受け取るには、該当するリストにデータファイルを追加します(Watcherタブ)。ファイル名はサフィックスなしでもリクエストコマンドになります(例:!reportを送信すると、report.txtのデータに基づいてレポートが生成されます)。
MustWatcher v1.10 バグフィックス。
MustWatcher v1.13 最適化。エラー修正。
MustWatcher v1.16 最適化。エラー修正。