SSブログ

データ取得更新マクロ改定(Ver5.05⇒Ver5.06) [システムトレード]

データ取得更新マクロの改定作業が、ようやく完了いたしました。今回の改定では、大幅な機能向上を図っています。
研究所サイトのコラム・解説ページに記載した内容を以下に転載し、今日のコラムといたします。


データ取得更新マクロを改定いたしました。同マクロをご利用中の方は、ダウンロードページよりダウンロードを行ってください。
なお、今日の昼頃公開したマクロに一部不具合がありました。本日16時20分以前にダウンロードをされた方は、お手数ですが再度ダウンロードをお願いいたします。

今回の改定では、KFSC形式で作成した出来高の少ない銘柄のデータファイルを更新すると、正常に更新できない場合がある、という不具合を修正すると共に、いくつかの新たな機能を取り入れました。
それらの概要を以下にご説明いたします。


1.銘柄名自動取得・設定

Yahoo!ファイナンスサイト上で表示される銘柄名を取得し、当マクロおよびデータファイルに設定することが可能です。もちろん、任意の銘柄名を設定することもできます。
これらの設定は、現在値欄への値の設定で自動的に処理することができます。

なお、設定される銘柄名は、"証券コード&銘柄名"となります。ただし、銘柄名内の"(株)"の表記は除外されます。
また、データ取得時以降に銘柄名が変更になったなどの理由で、後日銘柄名を変更する必要が生じた場合は、データ更新時に自動的に処理することも可能です。

2.単元株数自動取得・設定

単元株数を自動的に取得し設定します。なお、株価指数や上場投信などのように、単元株数の記載がサイト上に存在しない場合は、単元株数欄に設定された値を用います。
データ取得時以降に単元株数が変更になった場合は、データ更新時に自動的に修正されます。

その際、単元株数の変更によってデータファイルの出来高表示に変更が生じる場合は、自動的に修正処理を行います。

3.ファイル名自動設定

ファイル名を"fn*.xls"(エクセル2007の場合は"fn*.xlsb")[*は任意の文字列]と設定すれば、"銘柄名*.xls"という名前でデータファイルを作成し、ファイル名欄に再設定します。
この機能と銘柄名自動取得設定機能とを組み合わせれば、証券コードを設定しておくだけで、自動的にデータを取得し、修正~更新することが可能です。

また、後で述べるエラー時メッセージ表示機能を組み合わせれば、任意の証券コード(必ずしも実存する必要はありません)を設定しておくだけで、有効な証券コードの場合のみデータファイルを作成することができます。

4.エラー時メッセージ表示機能

設定した証券コード(銘柄)が存在しないなどの理由でエラーが生じた時、エラー内容をシートに追記して処理を継続することができます。
例えば、適当な証券コードを設定したものの、その銘柄が存在しない場合は、データファイルを作成せずに処理を次のステップに進めます。

データファイルが存在しない状態でデータ修正や更新の処理を行うと、「ファイルが存在しない」というメッセージを残して、次の銘柄に処理が移ります。
すなわち、適当に設定した証券コードに対して、連続してデータ取得・修正・更新処理を行っていけば、存在する銘柄のみデータファイルが作成されることになります。

なお、この設定は自動と手動とを選択することができます。手動設定(エラー時メッセージ表示を行う)にすると、エラーの都度メッセージボックスが表示されて処理が中断します。
内容を確認しながら処理を行う場合は、この設定にすると便利です。

5.インターネット一時ファイルの削除

サイトからデータを取得する前に、インターネット一時ファイルの当該サイト(存在する場合)部分を削除します。
これにより、常に最新のデータを取得することが可能です。

また、パソコン環境によっては、インターネット一時ファイルへの照合負荷が低減することから、データ取得速度が向上する場合があります。

6.株式分割の確認

株式分割が行われた場合、分割が行われた旨をエラーメッセージ欄に表示します。単元株数変更の場合とは異なり、データファイルを自動的に修正することはできませんので、このメッセージが表示されたらデータを再取得・修正する必要があります。


最後に、各セルの設定方法を以下に列記します。なお、これらは当マクロの各見出しにカーソルを合わせれば、コメントとして表示されます。

・フォルダ名:
データファイルを格納するフォルダ名を、フルパスで設定します。
個別に設定したい場合は、C列を再表示してそこに直接フォルダ名を入力してください。

・エラー時メッセージ表示:
"Yes"に設定すると、エラーが生じる度にメッセージボックスを表示して、処理を中断します。
"No"に設定すると、エラーが生じてもメッセージボックスを表示せず、次の処理に進みます。
ただしいずれの場合も、エラーメッセージ欄にエラーの内容を表示します。
なお、回線等に問題があると思われるエラーに関しては、メッセージボックスを表示して処理を中止します。

