MT5で株価チャートを表示する

Nagisa Unada  
FX専用だったMT4と違ってMT5はFX、株式、仮想通貨など様々なチャートを表示できます。
既に米国や欧州ではMT5が株式投資に利用されていますが、日本ではCFDの取り扱いをしている証券会社はあるようですが、株式の売買ができる所はないようです。
しかし株式の日足データはネットで入手することができますので、手動で入力しチャートを表示してみることにしました。まずは銘柄データの登録です。

銘柄データを登録するには、「表示」→「銘柄」から銘柄パネルを開き「カスタム銘柄を作成する」ボタンをクリックすることでも登録できます。

カスタム銘柄

しかし、これでは手間がかかるのでスクリプトを使って一気に入力することにします。

1. 添付の「Custom Symbol Create v2」を立ち上げてください。

2. 「共有」パネルの「JPX HP」をクリックするとブラウザでJPXのホームページが開きます。

3. 「東証上場銘柄一覧」をダウンロードしてください。

4. これはエクセルファイルですのでCSVファイルに変換してください。エクセルがない場合はグーグル・スプレッドシートが便利です。

5. グーグル・スプレッドシートで変換したファイルはUTF-8で保存されます。

なぜかUTF-8では文字化けしてしまいますので、メモ帳等で文字コードをANSI又はSift-JISに変更して保存し直してください。

6. ファイルをMQL5\Filesに移動してください。

7. 「Custom Symbol Create v2」のインプットパネルでファイル名を確認して「OK」をクリックすれば銘柄登録が実行されます。

8. 完了後、銘柄パネルを開くと下の画像のように銘柄が登録されているはずです。

銘柄パネル

まだ履歴データがないのでチャートを表示することはできません。次回は履歴データのインポートについて書きます。

ファイル:
Nagisa Unada  

■株価時系列データの入手

1. 添付ファイルの「Kabu Converter.exe」を立ち上げてください。これは Visual Basic で作成していますので起動には NET Framework が必要です。

2. 画面下にダウンロード・サイトへのリンクがありますのでこれをクリック。

3. ブラウザで当該サイトが開きますので、銘柄コードを入力してEnterを押すだけです。(DL可能になるまでに少し時間がかかる場合があります)

4. DLしたファイルを解凍してください。(7-Zip等の解凍ツールがあればまとめて解凍できます)

5. テキストファイルが出てきますので、これをMT5で使用可能なCSVファイルに変換します。

6. Kabu Converter の「参照」ボタンをクリックして上記のテキストファイルを選択します。(複数選択が可能です)

7. 「変換」ボタンをクリックすれば変換が完了です。

converter

■株価時系列データのインポート

時系列データは手動でインポートすることも可能です。

import

「表示」→「銘柄」から銘柄パネルを開き、時系列データをインポートする銘柄を選択し「チャートバー」タブを開きます。

「バーをインポートする」ボタンがありますので、これをクリック。

開いたパネルの「選択(B)...」をクリックして上記のCSVファイルを選択すればデータが読み込まれます。

しかしこの方法では時間がかかりますので今回もスクリプトを作成して一気にインポートします。

Nagisa Unada  

■株価時系列データの自動インポート

自動インポートには「Custom History Import」を使います。

インポートする銘柄を指定するには次の2つの方法があります。

1. インプットパネルに直接入力する。

2. コードリスト・ファイルを作成する。


コードリストのファイル名が入力されていれば、それが優先されます。

コードリストのファイル名が空欄ならインプットパネルに入力された銘柄のデータをインポートします。

インプットパネルに入力する場合は最大10銘柄までですが、コードリストを使う場合は制限がありません。

時系列データのCSVファイルとコードリスト(コードリストを使う場合)をMQL5\Filesに移動し、OKボタンをクリックするだけです。

実行中は画面左上に実行状況が表示されます。

完了後「表示」→「銘柄」から銘柄パネルを開き、銘柄を選択後「チャートバー」タブを開き、時間枠を「Daily」にして「情報呼出」ボタンをクリックすればインポートしたデータを確認することができます。

data


次回は日々データの更新について書きます。
ファイル:
Nagisa Unada  

■日々データの更新

日々データは手動でも更新できます。

「表示」→「銘柄」から銘柄パネルを開き、銘柄を選択後「チャートバー」タブを開き、時間枠を「Daily」にして「情報呼出」ボタンをクリック。

