6
5

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

これからrakuten_rss(Python用の楽天RSSを使うためのモジュール)を使おうとしている人へ。

Posted at

#楽天RSSとは?

RSS(RealTime Spread Sheet)とは、投資情報を、特殊な関数(RSS関数)を使ってExcelから利用できる機能です。取得した情報はExcel上で自由に編集することが可能なため、お客様が見たい情報だけにフォーカスしたモニターツールが作成できます。またヒストリカル情報やテクニカル指標などを使ってオリジナル指標を作成したり、リアルタイム情報を使った発注もできるようになります。

要は株価ファイナンスのデータサイエンス用に使うネットワークツールです。

まず必要なもの

チャートや板を見るためには、Market SpeedⅡにログインする必要がある。

Market SpeedⅡにログインするには、楽天証券の口座を開設する必要がある。

楽天証券の口座を開設するにはマイナンバー情報さえあれば無料で開設できる。

プログラミング言語

エクセルデータを扱うのはVBA、といったところでしょうが、私は良く知らない。ちょっととっつきにくくない?という印象。

そこで別言語を検討。一番メジャーでjupyter notebook上で実行しやすく、予約語が英語や数学に近いpythonを使用する。

最近は凄く使われているので、それだけQiitaのようなサイトやQ&A
サイトでの登場頻度も高く、非常に展開がしやすい、というメリットがある。
!pip install rakuten_rss(jupyter notebook上で実行するときは先頭に!が要る。)
で上手くいかないときは

pip install https://github.com/zaq9/rakuten_rss

ダウンロードしたものをフォルダに直接入れる

ディレクトリ構造を以下の様にする
lib---ddeclient.py
|
rakuten_rss.py
|
実行したいpythonファイル

#サンプル

from rakuten_rss import rss,rss_dict,fetch_open

rss('9501.T' , '始値')
#output'668.00'

rss('9501.T' , '現在値')
#output:'669.00'

rss('9501.T' , '銘柄名称')
#output:'東京電力HD'

Market SpeedとReal Spread Sheet起動

楽天証券口座を開設したらマイページにログインして、RSSとマーケットスピードをインストールする。

Windowsの下の検索窓からマーケットスピードⅡとRSSを開く。
そしてPythonコードを実行。(必ずMarketSpeedとRSSを起動してから実行する。)

# ・・・上手くいかない

fail: code@ 9984.T

なぜかfail code@~とでて色々と上手くいかない。
pdbなど使って調査するが、DDE通信の同期が失敗する。(DDEのクライアントのトランザクションの返り値が0)

こういうとき

大抵新しいものに手をだしたら泥沼にはまるパターン。

つまりバージョンアップ版のMarket Speed「2」を使ってしまっているのでダメ、ということを知り合いから教えていただきました。

古い方のMarket Speedを利用すると上手くいきました。

参考にしたサイト

6
5
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
6
5

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?