MT4:棒読みちゃんでレートを読み上げるインジケーター
MT4
とあるMetaTraderの備忘秘録の管理人さん(faiさん)作成のレートを読み上げるインジケーターを使用していましたが、MT4 Build600番以降 から動かなくなったため今回新たに作ってみました。
ダウンロード
棒読みちゃんでレートを読み上げるインジケーター
01-PriceTalk_v110.mq4 の ダウンロード
設定方法など
★作成時のPC環境★
・Windows 7 Pro (32bit)
・Meta Trader4 (Build 1090)
・棒読みちゃん Ver 0.1.10.0
★事前に必要なもの★
・Meta Trader4 (Build 600番以降)
・01-PriceTalk_v110.mq4(棒読みちゃんでレート読み上げるインジケーター)
・棒読みちゃん(公式サイトから入手します)
★使用前に(必須)★
・01-PriceTalk_v110.mq4 の34行目に棒読みちゃんの RemoteTalk.exe のパスが書かれているので適宜変更してください。
・使用に当たって手動で棒読みちゃん本体を事前に起動しておいてください。しておかないとレートを読み上げてくれません。
・インジケーター使用時に表示される「全般」タブ内の「 DLLの使用を許可する 」にチェックしてください。

★パラメーターの入力タブの説明★

速度:音声の速度
音程:音声の音程
音量:音声の音量
声質:0:標準, 1:女性1, 2:女性2, 3:男性1, 4:男性2, 5:中性, 6:ロボット, 7:機械1, 8:機械2, 9以降:SAPI
Askのレートを読み上げ: Askレートを読み上げる場合は Trueに設定。Falseの場合は Bidレートを読み上げます。
読み上げる前に残りの音声タスクを全てキャンセル:常にTrueを推奨
★余談★
・CeVIO の さとうささら があれば、ささらで読み上げることも可能です。
・ささらにしたい時は、インジケーターのパラメーター 声質 を 9 にしてください。
・棒読みちゃんのダウンロードはこちら。すでにある人は不要です。
同じ音声がリピートされ続ける場合は
赤枠が「 → 」アイコンの状態であればリピートはしません。確認お願いします。
関連記事

US30 ダウの月足(2004年頃~2019年5月まで)
ダウの月足チャートは、今月から三尊天井の形状で下降局面を再度意識させています。 ...

MetaTrader4 :日経225、NYダウが表示可能なデモサーバ(2018年10月現在)
FXCMが提供するMT4に、NYダウを表示できるデモサーバがあります。 FXCM ...