時系列データが表示されましたら、その上でマウスを右クリックしてください。ポップアップ・メニューが表示されるはずです。

なぜか韓国語のメニューなのですが、緑が「入力」、赤が「削除」、青が「編集」ですので、この場合は緑をクリック。

空欄が1行現れますので、データを入力し「変更を適用する」ボタンをクリックしてから終了します。順番は自動的に整列されますので気にする必要はありません。

input

■日々データの自動更新

手動で1つ1つ入力していては大変ですので、スクリプトを使って一気に更新しましょう。

使うのは「Custom Daily Update」です。

1. スクリプトを立ち上げ、「共有」パネルを開くと「無尽蔵ホームページ」へのリンクがあるのでそれをクリック。

2. メニューの「当日株価データ」をクリックするとダウンロードページが開きます。

3. ダウンロードしたデータを解凍すると、CSVファイルが現れます。これをMQL5\Filesに移動してください。

4. 「インプット」パネルを開き、「更新ファイルの日付」欄をダブルクリックすると当日の日時が現れます。(時分は無視されます)

5. 日付を確認して「OK」ボタンをクリックすれば更新が開始されます。

6. 更新中は画面左上に進行状況が表示されます。3700銘柄の更新に約20分ほどかかります。

※「無尽蔵」は個人のホームページであり、無償で提供されているものです。常に時間どうり正確なデータが提供される保証はありません。

ファイル:
Nagisa Unada  

■銘柄メンテナンス(1)

上場廃止や合併等による変更は証券会社のHPに告知されます。これは手作業で修正する以外に方法がありません。

haishi

「表示」→「銘柄」から銘柄パネルを開き、該当銘柄をマウスで右クリックしてください。ポップアップメニューが開きます。

チャートを開いている場合は閉じないと削除できません。「銘柄を表示する」に設定している場合は「銘柄を非表示にする」ボタンをクリックしてからでないと削除できません。

delete


■銘柄メンテナンス(2)

株式分割の予定も証券会社のHPで告知されます。

株式分割が実施されるとその時点で株価の連続性がなくなり、チャート分析がやりにくくなりますので修正をする必要があります。

これも手作業で修正をするのは大変ですので、スクリプトを使って一気に更新します。

使うのは「Custom Rates Adjust」です。

1. データの入力はインプットパネルで直接入力する方法と、リストファイルから読み込む方法があります。

2. リストファイル名が入力されている場合は、リストが優先されます。空欄ならインプットパネルに入力されたデータを採用します。

3. リストの作成は画像のようにHPの必要部分のみを選択コピーし、テキストファイルとして保存してください。(Shift-JISで)

kenriochi

4. 更新中は画面左上に進行状況が表示されます。

次回は有望銘柄の選び方の一例を書きます。
ファイル:
Nagisa Unada  

■有望銘柄の選び方一例

その前に日経平均の確認が必要です。

多くの銘柄の株価が上昇すれば日経平均も上昇します。多くの銘柄の株価が下落すれば日経平均も下落します。

逆に言えば、日経平均が上昇している時はどの銘柄を買っても儲かる可能性が高く、下げている時には何を買っても損する可能性が高いわけです。

日経平均の方向性に逆らった取引は危険です。

1. 銘柄の絞り込み

まずは自分の取引方針に従って銘柄の絞り込みをします。これにはWEB上に多数ある株式ランキングサイトが役に立ちます。

私のお勧めは「上場来高値更新銘柄」「年初来高値更新銘柄」「200日線プラス乖離銘柄」などです。

これにより100~200銘柄程度まで絞り込みます。

2. 株価の強さを比較

銘柄ごとにチャートを開いて確認してもそれが有望なのかどうかは分かり難いものです。

しかし多数の銘柄のチャートを同一画面上に表示して比較すると分かりやすくなります。

LineChart

FXインディケーターに「Currency Strength Indicator」というものがありますが、発想はそれと同じものです。

ラインがゼロレベルより上なら上昇トレンドになります。大きく振れているほど株価が強いと判断できます。

青色の帯は+25 ~ -25で、多くはこの範囲に入ります。逆にこの範囲を抜けた銘柄は大化けする可能性が高くなります。

例えば3856は10月6日に+25を抜けています。10月7日の寄り付き1,350円で買ってまだ保有しているとすると、3月5日の終値4,375では224%の利益になります。