・Code
Yahooファイナンスサイトにおける証券コードを設定します。
証券コードは、個別銘柄のほかに、指標や為替が設定できます。

・銘柄名
取得する銘柄名を任意に設定します。
ここで設定された銘柄名が、取得データファイルのタイトルになります。
なお、データ取得時には、現在値欄の設定値に応じて、サイト上の銘柄名の先頭に証券コードを付加したファイル名を自動設定することもできます。
なお、サイト上の銘柄名からは"(株)"を取り除いています。

・ファイル名
ファイル名を設定します。
同一ファイル名が存在する場合は、確認を求められますのでご注意ください。
データ取得時に、ファイル名を"fn*.xls"(エクセル2007以降は"fn*.xlsb")[*は任意の文字列]という形式で設定すると、自動的に"銘柄名*.xls"("銘柄名*.xlsb")というファイル名で作成します。

・起点日
取得データの起点日を設定します。起点日のデータが存在しない場合は、それ以降に存在するデータの最初から取得します。
実際の起点日は、データ修正を行うことで自動的に設定されます。

・直近日
取得データの直近日を設定します。直近日のデータが存在しない場合は、それ以前に存在するデータの最後まで取得します。
データ更新の際には、自動的に直近日が設定されます。

・データ取得
データを新規に取得する場合は"1"、取得しない場合は"0"を設定します。

・データ修正
取得したデータをKFシステムクリエイター用に変換する場合は"1"、一般用に変換する場合は"2"、修正を行わない場合は"0"を設定します。
KFシステムクリエイター用では、立会日シートで設定された日付全てに分割調整を行ったデータに修正します。出来高がゼロの日付が存在する場合は、直近終値を設定します。
一般用では、取得したデータに分割調整を行います。出来高がゼロの日付は設定されません。

・データ更新
データを更新する場合は"1"、更新しない場合は"0"を設定します。

・単元株数
取得するデータの単元株数が自動的に設定されます。
単元株数が100株以上の場合は、1000株単位の出来高に小数点以下第1位まで修正されます。
なお、単元株数が変更になった場合は、データ更新時に自動修正されます。

・現在値
新規データ取得時に"-1"を設定しておくと、銘柄名をサイト表示名に自動的に合わせます。
"-2"を設定しておくと、銘柄名をシート設定のままとします。
それ以外の場合は、データ取得完了後、いずれかを選択できます。
また、データ更新時に"-1"を設定しておくと、当マクロとデータファイルの銘柄名を、サイト表示名に変更します。
通常は、データ更新時にデータの現在値を表示します。

・インフォメーション
任意設定情報などを表示します。
情報通りに修正するかどうかは任意です。

・エラーメッセージ
重要なエラーメッセージを表示します。
メッセージが表示されたら、ただちに対処してください。


以上、ご不明な点等ございましたら、お問い合わせページよりお問い合わせください。また、不具合情報やご意見・ご感想等ございましたら、メールにてご連絡もしくはブログへコメントいただけますと幸いです。

なお、現状においてはソースコードを公開しておりますが、今後につきましてはその限りではありません。ダウンロードの状況等によっては、ソースコードを非公開にする可能性もありますので、あらかじめご承知置きください。
ただし、ユーザーの方に対しては、今後もソースコードを公開していくつもりです。


[2月10日追記]

昨日公開したデータ取得更新マクロVer5.06ですが、重大な不具合が発覚しました。修正版(Ver5.07)をアップロードしましたので、大変申し訳ありませんが、Ver5.06以前をご利用中の方は修正版に更新してご利用ください。

不具合内容は、存在しない銘柄のデータを取得しようとすると、データ取得更新マクロそのものがクローズしてしまうというものです。
改定の最後に、銘柄有無の確認位置をデータファイル作成前に移動したのですが、エラー処理の修正を忘れていました。

この不具合により、既存のデータファイルが破壊されるなどということはありませんが、データ取得更新マクロの直近の設定値が破棄される可能性がありました。
もちろん、連続データ取得が続行不可になることが最大の不具合ということになります。

度々の改定で、当マクロをダウンロードしていただいた方々にはお手数をお掛けし、大変申し訳ありませんでした。

nice!(0)  コメント(0)  トラックバック(0) 
共通テーマ:

nice! 0

コメント 0

コメントを書く

お名前:
URL:
コメント:
画像認証:
下の画像に表示されている文字を入力してください。

Facebook コメント

トラックバック 0

この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。