US30 ダウの月足(2006年頃~2019年10月まで)
◆政策金利トピックス 米国連邦準備制度理事会(FRB)は7月30~31日に連邦公 ...
ディスカッション
コメント一覧
MT4において為替レートの音声出力ツールを探して、
こちらのツールを利用させて頂いております。
本当に便利でとても助かっています。
ありがとうございます。
そこで利用していて、一つ質問なのですが、
音声読み上げレートは
デフォルトではBIDを読んでると思うのですが、
場合によってはASKの方を読んで欲しい時もあるのですが、
設定で可能なのでしょうか?
もしよろしかったら、ご教授お願いします。
ご利用ありがとうございます。使用してもらえてうれしい限りです。
本日公開した 01-PriceTalk_v110.mq4 で、BidまたはAskを選べるようにしました。
【パラメーターの入力】タブ内の「Askのレートを読み上げ」をTrueに設定することで、Askのレートを読み上げます。FalseでBidレートを読み上げます。(ホームページも同時に更新したので、そのあたりの説明を追記しました。)
v110をダウンロードしたら、34行目の RemoteTalk.exeパスの再設定をお願いします。
また、余談ですが、01-PriceTalk_v110.mq4 の89行目あたりの
-------------------------------------------------------------
if(bAskRate) { ← trueならAsk falseならBid
_BouyomiChanExecute_("T",string(Ask),sPrm); ←Ask読み上げる
}else{
_BouyomiChanExecute_("T",string(Bid),sPrm); ← Bid読み上げ
}
-------------------------------------------------------------
をいじれば、他にもボリュームや移動平均値等の数値も読み上げさせることが可能です。
そのあたりは多少MQL4の知識が必要になります。
早速のお返事&対応ありがとうございます。
まさに、この機能が欲しかったのです。
本当にありがとうございます!
lazhwardさんの、
ますますのご活躍をお祈りいたしております。
01-PriceTalk_v110.mq4 の34行目に棒読みちゃんの RemoteTalk.exe のパスが書かれているので適宜変更してください。
がどうしてもわからないです。コンピューター音痴で恐縮ですが詳しく教えてください
りんごさん、こんにちは。
棒読みちゃんはインストール済みでしょうか。棒読みちゃんと呼ばれるソフトウエアがレートを読み上げます。なので、棒読みちゃんがインストールされている必要があります。インストール済みであることを前提として以下に書いていきます。
1,例えば、インストールされている棒読みちゃん本体の BouyomiChan.exe が存在する場所が下記の場合とします。
(インストール先は、おのおの違うため、一例です)
C:\tools\BouyomiChan\BouyomiChan.exe
2,MT4 の MetaEditor で 01-PriceTalker_v110.mq4 の34行目を上記の「1,」に記載したパスに変更します。
変更前)string sRemoteTalk = "C:\\BouyomiChan\\RemoteTalk\\RemoteTalk.exe";
変更後)string sRemoteTalk = "C:\\tools\\BouyomiChan\\RemoteTalk\\RemoteTalk.exe";
MetaEditor では\(円記号)がスラッシュ記号として見えたとしても、あくまで\(円記号)です。
\(円記号)は2個連続です。ご注意ください。
3,34行目を変更したら、MetaEditor の「コンパイル」ボタンを押します。
4,01-PriceTalker_v110 を MT4 のチャート画面に適用して完了となります。
返信ありがとうございます。
2時間試みたのですがどうしてもうまくいかないです、、、、、
C:\Users\xxxxx\Downloads\BouyomiChan_0_1_11_0_Beta20
が保存先なのですが
string sRemoteTalk = " ";
の空欄には何を入れればいいのでしょうか?
また他に考えられる問題点などありますでしょうか?
空欄の中身は以下になります。
string sRemoteTalk = "C:\\Users\\xxxxx\\Downloads\\BouyomiChan_0_1_11_0_Beta20\\RemoteTalk\\RemoteTalk.exe";
空欄を埋めてコンパイルしたら、MetaEditor のターミナル画面にエラーが表示されていないことを確認します。
エラーが無いことを確認したら、このインジケーターをチャート画面にドロップしますが「DLLの使用を許可する」にチェックしてくださいね。
問題がなければ、ドロップした瞬間に、「こんにちは」と喋ります。
ちなみに、チャート画面にドロップする前に、棒読みちゃんは手動で起動させておいてください。
起動させておかないと喋り出しません。
上記を箇条書きで要約すると
①MetaEditor で 01-PriceTalker_v110.mq4 を開き、空欄を上のように埋める
②MetaEditor でコンパイルする
③MetaEditor のターミナル画面にエラーが表示されていないことを確認する(重要)
④棒読みちゃん本体を手動で起動する(重要)
(棒読みちゃんフォルダ内の BouyomiChan.exe をダブルクリックして実行させてあげてください)
⑤MT4 の ナビゲーター画面内の 01-PriceTalk_v110 をチャート画面にドロップする
⑥ドロップするタイミングで、ポップアップ画面が表示されるので、「DLLの使用を許可する」にチェックして
「OK」ボタン押し下げる(重要)
⑦第一声に「こんにちは」と喋る
それでも喋らない場合、考えられる原因。
①MT4 に何度もドロップしてチャート画面内に 01-PriceTalk_v110 が複数あるかもしれません。
表示中のチャート画面をマウス右クリックして「表示中のインジケーター」から 01-PriceTalk_v110 を全部消してみてください。
②棒読みちゃん単体で適当な文字で構わないので喋ることをまず確認してみてください。
喋れば棒読みちゃん側に問題はないと思います。
③棒読みちゃんが単体で喋ることを確認したのに、MT4側で喋らない場合は、MT4のターミナル画面に01-PriceTalk_v110に関わる
エラーが表示されているかもしれません。確認してみてください。そのエラー内容で対策を練ることになります。
ご丁寧に且つ詳しくほんとにありがとうございました!!できる様になりました!
もしお時間があるのでしたら
108.123の12ないしは8.12だけ読む設定などありますか?何度もすみません
レートを読み上げできるようになって安堵です。
別件についてですが残念ながら、そのままのレートを読み上げることしかできない仕様になっています。
該当する箇所について説明しておきます。お時間あるときに、よかったら改造をこころみてください。
90行目 _BouyomiChanExecute_("T",string(Ask),sPrm);
92行目 _BouyomiChanExecute_("T",string(Bid),sPrm);
は、Ask や Bid の出力値を、無加工でそのまま棒読みちゃんに引き渡しています。
(インジケーターのオプションで「Askのレートを読み上げ」がfalseなら、Bidレートを棒読みちゃんに引き渡しています)
なので、90行目および92行目を弄れば、りんごさん希望のレートを読み上げることができます。
◆変更例◆
92行目 _BouyomiChanExecute_("T",string("シャミ子?今日のご飯何?"),sPrm);
に置き換えると、Bidレートではなく「シャミ子?今日のご飯何?」と永遠にしゃべり続けます。
MQL4の文字列操作関数は、それほど難しいものではないので、がんばってみてください。
ほんとに便利で助かっております。
頑張って改造してみます!