3856

一方ほとんどを青色の帯内で推移した3836の同期間の値動きは、10月7日の寄り付き1,100円、3月5日の終値1,398円で27%の利益に留まります。

3836

もちろん+25を抜けたからと言って必ずしも大化けするとは限らないので注意が必要です。


以上で解説は終わりです。

今回使用したインジケーターは公開していません。

1回目で使った「Custom Symbol Create」に日経平均とTOPIXを登録できないバグがありましたので再度アップロードします。

ファイル:
Nagisa Unada  

■株価時系列データダウンロードサイトの不具合

#1に書きました Kabu Converter からリンクしているサイトが現在動作不良となっており、時系列データのダウンロードができません。

画面に注意書きが出ており、サイトの運営者も気づいているようですのでそのうち修正されるかもしれませんが、とりあえずの代替案として次の方法で入手可能です。


1. 「Vector」の「株式・先物」セクションに「WKABU株価データ取得プログラム 1.26」がありますので、これをダウンロードしてください。

2. 解凍すると複数のプログラムが現れますが、時系列データのダウンロードには WKjGet.exe を使います。

3. 時系列データをダウンロードするとCSVファイルが作成されますが、フォーマットが違いますのでこのままでは使えません。

4. Kabu Converter はこのファイルの変換にも対応しています。
Nagisa Unada  

■株価時系列データダウンロードサイトが復旧しました。

しかし、かなり重く1銘柄分のデータをダウンロードするだけでもかなりの時間がかかります。

#6で紹介した「WKABU株価データ取得プログラム」の方が効率がいいかもしれません。


■日経平均は下降トレンド継続中

買いはしばらく見送った方がいいかもしれません。


■新しいインジケーターを作成


 1画面に50銘柄のトレンドを表示するインジケーターを作ってみました。

青▲は強い上昇、赤▼は強い下落、x印は弱いトレンドです。

これを見ながら強いトレンドが現れた銘柄に次々と乗り換えていく作戦です。w

このインジケーターは公開していません。

43783869  
一日中やってましたけど駄目です何かまた違う方法ないですか?
Nagisa Unada  

■上昇トレンド入りか?

日経平均が上昇トレンドに入ったようです。TOPIXは直近高値の 2013.71(3/19)を更新しましたので、悪材料が出ない限りしばらくは上昇傾向が続くのではないかと思います。

TOPIX


■好業績銘柄は何度も買いのチャンスがある

過去数か月から1年くらいの間に動意づいた銘柄のその後を見てみると、何度も上げ下げを繰り返しながら上昇傾向はかなりの期間続いています。

このことから過去に大きく上昇した銘柄を監視していれば再び大儲けのチャンスに恵まれる可能性が高くなります。

PPO


例1 3377 バイク王&カンパニー

2020年10月頃動き始めましたが、本年1-3月と5-6月頃に押し目を形成。その後急上昇をしています。

3377


例2 7254 ユニバンス

2021年2月末頃動き始めましたが、4月から7月中頃まで弱気のトレンドが続いていました。しかし7月末頃から急上昇しています。

7254


例3 6335 東京機械製作所

本年3月中頃動き始めましたが、7月下旬に急上昇した後1ヶ月ほど下降トレンドが続いていました。しかし8月末に再度急上昇しています。

6335

hupadhya  

Hello Naguisa I have created more than 500 custom symbols from your code as MT5 doesnot have symbols for NSE stock Exchange of India.Thank You very much for your code.

I modified your mql code to suit my requirement (I only know some python programming).

My symbols are in alphabets and alphanumeric like ISUZU, NIPPONPAINTS, SUZUKI, YUKEN, 250HONDA.


But I am not able to upload historical data from your Custom history import code. My historical data is of daily and not intraday or minutes.

Used the CodeList file to update history. Custom history code could not create any of these new custom symbols (ISUZU, NIPPONPAINTS , SUZUKI, YUKEN, 250HONDA) and update history which is in .csv format .

I got error "ignored due to anomaly".

However symbol "1400" got added to custom symbol but did not import history data.

I have attached codelist file which has new symbols and csv file which has price data.

Can you please help me how to solve this problem?

Thank you once again for your codes.

ファイル:
CodeList.txt  1 kb
ISUZU.csv  16 kb
理由: